├── .gitignore ├── .metadata ├── LICENSE.txt ├── README.md ├── android ├── app │ ├── build.gradle │ └── src │ │ ├── debug │ │ └── AndroidManifest.xml │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── com │ │ │ │ └── brianrobles204 │ │ │ │ └── elements_app │ │ │ │ └── MainActivity.java │ │ └── res │ │ │ ├── drawable-hdpi │ │ │ ├── ic_launcher_background.png │ │ │ └── ic_launcher_foreground.png │ │ │ ├── drawable-mdpi │ │ │ ├── ic_launcher_background.png │ │ │ └── ic_launcher_foreground.png │ │ │ ├── drawable-xhdpi │ │ │ ├── ic_launcher_background.png │ │ │ └── ic_launcher_foreground.png │ │ │ ├── drawable-xxhdpi │ │ │ ├── ic_launcher_background.png │ │ │ └── ic_launcher_foreground.png │ │ │ ├── drawable-xxxhdpi │ │ │ ├── ic_launcher_background.png │ │ │ └── ic_launcher_foreground.png │ │ │ ├── drawable │ │ │ └── launch_background.xml │ │ │ ├── mipmap-anydpi-v26 │ │ │ └── ic_launcher.xml │ │ │ ├── mipmap-hdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-mdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xhdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxhdpi │ │ │ └── ic_launcher.png │ │ │ ├── mipmap-xxxhdpi │ │ │ └── ic_launcher.png │ │ │ └── values │ │ │ └── styles.xml │ │ └── profile │ │ └── AndroidManifest.xml ├── build.gradle ├── gradle.properties ├── gradle │ └── wrapper │ │ └── gradle-wrapper.properties └── settings.gradle ├── assets ├── elementsGrid.json ├── fonts │ ├── RobotoCondensed-Light.ttf │ ├── RobotoCondensed-Regular.ttf │ └── ShareTechMono-Regular.ttf ├── launcher_icons │ ├── app_icon.png │ ├── launcher_adaptive_background.png │ ├── launcher_adaptive_foreground.png │ ├── launcher_android.png │ └── launcher_ios.png └── screenshots │ ├── screencast.gif │ ├── screenshot_1.png │ ├── screenshot_2.png │ ├── screenshot_3.png │ └── screenshot_4.png ├── buildJson.dart ├── ios ├── Flutter │ ├── AppFrameworkInfo.plist │ ├── Debug.xcconfig │ └── Release.xcconfig ├── Runner.xcodeproj │ ├── project.pbxproj │ ├── project.xcworkspace │ │ └── contents.xcworkspacedata │ └── xcshareddata │ │ └── xcschemes │ │ └── Runner.xcscheme ├── Runner.xcworkspace │ └── contents.xcworkspacedata └── Runner │ ├── AppDelegate.h │ ├── AppDelegate.m │ ├── Assets.xcassets │ ├── AppIcon.appiconset │ │ ├── Contents.json │ │ ├── Icon-App-1024x1024@1x.png │ │ ├── Icon-App-20x20@1x.png │ │ ├── Icon-App-20x20@2x.png │ │ ├── Icon-App-20x20@3x.png │ │ ├── Icon-App-29x29@1x.png │ │ ├── Icon-App-29x29@2x.png │ │ ├── Icon-App-29x29@3x.png │ │ ├── Icon-App-40x40@1x.png │ │ ├── Icon-App-40x40@2x.png │ │ ├── Icon-App-40x40@3x.png │ │ ├── Icon-App-60x60@2x.png │ │ ├── Icon-App-60x60@3x.png │ │ ├── Icon-App-76x76@1x.png │ │ ├── Icon-App-76x76@2x.png │ │ └── Icon-App-83.5x83.5@2x.png │ └── LaunchImage.imageset │ │ ├── Contents.json │ │ ├── LaunchImage.png │ │ ├── LaunchImage@2x.png │ │ ├── LaunchImage@3x.png │ │ └── README.md │ ├── Base.lproj │ ├── LaunchScreen.storyboard │ └── Main.storyboard │ ├── Info.plist │ └── main.m ├── lib └── main.dart ├── pubspec.lock └── pubspec.yaml /.gitignore: -------------------------------------------------------------------------------- 1 | # Miscellaneous 2 | *.class 3 | *.log 4 | *.pyc 5 | *.swp 6 | .DS_Store 7 | .atom/ 8 | .buildlog/ 9 | .history 10 | .svn/ 11 | 12 | # IntelliJ related 13 | *.iml 14 | *.ipr 15 | *.iws 16 | .idea/ 17 | 18 | # Visual Studio Code related 19 | .vscode/ 20 | 21 | # Flutter/Dart/Pub related 22 | **/doc/api/ 23 | .dart_tool/ 24 | .flutter-plugins 25 | .packages 26 | .pub-cache/ 27 | .pub/ 28 | /build/ 29 | 30 | # Android related 31 | **/android/**/gradle-wrapper.jar 32 | **/android/.gradle 33 | **/android/captures/ 34 | **/android/gradlew 35 | **/android/gradlew.bat 36 | **/android/local.properties 37 | **/android/**/GeneratedPluginRegistrant.java 38 | 39 | # iOS/XCode related 40 | **/ios/**/*.mode1v3 41 | **/ios/**/*.mode2v3 42 | **/ios/**/*.moved-aside 43 | **/ios/**/*.pbxuser 44 | **/ios/**/*.perspectivev3 45 | **/ios/**/*sync/ 46 | **/ios/**/.sconsign.dblite 47 | **/ios/**/.tags* 48 | **/ios/**/.vagrant/ 49 | **/ios/**/DerivedData/ 50 | **/ios/**/Icon? 51 | **/ios/**/Pods/ 52 | **/ios/**/.symlinks/ 53 | **/ios/**/profile 54 | **/ios/**/xcuserdata 55 | **/ios/.generated/ 56 | **/ios/Flutter/App.framework 57 | **/ios/Flutter/Flutter.framework 58 | **/ios/Flutter/Generated.xcconfig 59 | **/ios/Flutter/app.flx 60 | **/ios/Flutter/app.zip 61 | **/ios/Flutter/flutter_assets/ 62 | **/ios/ServiceDefinitions.json 63 | **/ios/Runner/GeneratedPluginRegistrant.* 64 | 65 | # Exceptions to above rules. 66 | !**/ios/**/default.mode1v3 67 | !**/ios/**/default.mode2v3 68 | !**/ios/**/default.pbxuser 69 | !**/ios/**/default.perspectivev3 70 | !/packages/flutter_tools/test/data/dart_dependencies_test/**/.packages 71 | -------------------------------------------------------------------------------- /.metadata: -------------------------------------------------------------------------------- 1 | # This file tracks properties of this Flutter project. 2 | # Used by Flutter tool to assess capabilities and perform upgrades etc. 3 | # 4 | # This file should be version controlled and should not be manually edited. 5 | 6 | version: 7 | revision: 8661d8aecd626f7f57ccbcb735553edc05a2e713 8 | channel: stable 9 | 10 | project_type: app 11 | -------------------------------------------------------------------------------- /LICENSE.txt: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2019 Brian Robles 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # ![Elements Logo](assets/launcher_icons/app_icon.png) Elements 2 | 3 | Browse the elements of the periodic table! 4 | 5 | Elements is a Flutter app developed for the Flutter Create 2019 contest. The app lets you browse the chemical elements of the Periodic Table. It also includes helpful snippets of information about each element. 6 | 7 | This is a cross-platform app that runs on both Android and iOS. 8 | 9 | 10 | ## Getting Started 11 | 12 | This application can be run as is via 13 | 14 | ``` 15 | flutter run --release 16 | ``` 17 | 18 | The included dart script, `buildJson.dart`, can be run to generate a new `elementsGrid.json` file in the assets folder, to be used directly by the application. The script will automatically download a short Wikipedia extract and merge it with IUPAC-provided chemical element information and app-specific color values. 19 | 20 | 21 | ## Screenshots 22 | ![Screencast](assets/screenshots/screencast.gif) 23 | 24 | ![Screenshot 1](assets/screenshots/screenshot_1.png) 25 | ![Screenshot 2](assets/screenshots/screenshot_2.png) 26 | ![Screenshot 3](assets/screenshots/screenshot_3.png) 27 | ![Screenshot 4](assets/screenshots/screenshot_4.png) 28 | 29 | 30 | ## Code 31 | 32 | ``` dart 33 | import 'dart:convert'; 34 | 35 | import 'package:flutter/material.dart'; 36 | import 'package:flutter/services.dart'; 37 | 38 | 39 | const kRowCount = 10; 40 | 41 | const kContentSize = 64.0; 42 | const kGutterWidth = 2.0; 43 | 44 | const kGutterInset = EdgeInsets.all(kGutterWidth); 45 | 46 | 47 | void main() { 48 | final gridList = rootBundle.loadString('assets/elementsGrid.json') 49 | .then((source) => jsonDecode(source)['elements'] as List) 50 | .then((list) => list.map((json) => json != null ? ElementData.fromJson(json) : null).toList()); 51 | 52 | runApp(ElementsApp(gridList)); 53 | } 54 | 55 | 56 | class ElementData { 57 | 58 | final String name, category, symbol, extract, source, atomicWeight; 59 | final int number; 60 | final List colors; 61 | 62 | ElementData.fromJson(Map json) 63 | : name = json['name'], category = json['category'], symbol = json['symbol'], 64 | extract = json['extract'], source = json['source'], 65 | atomicWeight = json['atomic_weight'], number = json['number'], 66 | colors = (json['colors'] as List).map((value) => Color(value)).toList(); 67 | } 68 | 69 | 70 | class ElementsApp extends StatelessWidget { 71 | ElementsApp(this.gridList); 72 | 73 | final Future> gridList; 74 | 75 | @override 76 | Widget build(BuildContext context) { 77 | final theme = ThemeData( 78 | brightness: Brightness.dark, 79 | accentColor: Colors.grey, 80 | 81 | textTheme: Typography.whiteMountainView.apply(fontFamily: 'Roboto Condensed'), 82 | primaryTextTheme: Typography.whiteMountainView.apply(fontFamily: 'Share Tech Mono'), 83 | ); 84 | 85 | return MaterialApp(title: 'Elements', theme: theme, home: TablePage(gridList)); 86 | } 87 | } 88 | 89 | class TablePage extends StatelessWidget { 90 | TablePage(this.gridList); 91 | 92 | final Future> gridList; 93 | 94 | @override 95 | Widget build(BuildContext context) { 96 | return Scaffold( 97 | backgroundColor: Colors.blueGrey[900], 98 | appBar: AppBar(title: Text('Elements'), centerTitle: true, backgroundColor: Colors.blueGrey[800]), 99 | body: FutureBuilder( 100 | future: gridList, 101 | builder: (_, snapshot) => snapshot.hasData ? _buildTable(snapshot.data) 102 | : Center(child: CircularProgressIndicator()), 103 | ), 104 | ); 105 | } 106 | 107 | Widget _buildTable(List elements) { 108 | final tiles = elements.map((element) => element != null ? ElementTile(element) 109 | : Container(color: Colors.black38, margin: kGutterInset)).toList(); 110 | 111 | return SingleChildScrollView( 112 | child: SizedBox(height: kRowCount * (kContentSize + (kGutterWidth * 2)), 113 | child: GridView.count(crossAxisCount: kRowCount, children: tiles, 114 | scrollDirection: Axis.horizontal,),),); 115 | } 116 | } 117 | 118 | class DetailPage extends StatelessWidget { 119 | DetailPage(this.element); 120 | 121 | final ElementData element; 122 | 123 | @override 124 | Widget build(BuildContext context) { 125 | final listItems = [ 126 | ListTile(leading: Icon(Icons.category), title : Text(element.category.toUpperCase())), 127 | ListTile(leading: Icon(Icons.info), title : Text(element.extract), 128 | subtitle: Text(element.source),), 129 | ListTile(leading: Icon(Icons.fiber_smart_record), title: Text(element.atomicWeight), 130 | subtitle: Text('Atomic Weight'),), 131 | ].expand((widget) => [widget, Divider()]).toList(); 132 | 133 | return Scaffold( 134 | backgroundColor: Color.lerp(Colors.grey[850], element.colors[0], 0.07), 135 | 136 | appBar: AppBar( 137 | backgroundColor: Color.lerp(Colors.grey[850], element.colors[1], 0.2), 138 | bottom: ElementTile(element, isLarge: true),), 139 | 140 | body: ListView(padding: EdgeInsets.only(top: 24.0), children: listItems), 141 | ); 142 | } 143 | } 144 | 145 | 146 | class ElementTile extends StatelessWidget implements PreferredSizeWidget { 147 | const ElementTile(this.element, { this.isLarge = false }); 148 | 149 | final ElementData element; 150 | final bool isLarge; 151 | 152 | Size get preferredSize => Size.fromHeight(kContentSize * 1.5); 153 | 154 | @override 155 | Widget build(BuildContext context) { 156 | final tileText = [ 157 | Align(alignment: AlignmentDirectional.centerStart, 158 | child: Text('${element.number}', style: TextStyle(fontSize: 10.0)),), 159 | Text(element.symbol, style: Theme.of(context).primaryTextTheme.headline), 160 | Text(element.name, maxLines: 1, overflow: TextOverflow.ellipsis, 161 | textScaleFactor: isLarge ? 0.65 : 1,), 162 | ]; 163 | 164 | final tile = Container( 165 | margin: kGutterInset, 166 | width: kContentSize, 167 | height: kContentSize, 168 | foregroundDecoration: BoxDecoration( 169 | gradient: LinearGradient(colors: element.colors), 170 | backgroundBlendMode: BlendMode.multiply,), 171 | child: RawMaterialButton( 172 | onPressed: !isLarge ? () => Navigator.push(context, 173 | MaterialPageRoute(builder: (_) => DetailPage(element))) : null, 174 | fillColor: Colors.grey[800], 175 | disabledElevation: 10.0, 176 | padding: kGutterInset * 2.0, 177 | child: Column(mainAxisAlignment: MainAxisAlignment.spaceBetween, children: tileText), 178 | ), 179 | ); 180 | 181 | return Hero( 182 | tag: 'hero-${element.symbol}', 183 | flightShuttleBuilder: (_, anim, __, ___, ____) => 184 | ScaleTransition(scale: anim.drive(Tween(begin: 1, end: 1.75)), child: tile), 185 | child: Transform.scale(scale: isLarge ? 1.75 : 1, child: tile), 186 | ); 187 | } 188 | } 189 | ``` 190 | 191 | ###### Total Dart Code Size: 5102 bytes 192 | 193 | 194 | ### Thanks to 195 | - **Google Flutter Team** 196 | - **Wikimedia Foundation** - Summary extracts from Wikipedia 197 | - **IUPAC** - Chemical element information 198 | - **Cathy** and **Joe** - for letting me use their laptop and wifi, respectively 199 | 200 | 201 | ---- 202 | 203 | *Brian Carlos L. Robles (2019)* -------------------------------------------------------------------------------- /android/app/build.gradle: -------------------------------------------------------------------------------- 1 | def localProperties = new Properties() 2 | def localPropertiesFile = rootProject.file('local.properties') 3 | if (localPropertiesFile.exists()) { 4 | localPropertiesFile.withReader('UTF-8') { reader -> 5 | localProperties.load(reader) 6 | } 7 | } 8 | 9 | def flutterRoot = localProperties.getProperty('flutter.sdk') 10 | if (flutterRoot == null) { 11 | throw new GradleException("Flutter SDK not found. Define location with flutter.sdk in the local.properties file.") 12 | } 13 | 14 | def flutterVersionCode = localProperties.getProperty('flutter.versionCode') 15 | if (flutterVersionCode == null) { 16 | flutterVersionCode = '1' 17 | } 18 | 19 | def flutterVersionName = localProperties.getProperty('flutter.versionName') 20 | if (flutterVersionName == null) { 21 | flutterVersionName = '1.0' 22 | } 23 | 24 | apply plugin: 'com.android.application' 25 | apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" 26 | 27 | android { 28 | compileSdkVersion 28 29 | 30 | lintOptions { 31 | disable 'InvalidPackage' 32 | } 33 | 34 | defaultConfig { 35 | // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). 36 | applicationId "com.brianrobles204.elements_app" 37 | minSdkVersion 16 38 | targetSdkVersion 28 39 | versionCode flutterVersionCode.toInteger() 40 | versionName flutterVersionName 41 | testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" 42 | } 43 | 44 | buildTypes { 45 | release { 46 | // TODO: Add your own signing config for the release build. 47 | // Signing with the debug keys for now, so `flutter run --release` works. 48 | signingConfig signingConfigs.debug 49 | } 50 | } 51 | } 52 | 53 | flutter { 54 | source '../..' 55 | } 56 | 57 | dependencies { 58 | testImplementation 'junit:junit:4.12' 59 | androidTestImplementation 'com.android.support.test:runner:1.0.2' 60 | androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2' 61 | } 62 | -------------------------------------------------------------------------------- /android/app/src/debug/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 3 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /android/app/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 3 | 4 | 9 | 13 | 20 | 24 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | -------------------------------------------------------------------------------- /android/app/src/main/java/com/brianrobles204/elements_app/MainActivity.java: -------------------------------------------------------------------------------- 1 | package com.brianrobles204.elements_app; 2 | 3 | import android.os.Bundle; 4 | import io.flutter.app.FlutterActivity; 5 | import io.flutter.plugins.GeneratedPluginRegistrant; 6 | 7 | public class MainActivity extends FlutterActivity { 8 | @Override 9 | protected void onCreate(Bundle savedInstanceState) { 10 | super.onCreate(savedInstanceState); 11 | GeneratedPluginRegistrant.registerWith(this); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /android/app/src/main/res/drawable-hdpi/ic_launcher_background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brianrobles204/Elements-App/1624dee83066463d58251aa43f8afbbfa158cefe/android/app/src/main/res/drawable-hdpi/ic_launcher_background.png -------------------------------------------------------------------------------- /android/app/src/main/res/drawable-hdpi/ic_launcher_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brianrobles204/Elements-App/1624dee83066463d58251aa43f8afbbfa158cefe/android/app/src/main/res/drawable-hdpi/ic_launcher_foreground.png -------------------------------------------------------------------------------- /android/app/src/main/res/drawable-mdpi/ic_launcher_background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brianrobles204/Elements-App/1624dee83066463d58251aa43f8afbbfa158cefe/android/app/src/main/res/drawable-mdpi/ic_launcher_background.png -------------------------------------------------------------------------------- /android/app/src/main/res/drawable-mdpi/ic_launcher_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brianrobles204/Elements-App/1624dee83066463d58251aa43f8afbbfa158cefe/android/app/src/main/res/drawable-mdpi/ic_launcher_foreground.png -------------------------------------------------------------------------------- /android/app/src/main/res/drawable-xhdpi/ic_launcher_background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brianrobles204/Elements-App/1624dee83066463d58251aa43f8afbbfa158cefe/android/app/src/main/res/drawable-xhdpi/ic_launcher_background.png -------------------------------------------------------------------------------- /android/app/src/main/res/drawable-xhdpi/ic_launcher_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brianrobles204/Elements-App/1624dee83066463d58251aa43f8afbbfa158cefe/android/app/src/main/res/drawable-xhdpi/ic_launcher_foreground.png -------------------------------------------------------------------------------- /android/app/src/main/res/drawable-xxhdpi/ic_launcher_background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brianrobles204/Elements-App/1624dee83066463d58251aa43f8afbbfa158cefe/android/app/src/main/res/drawable-xxhdpi/ic_launcher_background.png -------------------------------------------------------------------------------- /android/app/src/main/res/drawable-xxhdpi/ic_launcher_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brianrobles204/Elements-App/1624dee83066463d58251aa43f8afbbfa158cefe/android/app/src/main/res/drawable-xxhdpi/ic_launcher_foreground.png -------------------------------------------------------------------------------- /android/app/src/main/res/drawable-xxxhdpi/ic_launcher_background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brianrobles204/Elements-App/1624dee83066463d58251aa43f8afbbfa158cefe/android/app/src/main/res/drawable-xxxhdpi/ic_launcher_background.png -------------------------------------------------------------------------------- /android/app/src/main/res/drawable-xxxhdpi/ic_launcher_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brianrobles204/Elements-App/1624dee83066463d58251aa43f8afbbfa158cefe/android/app/src/main/res/drawable-xxxhdpi/ic_launcher_foreground.png -------------------------------------------------------------------------------- /android/app/src/main/res/drawable/launch_background.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 12 | 13 | -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brianrobles204/Elements-App/1624dee83066463d58251aa43f8afbbfa158cefe/android/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brianrobles204/Elements-App/1624dee83066463d58251aa43f8afbbfa158cefe/android/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brianrobles204/Elements-App/1624dee83066463d58251aa43f8afbbfa158cefe/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brianrobles204/Elements-App/1624dee83066463d58251aa43f8afbbfa158cefe/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brianrobles204/Elements-App/1624dee83066463d58251aa43f8afbbfa158cefe/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /android/app/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 8 | 9 | -------------------------------------------------------------------------------- /android/app/src/profile/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 3 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /android/build.gradle: -------------------------------------------------------------------------------- 1 | buildscript { 2 | repositories { 3 | google() 4 | jcenter() 5 | } 6 | 7 | dependencies { 8 | classpath 'com.android.tools.build:gradle:3.2.1' 9 | } 10 | } 11 | 12 | allprojects { 13 | repositories { 14 | google() 15 | jcenter() 16 | } 17 | } 18 | 19 | rootProject.buildDir = '../build' 20 | subprojects { 21 | project.buildDir = "${rootProject.buildDir}/${project.name}" 22 | } 23 | subprojects { 24 | project.evaluationDependsOn(':app') 25 | } 26 | 27 | task clean(type: Delete) { 28 | delete rootProject.buildDir 29 | } 30 | -------------------------------------------------------------------------------- /android/gradle.properties: -------------------------------------------------------------------------------- 1 | org.gradle.jvmargs=-Xmx1536M 2 | -------------------------------------------------------------------------------- /android/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | #Fri Jun 23 08:50:38 CEST 2017 2 | distributionBase=GRADLE_USER_HOME 3 | distributionPath=wrapper/dists 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | distributionUrl=https\://services.gradle.org/distributions/gradle-4.10.2-all.zip 7 | -------------------------------------------------------------------------------- /android/settings.gradle: -------------------------------------------------------------------------------- 1 | include ':app' 2 | 3 | def flutterProjectRoot = rootProject.projectDir.parentFile.toPath() 4 | 5 | def plugins = new Properties() 6 | def pluginsFile = new File(flutterProjectRoot.toFile(), '.flutter-plugins') 7 | if (pluginsFile.exists()) { 8 | pluginsFile.withReader('UTF-8') { reader -> plugins.load(reader) } 9 | } 10 | 11 | plugins.each { name, path -> 12 | def pluginDirectory = flutterProjectRoot.resolve(path).resolve('android').toFile() 13 | include ":$name" 14 | project(":$name").projectDir = pluginDirectory 15 | } 16 | -------------------------------------------------------------------------------- /assets/elementsGrid.json: -------------------------------------------------------------------------------- 1 | { 2 | "elements": [ 3 | { 4 | "number": 1, 5 | "name": "Hydrogen", 6 | "symbol": "H", 7 | "extract": "Hydrogen is a chemical element with symbol H and atomic number 1. With a standard atomic weight of 1.008, hydrogen is the lightest element in the periodic table. Its monatomic form (H) is the most abundant chemical substance in the Universe, constituting roughly 75% of all baryonic mass. Non-remnant stars are mainly composed of hydrogen in the plasma state. The most common isotope of hydrogen, termed protium (name rarely used, symbol 1H), has one proton and no neutrons.", 8 | "source": "https://en.wikipedia.org/wiki/Hydrogen", 9 | "category": "Reactive Nonmetal", 10 | "atomic_weight": "1.008 u(±)", 11 | "colors": [ 12 | 4283657726, 13 | 4287535603 14 | ] 15 | }, 16 | { 17 | "number": 3, 18 | "name": "Lithium", 19 | "symbol": "Li", 20 | "extract": "Lithium (from Greek: λίθος, translit. lithos, lit. 'stone') is a chemical element with symbol Li and atomic number 3. It is a soft, silvery-white alkali metal. Under standard conditions, it is the lightest metal and the lightest solid element.", 21 | "source": "https://en.wikipedia.org/wiki/Lithium", 22 | "category": "Alkali Metal", 23 | "atomic_weight": "6.94 u(±)", 24 | "colors": [ 25 | 4292030255, 26 | 4294932393 27 | ] 28 | }, 29 | { 30 | "number": 11, 31 | "name": "Sodium", 32 | "symbol": "Na", 33 | "extract": "Sodium is a chemical element with symbol Na (from Latin natrium) and atomic number 11. It is a soft, silvery-white, highly reactive metal. Sodium is an alkali metal, being in group 1 of the periodic table, because it has a single electron in its outer shell, which it readily donates, creating a positively charged ion—the Na+ cation. Its only stable isotope is 23Na. The free metal does not occur in nature, and must be prepared from compounds.", 34 | "source": "https://en.wikipedia.org/wiki/Sodium", 35 | "category": "Alkali Metal", 36 | "atomic_weight": "22.98976928(2) u(±)", 37 | "colors": [ 38 | 4292030255, 39 | 4294932393 40 | ] 41 | }, 42 | { 43 | "number": 19, 44 | "name": "Potassium", 45 | "symbol": "K", 46 | "extract": "Potassium is a chemical element with symbol K (from Neo-Latin kalium) and atomic number 19. It was first isolated from potash, the ashes of plants, from which its name derives. In the periodic table, potassium is one of the alkali metals. All of the alkali metals have a single valence electron in the outer electron shell, which is easily removed to create an ion with a positive charge – a cation, which combines with anions to form salts. Potassium in nature occurs only in ionic salts.", 47 | "source": "https://en.wikipedia.org/wiki/Potassium", 48 | "category": "Alkali Metal", 49 | "atomic_weight": "39.0983(1) u(±)", 50 | "colors": [ 51 | 4292030255, 52 | 4294932393 53 | ] 54 | }, 55 | { 56 | "number": 37, 57 | "name": "Rubidium", 58 | "symbol": "Rb", 59 | "extract": "Rubidium is a chemical element with symbol Rb and atomic number 37. Rubidium is a soft, silvery-white metallic element of the alkali metal group, with a standard atomic weight of 85.4678. Elemental rubidium is highly reactive, with properties similar to those of other alkali metals, including rapid oxidation in air. On Earth, natural rubidium comprises two isotopes: 72% is the stable isotope, 85Rb; 28% is the slightly radioactive 87Rb, with a half-life of 49 billion years—more than three times longer than the estimated age of the universe.\nGerman chemists Robert Bunsen and Gustav Kirchhoff discovered rubidium in 1861 by the newly developed technique, flame spectroscopy.", 60 | "source": "https://en.wikipedia.org/wiki/Rubidium", 61 | "category": "Alkali Metal", 62 | "atomic_weight": "85.4678(3) u(±)", 63 | "colors": [ 64 | 4292030255, 65 | 4294932393 66 | ] 67 | }, 68 | { 69 | "number": 55, 70 | "name": "Caesium", 71 | "symbol": "Cs", 72 | "extract": "Caesium (IUPAC spelling) or cesium (American spelling) is a chemical element with symbol Cs and atomic number 55. It is a soft, silvery-golden alkali metal with a melting point of 28.5 °C (83.3 °F), which makes it one of only five elemental metals that are liquid at or near room temperature. Caesium has physical and chemical properties similar to those of rubidium and potassium. The most reactive of all metals, it is pyrophoric and reacts with water even at −116 °C (−177 °F). It is the least electronegative element, with a value of 0.79 on the Pauling scale.", 73 | "source": "https://en.wikipedia.org/wiki/Caesium", 74 | "category": "Alkali Metal", 75 | "atomic_weight": "132.90545196(6) u(±)", 76 | "colors": [ 77 | 4292030255, 78 | 4294932393 79 | ] 80 | }, 81 | { 82 | "number": 87, 83 | "name": "Francium", 84 | "symbol": "Fr", 85 | "extract": "Francium is a chemical element with symbol Fr and atomic number 87. It used to be known as eka-caesium. It is extremely radioactive; its most stable isotope, francium-223 (originally called actinium K after the natural decay chain it appears in), has a half-life of only 22 minutes. It is the second-most electropositive element, behind only caesium, and is the second rarest naturally occurring element (after astatine). The isotopes of francium decay quickly into astatine, radium, and radon.", 86 | "source": "https://en.wikipedia.org/wiki/Francium", 87 | "category": "Alkali Metal", 88 | "atomic_weight": "[223] (mass number)", 89 | "colors": [ 90 | 4292030255, 91 | 4294932393 92 | ] 93 | }, 94 | null, 95 | null, 96 | null, 97 | null, 98 | { 99 | "number": 4, 100 | "name": "Beryllium", 101 | "symbol": "Be", 102 | "extract": "Beryllium is a chemical element with symbol Be and atomic number 4. It is a relatively rare element in the universe, usually occurring as a product of the spallation of larger atomic nuclei that have collided with cosmic rays. Within the cores of stars beryllium is depleted as it is fused and creates larger elements. It is a divalent element which occurs naturally only in combination with other elements in minerals. Notable gemstones which contain beryllium include beryl (aquamarine, emerald) and chrysoberyl.", 103 | "source": "https://en.wikipedia.org/wiki/Beryllium", 104 | "category": "Alkaline Earth Metal", 105 | "atomic_weight": "9.0121831(5) u(±)", 106 | "colors": [ 107 | 4294208325, 108 | 4293830729 109 | ] 110 | }, 111 | { 112 | "number": 12, 113 | "name": "Magnesium", 114 | "symbol": "Mg", 115 | "extract": "Magnesium is a chemical element with symbol Mg and atomic number 12. It is a shiny gray solid which bears a close physical resemblance to the other five elements in the second column (group 2, or alkaline earth metals) of the periodic table: all group 2 elements have the same electron configuration in the outer electron shell and a similar crystal structure.\nMagnesium is the ninth most abundant element in the universe. It is produced in large, aging stars from the sequential addition of three helium nuclei to a carbon nucleus. When such stars explode as supernovas, much of the magnesium is expelled into the interstellar medium where it may recycle into new star systems.", 116 | "source": "https://en.wikipedia.org/wiki/Magnesium", 117 | "category": "Alkaline Earth Metal", 118 | "atomic_weight": "24.305 u(±)", 119 | "colors": [ 120 | 4294208325, 121 | 4293830729 122 | ] 123 | }, 124 | { 125 | "number": 20, 126 | "name": "Calcium", 127 | "symbol": "Ca", 128 | "extract": "Calcium is a chemical element with symbol Ca and atomic number 20. As an alkaline earth metal, calcium is a reactive metal that forms a dark oxide-nitride layer when exposed to air. Its physical and chemical properties are most similar to its heavier homologues strontium and barium. It is the fifth most abundant element in Earth's crust and the third most abundant metal, after iron and aluminium. The most common calcium compound on Earth is calcium carbonate, found in limestone and the fossilised remnants of early sea life; gypsum, anhydrite, fluorite, and apatite are also sources of calcium.", 129 | "source": "https://en.wikipedia.org/wiki/Calcium", 130 | "category": "Alkaline Earth Metal", 131 | "atomic_weight": "40.078(4) u(±)", 132 | "colors": [ 133 | 4294208325, 134 | 4293830729 135 | ] 136 | }, 137 | { 138 | "number": 38, 139 | "name": "Strontium", 140 | "symbol": "Sr", 141 | "extract": "Strontium is the chemical element with symbol Sr and atomic number 38. An alkaline earth metal, strontium is a soft silver-white yellowish metallic element that is highly chemically reactive. The metal forms a dark oxide layer when it is exposed to air. Strontium has physical and chemical properties similar to those of its two vertical neighbors in the periodic table, calcium and barium. It occurs naturally mainly in the minerals celestine and strontianite, and is mostly mined from these.", 142 | "source": "https://en.wikipedia.org/wiki/Strontium", 143 | "category": "Alkaline Earth Metal", 144 | "atomic_weight": "87.62(1) u(±)", 145 | "colors": [ 146 | 4294208325, 147 | 4293830729 148 | ] 149 | }, 150 | { 151 | "number": 56, 152 | "name": "Barium", 153 | "symbol": "Ba", 154 | "extract": "Barium is a chemical element with symbol Ba and atomic number 56. It is the fifth element in group 2 and is a soft, silvery alkaline earth metal. Because of its high chemical reactivity, barium is never found in nature as a free element. Its hydroxide, known in pre-modern times as baryta, does not occur as a mineral, but can be prepared by heating barium carbonate.\nThe most common naturally occurring minerals of barium are barite (now called baryte) (barium sulfate, BaSO4) and witherite (barium carbonate, BaCO3), both insoluble in water.", 155 | "source": "https://en.wikipedia.org/wiki/Barium", 156 | "category": "Alkaline Earth Metal", 157 | "atomic_weight": "137.327(7) u(±)", 158 | "colors": [ 159 | 4294208325, 160 | 4293830729 161 | ] 162 | }, 163 | { 164 | "number": 88, 165 | "name": "Radium", 166 | "symbol": "Ra", 167 | "extract": "Radium is a chemical element with symbol Ra and atomic number 88. It is the sixth element in group 2 of the periodic table, also known as the alkaline earth metals. Pure radium is silvery-white, but it readily reacts with nitrogen (rather than oxygen) on exposure to air, forming a black surface layer of radium nitride (Ra3N2). All isotopes of radium are highly radioactive, with the most stable isotope being radium-226, which has a half-life of 1600 years and decays into radon gas (specifically the isotope radon-222). When radium decays, ionizing radiation is a product, which can excite fluorescent chemicals and cause radioluminescence.", 168 | "source": "https://en.wikipedia.org/wiki/Radium", 169 | "category": "Alkaline Earth Metal", 170 | "atomic_weight": "[226] (mass number)", 171 | "colors": [ 172 | 4294208325, 173 | 4293830729 174 | ] 175 | }, 176 | null, 177 | null, 178 | null, 179 | null, 180 | null, 181 | null, 182 | { 183 | "number": 21, 184 | "name": "Scandium", 185 | "symbol": "Sc", 186 | "extract": "Scandium is a chemical element with symbol Sc and atomic number 21. A silvery-white metallic d-block element, it has historically been classified as a rare-earth element, together with yttrium and the lanthanides. It was discovered in 1879 by spectral analysis of the minerals euxenite and gadolinite from Scandinavia.\nScandium is present in most of the deposits of rare-earth and uranium compounds, but it is extracted from these ores in only a few mines worldwide. Because of the low availability and the difficulties in the preparation of metallic scandium, which was first done in 1937, applications for scandium were not developed until the 1970s.", 187 | "source": "https://en.wikipedia.org/wiki/Scandium", 188 | "category": "Transition Metal", 189 | "atomic_weight": "44.955908(5) u(±)", 190 | "colors": [ 191 | 4294953512, 192 | 4294963811 193 | ] 194 | }, 195 | { 196 | "number": 39, 197 | "name": "Yttrium", 198 | "symbol": "Y", 199 | "extract": "Yttrium is a chemical element with symbol Y and atomic number 39. It is a silvery-metallic transition metal chemically similar to the lanthanides and has often been classified as a \"rare-earth element\". Yttrium is almost always found in combination with lanthanide elements in rare-earth minerals, and is never found in nature as a free element. 89Y is the only stable isotope, and the only isotope found in the Earth's crust.\nIn 1787, Carl Axel Arrhenius found a new mineral near Ytterby in Sweden and named it ytterbite, after the village.", 200 | "source": "https://en.wikipedia.org/wiki/Yttrium", 201 | "category": "Transition Metal", 202 | "atomic_weight": "88.90584(1) u(±)", 203 | "colors": [ 204 | 4294953512, 205 | 4294963811 206 | ] 207 | }, 208 | null, 209 | null, 210 | null, 211 | { 212 | "number": 57, 213 | "name": "Lanthanum", 214 | "symbol": "La", 215 | "extract": "Lanthanum is a chemical element with symbol La and atomic number 57. It is a soft, ductile, silvery-white metal that tarnishes rapidly when exposed to air and is soft enough to be cut with a knife. It is the eponym of the lanthanide series, a group of 15 similar elements between lanthanum and lutetium in the periodic table, of which lanthanum is the first and the prototype. It is also sometimes considered the first element of the 6th-period transition metals, which would put it in group 3, although lutetium is sometimes placed in this position instead. Lanthanum is traditionally counted among the rare earth elements.", 216 | "source": "https://en.wikipedia.org/wiki/Lanthanum", 217 | "category": "Lanthanide", 218 | "atomic_weight": "138.90547(7) u(±)", 219 | "colors": [ 220 | 4287349578, 221 | 4292141399 222 | ] 223 | }, 224 | { 225 | "number": 89, 226 | "name": "Actinium", 227 | "symbol": "Ac", 228 | "extract": "Actinium is a chemical element with symbol Ac and atomic number 89. It was first isolated by French chemist André-Louis Debierne in 1899. Friedrich Oskar Giesel later independently isolated it in 1902 and, unaware that it was already known, gave it the name emanium. Actinium gave the name to the actinide series, a group of 15 similar elements between actinium and lawrencium in the periodic table. It is also sometimes considered the first of the 7th-period transition metals, although lawrencium is less commonly given that position.", 229 | "source": "https://en.wikipedia.org/wiki/Actinium", 230 | "category": "Actinide", 231 | "atomic_weight": "[227] (mass number)", 232 | "colors": [ 233 | 4279161591, 234 | 4289920762 235 | ] 236 | }, 237 | null, 238 | null, 239 | null, 240 | { 241 | "number": 22, 242 | "name": "Titanium", 243 | "symbol": "Ti", 244 | "extract": "Titanium is a chemical element with symbol Ti and atomic number 22. It is a lustrous transition metal with a silver color, low density, and high strength. Titanium is resistant to corrosion in sea water, aqua regia, and chlorine.\nTitanium was discovered in Cornwall, Great Britain, by William Gregor in 1791, and was named by Martin Heinrich Klaproth after the Titans of Greek mythology. The element occurs within a number of mineral deposits, principally rutile and ilmenite, which are widely distributed in the Earth's crust and lithosphere, and it is found in almost all living things, water bodies, rocks, and soils.", 245 | "source": "https://en.wikipedia.org/wiki/Titanium", 246 | "category": "Transition Metal", 247 | "atomic_weight": "47.867(1) u(±)", 248 | "colors": [ 249 | 4294953512, 250 | 4294963811 251 | ] 252 | }, 253 | { 254 | "number": 40, 255 | "name": "Zirconium", 256 | "symbol": "Zr", 257 | "extract": "Zirconium is a chemical element with symbol Zr and atomic number 40. The name zirconium is taken from the name of the mineral zircon (the word is related to Persian zargun (zircon;zar-gun, \"gold-like\" or \"as gold\")), the most important source of zirconium. It is a lustrous, grey-white, strong transition metal that closely resembles hafnium and, to a lesser extent, titanium. Zirconium is mainly used as a refractory and opacifier, although small amounts are used as an alloying agent for its strong resistance to corrosion. Zirconium forms a variety of inorganic and organometallic compounds such as zirconium dioxide and zirconocene dichloride, respectively.", 258 | "source": "https://en.wikipedia.org/wiki/Zirconium", 259 | "category": "Transition Metal", 260 | "atomic_weight": "91.224(2) u(±)", 261 | "colors": [ 262 | 4294953512, 263 | 4294963811 264 | ] 265 | }, 266 | { 267 | "number": 72, 268 | "name": "Hafnium", 269 | "symbol": "Hf", 270 | "extract": "Hafnium is a chemical element with symbol Hf and atomic number 72. A lustrous, silvery gray, tetravalent transition metal, hafnium chemically resembles zirconium and is found in many zirconium minerals. Its existence was predicted by Dmitri Mendeleev in 1869, though it was not identified until 1923, by Coster and Hevesy, making it the last stable element to be discovered. Hafnium is named after Hafnia, the Latin name for Copenhagen, where it was discovered.Hafnium is used in filaments and electrodes. Some semiconductor fabrication processes use its oxide for integrated circuits at 45 nm and smaller feature lengths.", 271 | "source": "https://en.wikipedia.org/wiki/Hafnium", 272 | "category": "Transition Metal", 273 | "atomic_weight": "178.49(2) u(±)", 274 | "colors": [ 275 | 4294953512, 276 | 4294963811 277 | ] 278 | }, 279 | { 280 | "number": 104, 281 | "name": "Rutherfordium", 282 | "symbol": "Rf", 283 | "extract": "Rutherfordium is a synthetic chemical element with symbol Rf and atomic number 104, named after physicist Ernest Rutherford. As a synthetic element, it is not found in nature and can only be created in a laboratory. It is radioactive; the most stable known isotope, 267Rf, has a half-life of approximately 1.3 hours.\nIn the periodic table of the elements, it is a d-block element and the second of the fourth-row transition elements. It is a member of the 7th period and belongs to the group 4 elements.", 284 | "source": "https://en.wikipedia.org/wiki/Rutherfordium", 285 | "category": "Transition Metal", 286 | "atomic_weight": "[267] (mass number)", 287 | "colors": [ 288 | 4294953512, 289 | 4294963811 290 | ] 291 | }, 292 | null, 293 | { 294 | "number": 58, 295 | "name": "Cerium", 296 | "symbol": "Ce", 297 | "extract": "Cerium is a chemical element with symbol Ce and atomic number 58. Cerium is a soft, ductile and silvery-white metal that tarnishes when exposed to air, and it is soft enough to be cut with a knife. Cerium is the second element in the lanthanide series, and while it often shows the +3 oxidation state characteristic of the series, it also exceptionally has a stable +4 state that does not oxidize water. It is also considered one of the rare-earth elements. Cerium has no biological role and is not very toxic.", 298 | "source": "https://en.wikipedia.org/wiki/Cerium", 299 | "category": "Lanthanide", 300 | "atomic_weight": "140.116(1) u(±)", 301 | "colors": [ 302 | 4287349578, 303 | 4292141399 304 | ] 305 | }, 306 | { 307 | "number": 90, 308 | "name": "Thorium", 309 | "symbol": "Th", 310 | "extract": "Thorium is a weakly radioactive metallic chemical element with symbol Th and atomic number 90. Thorium is silvery and tarnishes black when it is exposed to air, forming thorium dioxide; it is moderately hard, malleable, and has a high melting point. Thorium is an electropositive actinide whose chemistry is dominated by the +4 oxidation state; it is quite reactive and can ignite in air when finely divided.\nAll known thorium isotopes are unstable. The most stable isotope, 232Th, has a half-life of 14.05 billion years, or about the age of the universe; it decays very slowly via alpha decay, starting a decay chain named the thorium series that ends at stable 208Pb.", 311 | "source": "https://en.wikipedia.org/wiki/Thorium", 312 | "category": "Actinide", 313 | "atomic_weight": "232.0377(4) u(±)", 314 | "colors": [ 315 | 4279161591, 316 | 4289920762 317 | ] 318 | }, 319 | null, 320 | null, 321 | null, 322 | { 323 | "number": 23, 324 | "name": "Vanadium", 325 | "symbol": "V", 326 | "extract": "Vanadium is a chemical element with symbol V and atomic number 23. It is a hard, silvery-grey, ductile, malleable transition metal. The elemental metal is rarely found in nature, but once isolated artificially, the formation of an oxide layer (passivation) somewhat stabilizes the free metal against further oxidation.\nAndrés Manuel del Río discovered compounds of vanadium in 1801 in Mexico by analyzing a new lead-bearing mineral he called \"brown lead\", and presumed its qualities were due to the presence of a new element, which he named erythronium (derived from Greek for \"red\") since, upon heating, most of the salts turned red. Four years later, however, he was (erroneously) convinced by other scientists that erythronium was identical to chromium.", 327 | "source": "https://en.wikipedia.org/wiki/Vanadium", 328 | "category": "Transition Metal", 329 | "atomic_weight": "50.9415(1) u(±)", 330 | "colors": [ 331 | 4294953512, 332 | 4294963811 333 | ] 334 | }, 335 | { 336 | "number": 41, 337 | "name": "Niobium", 338 | "symbol": "Nb", 339 | "extract": "Niobium, formerly known as columbium, is a chemical element with symbol Nb (formerly Cb) and atomic number 41. It is a soft, grey, crystalline, ductile transition metal, often found in the minerals pyrochlore and columbite, hence the former name \"columbium\". Its name comes from Greek mythology, specifically Niobe, who was the daughter of Tantalus, the namesake of tantalum. The name reflects the great similarity between the two elements in their physical and chemical properties, making them difficult to distinguish.The English chemist Charles Hatchett reported a new element similar to tantalum in 1801 and named it columbium. In 1809, the English chemist William Hyde Wollaston wrongly concluded that tantalum and columbium were identical.", 340 | "source": "https://en.wikipedia.org/wiki/Niobium", 341 | "category": "Transition Metal", 342 | "atomic_weight": "92.90637(1) u(±)", 343 | "colors": [ 344 | 4294953512, 345 | 4294963811 346 | ] 347 | }, 348 | { 349 | "number": 73, 350 | "name": "Tantalum", 351 | "symbol": "Ta", 352 | "extract": "Tantalum is a chemical element with symbol Ta and atomic number 73. Previously known as tantalium, its name comes from Tantalus, a villain from Greek mythology. Tantalum is a rare, hard, blue-gray, lustrous transition metal that is highly corrosion-resistant. It is part of the refractory metals group, which are widely used as minor components in alloys. The chemical inertness of tantalum makes it a valuable substance for laboratory equipment and a substitute for platinum.", 353 | "source": "https://en.wikipedia.org/wiki/Tantalum", 354 | "category": "Transition Metal", 355 | "atomic_weight": "180.94788(2) u(±)", 356 | "colors": [ 357 | 4294953512, 358 | 4294963811 359 | ] 360 | }, 361 | { 362 | "number": 105, 363 | "name": "Dubnium", 364 | "symbol": "Db", 365 | "extract": "Dubnium is a synthetic chemical element with symbol Db and atomic number 105. Dubnium is highly radioactive: the most stable known isotope, dubnium-268, has a half-life of about 28 hours. This greatly limits the extent of research on dubnium.\nDubnium does not occur naturally on Earth and is produced artificially. The Soviet Joint Institute for Nuclear Research (JINR) claimed the first discovery of the element in 1968, followed by the American Lawrence Berkeley Laboratory in 1970.", 366 | "source": "https://en.wikipedia.org/wiki/Dubnium", 367 | "category": "Transition Metal", 368 | "atomic_weight": "[268] (mass number)", 369 | "colors": [ 370 | 4294953512, 371 | 4294963811 372 | ] 373 | }, 374 | null, 375 | { 376 | "number": 59, 377 | "name": "Praseodymium", 378 | "symbol": "Pr", 379 | "extract": "Praseodymium is a chemical element with symbol Pr and atomic number 59. It is the third member of the lanthanide series and is traditionally considered to be one of the rare-earth metals. Praseodymium is a soft, silvery, malleable and ductile metal, valued for its magnetic, electrical, chemical, and optical properties. It is too reactive to be found in native form, and pure praseodymium metal slowly develops a green oxide coating when exposed to air.\nPraseodymium always occurs naturally together with the other rare-earth metals.", 380 | "source": "https://en.wikipedia.org/wiki/Praseodymium", 381 | "category": "Lanthanide", 382 | "atomic_weight": "140.90766(1) u(±)", 383 | "colors": [ 384 | 4287349578, 385 | 4292141399 386 | ] 387 | }, 388 | { 389 | "number": 91, 390 | "name": "Protactinium", 391 | "symbol": "Pa", 392 | "extract": "Protactinium (formerly protoactinium) is a chemical element with symbol Pa and atomic number 91. It is a dense, silvery-gray actinide metal which readily reacts with oxygen, water vapor and inorganic acids. It forms various chemical compounds in which protactinium is usually present in the oxidation state +5, but it can also assume +4 and even +3 or +2 states. Concentrations of protactinium in the Earth's crust are typically a few parts per trillion, but may reach up to a few parts per million in some uraninite ore deposits. Because of its scarcity, high radioactivity and high toxicity, there are currently no uses for protactinium outside scientific research, and for this purpose, protactinium is mostly extracted from spent nuclear fuel.", 393 | "source": "https://en.wikipedia.org/wiki/Protactinium", 394 | "category": "Actinide", 395 | "atomic_weight": "231.03588(1) u(±)", 396 | "colors": [ 397 | 4279161591, 398 | 4289920762 399 | ] 400 | }, 401 | null, 402 | null, 403 | null, 404 | { 405 | "number": 24, 406 | "name": "Chromium", 407 | "symbol": "Cr", 408 | "extract": "Chromium is a chemical element with symbol Cr and atomic number 24. It is the first element in group 6. It is a steely-grey, lustrous, hard and brittle transition metal. Chromium boasts a high usage rate as a metal that is able to be highly polished while resisting tarnishing. Chromium is also the main additive in stainless steel, a popular steel alloy due to its uncommonly high specular reflection.", 409 | "source": "https://en.wikipedia.org/wiki/Chromium", 410 | "category": "Transition Metal", 411 | "atomic_weight": "51.9961(6) u(±)", 412 | "colors": [ 413 | 4294953512, 414 | 4294963811 415 | ] 416 | }, 417 | { 418 | "number": 42, 419 | "name": "Molybdenum", 420 | "symbol": "Mo", 421 | "extract": "Molybdenum is a chemical element with symbol Mo and atomic number 42. The name is from Neo-Latin molybdaenum, from Ancient Greek Μόλυβδος molybdos, meaning lead, since its ores were confused with lead ores. Molybdenum minerals have been known throughout history, but the element was discovered (in the sense of differentiating it as a new entity from the mineral salts of other metals) in 1778 by Carl Wilhelm Scheele. The metal was first isolated in 1781 by Peter Jacob Hjelm.Molybdenum does not occur naturally as a free metal on Earth; it is found only in various oxidation states in minerals. The free element, a silvery metal with a gray cast, has the sixth-highest melting point of any element.", 422 | "source": "https://en.wikipedia.org/wiki/Molybdenum", 423 | "category": "Transition Metal", 424 | "atomic_weight": "95.95(1) u(±)", 425 | "colors": [ 426 | 4294953512, 427 | 4294963811 428 | ] 429 | }, 430 | { 431 | "number": 74, 432 | "name": "Tungsten", 433 | "symbol": "W", 434 | "extract": "Tungsten, or wolfram, is a chemical element with symbol W and atomic number 74. The name tungsten comes from the former Swedish name for the tungstate mineral scheelite, tung sten or \"heavy stone\". Tungsten is a rare metal found naturally on Earth almost exclusively combined with other elements in chemical compounds rather than alone. It was identified as a new element in 1781 and first isolated as a metal in 1783. Its important ores include wolframite and scheelite.", 435 | "source": "https://en.wikipedia.org/wiki/Tungsten", 436 | "category": "Transition Metal", 437 | "atomic_weight": "183.84(1) u(±)", 438 | "colors": [ 439 | 4294953512, 440 | 4294963811 441 | ] 442 | }, 443 | { 444 | "number": 106, 445 | "name": "Seaborgium", 446 | "symbol": "Sg", 447 | "extract": "Seaborgium is a synthetic chemical element with symbol Sg and atomic number 106. It is named after the American nuclear chemist Glenn T. Seaborg. As a synthetic element, it can be created in a laboratory but is not found in nature. It is also radioactive; the most stable known isotope, 269Sg, has a half-life of approximately 14 minutes.In the periodic table of the elements, it is a d-block transactinide element. It is a member of the 7th period and belongs to the group 6 elements as the fourth member of the 6d series of transition metals.", 448 | "source": "https://en.wikipedia.org/wiki/Seaborgium", 449 | "category": "Transition Metal", 450 | "atomic_weight": "[269] (mass number)", 451 | "colors": [ 452 | 4294953512, 453 | 4294963811 454 | ] 455 | }, 456 | null, 457 | { 458 | "number": 60, 459 | "name": "Neodymium", 460 | "symbol": "Nd", 461 | "extract": "Neodymium is a chemical element with symbol Nd and atomic number 60. It is a soft silvery metal that tarnishes in air. Neodymium was discovered in 1885 by the Austrian chemist Carl Auer von Welsbach. It is present in significant quantities in the ore minerals monazite and bastnäsite. Neodymium is not found naturally in metallic form or unmixed with other lanthanides, and it is usually refined for general use.", 462 | "source": "https://en.wikipedia.org/wiki/Neodymium", 463 | "category": "Lanthanide", 464 | "atomic_weight": "144.242(3) u(±)", 465 | "colors": [ 466 | 4287349578, 467 | 4292141399 468 | ] 469 | }, 470 | { 471 | "number": 92, 472 | "name": "Uranium", 473 | "symbol": "U", 474 | "extract": "Uranium is a chemical element with symbol U and atomic number 92. It is a silvery-grey metal in the actinide series of the periodic table. A uranium atom has 92 protons and 92 electrons, of which 6 are valence electrons. Uranium is weakly radioactive because all isotopes of uranium are unstable, with half-lives varying between 159,200 years and 4.5 billion years. The most common isotopes in natural uranium are uranium-238 (which has 146 neutrons and accounts for over 99%) and uranium-235 (which has 143 neutrons).", 475 | "source": "https://en.wikipedia.org/wiki/Uranium", 476 | "category": "Actinide", 477 | "atomic_weight": "238.02891(3) u(±)", 478 | "colors": [ 479 | 4279161591, 480 | 4289920762 481 | ] 482 | }, 483 | null, 484 | null, 485 | null, 486 | { 487 | "number": 25, 488 | "name": "Manganese", 489 | "symbol": "Mn", 490 | "extract": "Manganese is a chemical element with symbol Mn and atomic number 25. It is not found as a free element in nature; it is often found in minerals in combination with iron. Manganese is a metal with important industrial metal alloy uses, particularly in stainless steels.\nHistorically, manganese is named for pyrolusite and other black minerals from the region of Magnesia in Greece, which also gave its name to magnesium and the iron ore magnetite. By the mid-18th century, Swedish-German chemist Carl Wilhelm Scheele had used pyrolusite to produce chlorine.", 491 | "source": "https://en.wikipedia.org/wiki/Manganese", 492 | "category": "Transition Metal", 493 | "atomic_weight": "54.938043(2) u(±)", 494 | "colors": [ 495 | 4294953512, 496 | 4294963811 497 | ] 498 | }, 499 | { 500 | "number": 43, 501 | "name": "Technetium", 502 | "symbol": "Tc", 503 | "extract": "Technetium is a chemical element with symbol Tc and atomic number 43. It is the lightest element whose isotopes are all radioactive; none are stable, excluding the fully ionized state of 97Tc. Nearly all technetium is produced synthetically, and only about 18,000 tons can be found at any given time in the Earth's crust. Naturally occurring technetium is a spontaneous fission product in uranium ore and thorium ore, the most common source, or the product of neutron capture in molybdenum ores. This silvery gray, crystalline transition metal lies between rhenium and manganese in group 7 of the periodic table, and its chemical properties are intermediate between those of these two adjacent elements.", 504 | "source": "https://en.wikipedia.org/wiki/Technetium", 505 | "category": "Transition Metal", 506 | "atomic_weight": "[98] (mass number)", 507 | "colors": [ 508 | 4294953512, 509 | 4294963811 510 | ] 511 | }, 512 | { 513 | "number": 75, 514 | "name": "Rhenium", 515 | "symbol": "Re", 516 | "extract": "Rhenium is a chemical element with symbol Re and atomic number 75. It is a silvery-gray, heavy, third-row transition metal in group 7 of the periodic table. With an estimated average concentration of 1 part per billion (ppb), rhenium is one of the rarest elements in the Earth's crust. Rhenium has the third-highest melting point and second-highest boiling point of any element at 5903 K. Rhenium resembles manganese and technetium chemically and is mainly obtained as a by-product of the extraction and refinement of molybdenum and copper ores. Rhenium shows in its compounds a wide variety of oxidation states ranging from −1 to +7.", 517 | "source": "https://en.wikipedia.org/wiki/Rhenium", 518 | "category": "Transition Metal", 519 | "atomic_weight": "186.207(1) u(±)", 520 | "colors": [ 521 | 4294953512, 522 | 4294963811 523 | ] 524 | }, 525 | { 526 | "number": 107, 527 | "name": "Bohrium", 528 | "symbol": "Bh", 529 | "extract": "Bohrium is a synthetic chemical element with symbol Bh and atomic number 107. It is named after Danish physicist Niels Bohr. As a synthetic element, it can be created in a laboratory but is not found in nature. It is radioactive: its most stable known isotope, 270Bh, has a half-life of approximately 61 seconds, though the unconfirmed 278Bh may have a longer half-life of about 690 seconds.\nIn the periodic table of the elements, it is a d-block transactinide element.", 530 | "source": "https://en.wikipedia.org/wiki/Bohrium", 531 | "category": "Transition Metal", 532 | "atomic_weight": "[270] (mass number)", 533 | "colors": [ 534 | 4294953512, 535 | 4294963811 536 | ] 537 | }, 538 | null, 539 | { 540 | "number": 61, 541 | "name": "Promethium", 542 | "symbol": "Pm", 543 | "extract": "Promethium is a chemical element with symbol Pm and atomic number 61. All of its isotopes are radioactive; it is extremely rare, with only about 500-600 grams naturally occurring in Earth's crust at any given time. Promethium is one of only two radioactive elements that are followed in the periodic table by elements with stable forms, the other being technetium. Chemically, promethium is a lanthanide. Promethium shows only one stable oxidation state of +3.", 544 | "source": "https://en.wikipedia.org/wiki/Promethium", 545 | "category": "Lanthanide", 546 | "atomic_weight": "[145] (mass number)", 547 | "colors": [ 548 | 4287349578, 549 | 4292141399 550 | ] 551 | }, 552 | { 553 | "number": 93, 554 | "name": "Neptunium", 555 | "symbol": "Np", 556 | "extract": "Neptunium is a chemical element with symbol Np and atomic number 93. A radioactive actinide metal, neptunium is the first transuranic element. Its position in the periodic table just after uranium, named after the planet Uranus, led to it being named after Neptune, the next planet beyond Uranus. A neptunium atom has 93 protons and 93 electrons, of which seven are valence electrons. Neptunium metal is silvery and tarnishes when exposed to air.", 557 | "source": "https://en.wikipedia.org/wiki/Neptunium", 558 | "category": "Actinide", 559 | "atomic_weight": "[237] (mass number)", 560 | "colors": [ 561 | 4279161591, 562 | 4289920762 563 | ] 564 | }, 565 | null, 566 | null, 567 | null, 568 | { 569 | "number": 26, 570 | "name": "Iron", 571 | "symbol": "Fe", 572 | "extract": "Iron () is a chemical element with symbol Fe (from Latin: ferrum) and atomic number 26. It is a metal, that belongs to the first transition series and group 8 of the periodic table. It is by mass the most common element on Earth, forming much of Earth's outer and inner core. It is the fourth most common element in the Earth's crust.\nPure iron is very rare on the Earth's crust, basically being limited to meteorites.", 573 | "source": "https://en.wikipedia.org/wiki/Iron", 574 | "category": "Transition Metal", 575 | "atomic_weight": "55.845(2) u(±)", 576 | "colors": [ 577 | 4294953512, 578 | 4294963811 579 | ] 580 | }, 581 | { 582 | "number": 44, 583 | "name": "Ruthenium", 584 | "symbol": "Ru", 585 | "extract": "Ruthenium is a chemical element with symbol Ru and atomic number 44. It is a rare transition metal belonging to the platinum group of the periodic table. Like the other metals of the platinum group, ruthenium is inert to most other chemicals. Russian-born scientist of Baltic-German ancestry Karl Ernst Claus discovered the element in 1844 at Kazan State University and named it after the Latin name of his homeland, Ruthenia. Ruthenium is usually found as a minor component of platinum ores; the annual production has risen from about 19 tonnes in 2009 to some 35.5 tonnes in 2017.", 586 | "source": "https://en.wikipedia.org/wiki/Ruthenium", 587 | "category": "Transition Metal", 588 | "atomic_weight": "101.07(2) u(±)", 589 | "colors": [ 590 | 4294953512, 591 | 4294963811 592 | ] 593 | }, 594 | { 595 | "number": 76, 596 | "name": "Osmium", 597 | "symbol": "Os", 598 | "extract": "Osmium (from Greek ὀσμή osme, \"smell\") is a chemical element with symbol Os and atomic number 76. It is a hard, brittle, bluish-white transition metal in the platinum group that is found as a trace element in alloys, mostly in platinum ores. Osmium is the densest naturally occurring element, with an experimentally measured (using x-ray crystallography) density of 22.59 g/cm3. Manufacturers use its alloys with platinum, iridium, and other platinum-group metals to make fountain pen nib tipping, electrical contacts, and in other applications that require extreme durability and hardness. The element's abundance in the Earth's crust is among the rarest.", 599 | "source": "https://en.wikipedia.org/wiki/Osmium", 600 | "category": "Transition Metal", 601 | "atomic_weight": "190.23(3) u(±)", 602 | "colors": [ 603 | 4294953512, 604 | 4294963811 605 | ] 606 | }, 607 | { 608 | "number": 108, 609 | "name": "Hassium", 610 | "symbol": "Hs", 611 | "extract": "Hassium is a synthetic chemical element with symbol Hs and atomic number 108. It is named after the German state of Hesse. It is a synthetic element and radioactive; the most stable known isotope, 270Hs, has a half-life of approximately 10 seconds.\nIn the periodic table of the elements, it is a d-block transactinide element. Hassium is a member of the 7th period and belongs to the group 8 elements: it is thus the sixth member of the 6d series of transition metals.", 612 | "source": "https://en.wikipedia.org/wiki/Hassium", 613 | "category": "Transition Metal", 614 | "atomic_weight": "[270] (mass number)", 615 | "colors": [ 616 | 4294953512, 617 | 4294963811 618 | ] 619 | }, 620 | null, 621 | { 622 | "number": 62, 623 | "name": "Samarium", 624 | "symbol": "Sm", 625 | "extract": "Samarium is a chemical element with symbol Sm and atomic number 62. It is a moderately hard silvery metal that slowly oxidizes in air. Being a typical member of the lanthanide series, samarium usually assumes the oxidation state +3. Compounds of samarium(II) are also known, most notably the monoxide SmO, monochalcogenides SmS, SmSe and SmTe, as well as samarium(II) iodide. The last compound is a common reducing agent in chemical synthesis.", 626 | "source": "https://en.wikipedia.org/wiki/Samarium", 627 | "category": "Lanthanide", 628 | "atomic_weight": "150.36(2) u(±)", 629 | "colors": [ 630 | 4287349578, 631 | 4292141399 632 | ] 633 | }, 634 | { 635 | "number": 94, 636 | "name": "Plutonium", 637 | "symbol": "Pu", 638 | "extract": "Plutonium is a radioactive chemical element with symbol Pu and atomic number 94. It is an actinide metal of silvery-gray appearance that tarnishes when exposed to air, and forms a dull coating when oxidized. The element normally exhibits six allotropes and four oxidation states. It reacts with carbon, halogens, nitrogen, silicon, and hydrogen. When exposed to moist air, it forms oxides and hydrides that can expand the sample up to 70% in volume, which in turn flake off as a powder that is pyrophoric.", 639 | "source": "https://en.wikipedia.org/wiki/Plutonium", 640 | "category": "Actinide", 641 | "atomic_weight": "[244] (mass number)", 642 | "colors": [ 643 | 4279161591, 644 | 4289920762 645 | ] 646 | }, 647 | null, 648 | null, 649 | null, 650 | { 651 | "number": 27, 652 | "name": "Cobalt", 653 | "symbol": "Co", 654 | "extract": "Cobalt is a chemical element with symbol Co and atomic number 27. Like nickel, cobalt is found in the Earth's crust only in chemically combined form, save for small deposits found in alloys of natural meteoric iron. The free element, produced by reductive smelting, is a hard, lustrous, silver-gray metal.\nCobalt-based blue pigments (cobalt blue) have been used since ancient times for jewelry and paints, and to impart a distinctive blue tint to glass, but the color was later thought by alchemists to be due to the known metal bismuth. Miners had long used the name kobold ore (German for goblin ore) for some of the blue-pigment producing minerals; they were so named because they were poor in known metals, and gave poisonous arsenic-containing fumes when smelted.", 655 | "source": "https://en.wikipedia.org/wiki/Cobalt", 656 | "category": "Transition Metal", 657 | "atomic_weight": "58.933194(3) u(±)", 658 | "colors": [ 659 | 4294953512, 660 | 4294963811 661 | ] 662 | }, 663 | { 664 | "number": 45, 665 | "name": "Rhodium", 666 | "symbol": "Rh", 667 | "extract": "Rhodium is a chemical element with symbol Rh and atomic number 45. It is a rare, silvery-white, hard, corrosion-resistant, and chemically inert transition metal. It is a noble metal and a member of the platinum group. It has only one naturally occurring isotope, 103Rh. Naturally occurring rhodium is usually found as the free metal, alloyed with similar metals, and rarely as a chemical compound in minerals such as bowieite and rhodplumsite.", 668 | "source": "https://en.wikipedia.org/wiki/Rhodium", 669 | "category": "Transition Metal", 670 | "atomic_weight": "102.90549(2) u(±)", 671 | "colors": [ 672 | 4294953512, 673 | 4294963811 674 | ] 675 | }, 676 | { 677 | "number": 77, 678 | "name": "Iridium", 679 | "symbol": "Ir", 680 | "extract": "Iridium is a chemical element with symbol Ir and atomic number 77. A very hard, brittle, silvery-white transition metal of the platinum group, iridium is the second-densest metal (after osmium) with a density of 22.56 g/cm3 as defined by experimental X-ray crystallography. At room temperature and standard atmospheric pressure, iridium has a density of 22.65 g/cm3, 0.04 g/cm3 higher than osmium measured the same way. It is the most corrosion-resistant metal, even at temperatures as high as 2000 °C. Although only certain molten salts and halogens are corrosive to solid iridium, finely divided iridium dust is much more reactive and can be flammable.\nIridium was discovered in 1803 among insoluble impurities in natural platinum.", 681 | "source": "https://en.wikipedia.org/wiki/Iridium", 682 | "category": "Transition Metal", 683 | "atomic_weight": "192.217(2) u(±)", 684 | "colors": [ 685 | 4294953512, 686 | 4294963811 687 | ] 688 | }, 689 | { 690 | "number": 109, 691 | "name": "Meitnerium", 692 | "symbol": "Mt", 693 | "extract": "Meitnerium is a synthetic chemical element with symbol Mt and atomic number 109. It is an extremely radioactive synthetic element (an element not found in nature, but can be created in a laboratory). The most stable known isotope, meitnerium-278, has a half-life of 7.6 seconds, although the unconfirmed meitnerium-282 may have a longer half-life of 67 seconds. The GSI Helmholtz Centre for Heavy Ion Research near Darmstadt, Germany, first created this element in 1982. It is named after Lise Meitner.", 694 | "source": "https://en.wikipedia.org/wiki/Meitnerium", 695 | "category": "Unknown chemical properties", 696 | "atomic_weight": "[278] (mass number)", 697 | "colors": [ 698 | 4285890458, 699 | 4292337128 700 | ] 701 | }, 702 | null, 703 | { 704 | "number": 63, 705 | "name": "Europium", 706 | "symbol": "Eu", 707 | "extract": "Europium is a chemical element with symbol Eu and atomic number 63. It was isolated in 1901 and is named after the continent of Europe. It is a moderately hard, silvery metal which readily oxidizes in air and water. Being a typical member of the lanthanide series, europium usually assumes the oxidation state +3, but the oxidation state +2 is also common. All europium compounds with oxidation state +2 are slightly reducing.", 708 | "source": "https://en.wikipedia.org/wiki/Europium", 709 | "category": "Lanthanide", 710 | "atomic_weight": "151.964(1) u(±)", 711 | "colors": [ 712 | 4287349578, 713 | 4292141399 714 | ] 715 | }, 716 | { 717 | "number": 95, 718 | "name": "Americium", 719 | "symbol": "Am", 720 | "extract": "Americium is a synthetic chemical element with symbol Am and atomic number 95. It is radioactive and a transuranic member of the actinide series, in the periodic table located under the lanthanide element europium, and thus by analogy was named after the Americas.Americium was first produced in 1944 by the group of Glenn T. Seaborg from Berkeley, California, at the Metallurgical Laboratory of the University of Chicago, a part of the Manhattan Project. Although it is the third element in the transuranic series, it was discovered fourth, after the heavier curium. The discovery was kept secret and only released to the public in November 1945. Most americium is produced by uranium or plutonium being bombarded with neutrons in nuclear reactors – one tonne of spent nuclear fuel contains about 100 grams of americium.", 721 | "source": "https://en.wikipedia.org/wiki/Americium", 722 | "category": "Actinide", 723 | "atomic_weight": "[243] (mass number)", 724 | "colors": [ 725 | 4279161591, 726 | 4289920762 727 | ] 728 | }, 729 | null, 730 | null, 731 | null, 732 | { 733 | "number": 28, 734 | "name": "Nickel", 735 | "symbol": "Ni", 736 | "extract": "Nickel is a chemical element with symbol Ni and atomic number 28. It is a silvery-white lustrous metal with a slight golden tinge. Nickel belongs to the transition metals and is hard and ductile. Pure nickel, powdered to maximize the reactive surface area, shows a significant chemical activity, but larger pieces are slow to react with air under standard conditions because an oxide layer forms on the surface and prevents further corrosion (passivation). Even so, pure native nickel is found in Earth's crust only in tiny amounts, usually in ultramafic rocks, and in the interiors of larger nickel–iron meteorites that were not exposed to oxygen when outside Earth's atmosphere.", 737 | "source": "https://en.wikipedia.org/wiki/Nickel", 738 | "category": "Transition Metal", 739 | "atomic_weight": "58.6934(4) u(±)", 740 | "colors": [ 741 | 4294953512, 742 | 4294963811 743 | ] 744 | }, 745 | { 746 | "number": 46, 747 | "name": "Palladium", 748 | "symbol": "Pd", 749 | "extract": "Palladium is a chemical element with symbol Pd and atomic number 46. It is a rare and lustrous silvery-white metal discovered in 1803 by William Hyde Wollaston. He named it after the asteroid Pallas, which was itself named after the epithet of the Greek goddess Athena, acquired by her when she slew Pallas. Palladium, platinum, rhodium, ruthenium, iridium and osmium form a group of elements referred to as the platinum group metals (PGMs). These have similar chemical properties, but palladium has the lowest melting point and is the least dense of them.", 750 | "source": "https://en.wikipedia.org/wiki/Palladium", 751 | "category": "Transition Metal", 752 | "atomic_weight": "106.42(1) u(±)", 753 | "colors": [ 754 | 4294953512, 755 | 4294963811 756 | ] 757 | }, 758 | { 759 | "number": 78, 760 | "name": "Platinum", 761 | "symbol": "Pt", 762 | "extract": "Platinum is a chemical element with symbol Pt and atomic number 78. It is a dense, malleable, ductile, highly unreactive, precious, silverish-white transition metal. Its name is derived from the Spanish term platino, meaning \"little silver\".Platinum is a member of the platinum group of elements and group 10 of the periodic table of elements. It has six naturally occurring isotopes. It is one of the rarer elements in Earth's crust, with an average abundance of approximately 5 μg/kg.", 763 | "source": "https://en.wikipedia.org/wiki/Platinum", 764 | "category": "Transition Metal", 765 | "atomic_weight": "195.084(9) u(±)", 766 | "colors": [ 767 | 4294953512, 768 | 4294963811 769 | ] 770 | }, 771 | { 772 | "number": 110, 773 | "name": "Darmstadtium", 774 | "symbol": "Ds", 775 | "extract": "Darmstadtium is a synthetic chemical element with symbol Ds and atomic number 110. It is an extremely radioactive synthetic element. The most stable known isotope, darmstadtium-281, has a half-life of approximately 12.7 seconds. Darmstadtium was first created in 1994 by the GSI Helmholtz Centre for Heavy Ion Research near the city of Darmstadt, Germany, after which it was named.\nIn the periodic table, it is a d-block transactinide element.", 776 | "source": "https://en.wikipedia.org/wiki/Darmstadtium", 777 | "category": "Unknown chemical properties", 778 | "atomic_weight": "[281] (mass number)", 779 | "colors": [ 780 | 4285890458, 781 | 4292337128 782 | ] 783 | }, 784 | null, 785 | { 786 | "number": 64, 787 | "name": "Gadolinium", 788 | "symbol": "Gd", 789 | "extract": "Gadolinium is a chemical element with symbol Gd and atomic number 64. Gadolinium is a silvery-white, malleable, and ductile rare earth metal. It is found in nature only in oxidized form, and even when separated, it usually has impurities of the other rare earths. Gadolinium was discovered in 1880 by Jean Charles de Marignac, who detected its oxide by using spectroscopy. It is named after the mineral gadolinite, one of the minerals in which gadolinium is found, itself named for the chemist Johan Gadolin.", 790 | "source": "https://en.wikipedia.org/wiki/Gadolinium", 791 | "category": "Lanthanide", 792 | "atomic_weight": "157.25(3) u(±)", 793 | "colors": [ 794 | 4287349578, 795 | 4292141399 796 | ] 797 | }, 798 | { 799 | "number": 96, 800 | "name": "Curium", 801 | "symbol": "Cm", 802 | "extract": "Curium is a transuranic radioactive chemical element with symbol Cm and atomic number 96. This element of the actinide series was named after Marie and Pierre Curie – both were known for their research on radioactivity. Curium was first intentionally produced and identified in July 1944 by the group of Glenn T. Seaborg at the University of California, Berkeley. The discovery was kept secret and only released to the public in November 1947. Most curium is produced by bombarding uranium or plutonium with neutrons in nuclear reactors – one tonne of spent nuclear fuel contains about 20 grams of curium.", 803 | "source": "https://en.wikipedia.org/wiki/Curium", 804 | "category": "Actinide", 805 | "atomic_weight": "[247] (mass number)", 806 | "colors": [ 807 | 4279161591, 808 | 4289920762 809 | ] 810 | }, 811 | null, 812 | null, 813 | null, 814 | { 815 | "number": 29, 816 | "name": "Copper", 817 | "symbol": "Cu", 818 | "extract": "Copper is a chemical element with symbol Cu (from Latin: cuprum) and atomic number 29. It is a soft, malleable, and ductile metal with very high thermal and electrical conductivity. A freshly exposed surface of pure copper has a pinkish-orange color. Copper is used as a conductor of heat and electricity, as a building material, and as a constituent of various metal alloys, such as sterling silver used in jewelry, cupronickel used to make marine hardware and coins, and constantan used in strain gauges and thermocouples for temperature measurement.\nCopper is one of the few metals that can occur in nature in a directly usable metallic form (native metals).", 819 | "source": "https://en.wikipedia.org/wiki/Copper", 820 | "category": "Transition Metal", 821 | "atomic_weight": "63.546(3) u(±)", 822 | "colors": [ 823 | 4294953512, 824 | 4294963811 825 | ] 826 | }, 827 | { 828 | "number": 47, 829 | "name": "Silver", 830 | "symbol": "Ag", 831 | "extract": "Silver is a chemical element with symbol Ag (from the Latin argentum, derived from the Proto-Indo-European h₂erǵ: \"shiny\" or \"white\") and atomic number 47. A soft, white, lustrous transition metal, it exhibits the highest electrical conductivity, thermal conductivity, and reflectivity of any metal. The metal is found in the Earth's crust in the pure, free elemental form (\"native silver\"), as an alloy with gold and other metals, and in minerals such as argentite and chlorargyrite. Most silver is produced as a byproduct of copper, gold, lead, and zinc refining.\nSilver has long been valued as a precious metal.", 832 | "source": "https://en.wikipedia.org/wiki/Silver", 833 | "category": "Transition Metal", 834 | "atomic_weight": "107.8682(2) u(±)", 835 | "colors": [ 836 | 4294953512, 837 | 4294963811 838 | ] 839 | }, 840 | { 841 | "number": 79, 842 | "name": "Gold", 843 | "symbol": "Au", 844 | "extract": "Gold is a chemical element with symbol Au (from Latin: aurum) and atomic number 79, making it one of the higher atomic number elements that occur naturally. In its purest form, it is a bright, slightly reddish yellow, dense, soft, malleable, and ductile metal. Chemically, gold is a transition metal and a group 11 element. It is one of the least reactive chemical elements and is solid under standard conditions. Gold often occurs in free elemental (native) form, as nuggets or grains, in rocks, in veins, and in alluvial deposits.", 845 | "source": "https://en.wikipedia.org/wiki/Gold", 846 | "category": "Transition Metal", 847 | "atomic_weight": "196.966570(4) u(±)", 848 | "colors": [ 849 | 4294953512, 850 | 4294963811 851 | ] 852 | }, 853 | { 854 | "number": 111, 855 | "name": "Roentgenium", 856 | "symbol": "Rg", 857 | "extract": "Roentgenium is a chemical element with symbol Rg and atomic number 111. It is an extremely radioactive synthetic element that can be created in a laboratory but is not found in nature. The most stable known isotope, roentgenium-282, has a half-life of 100 seconds, although the unconfirmed roentgenium-286 may have a longer half-life of about 10.7 minutes. Roentgenium was first created in 1994 by the GSI Helmholtz Centre for Heavy Ion Research near Darmstadt, Germany. It is named after the physicist Wilhelm Röntgen (also spelled Roentgen), who discovered X-rays.", 858 | "source": "https://en.wikipedia.org/wiki/Roentgenium", 859 | "category": "Unknown chemical properties", 860 | "atomic_weight": "[282] (mass number)", 861 | "colors": [ 862 | 4285890458, 863 | 4292337128 864 | ] 865 | }, 866 | null, 867 | { 868 | "number": 65, 869 | "name": "Terbium", 870 | "symbol": "Tb", 871 | "extract": "Terbium is a chemical element with symbol Tb and atomic number 65. It is a silvery-white, rare earth metal that is malleable, ductile, and soft enough to be cut with a knife. The ninth member of the lanthanide series, terbium is a fairly electropositive metal that reacts with water, evolving hydrogen gas. Terbium is never found in nature as a free element, but it is contained in many minerals, including cerite, gadolinite, monazite, xenotime, and euxenite.\nSwedish chemist Carl Gustaf Mosander discovered terbium as a chemical element in 1843.", 872 | "source": "https://en.wikipedia.org/wiki/Terbium", 873 | "category": "Lanthanide", 874 | "atomic_weight": "158.925354(8) u(±)", 875 | "colors": [ 876 | 4287349578, 877 | 4292141399 878 | ] 879 | }, 880 | { 881 | "number": 97, 882 | "name": "Berkelium", 883 | "symbol": "Bk", 884 | "extract": "Berkelium is a transuranic radioactive chemical element with symbol Bk and atomic number 97. It is a member of the actinide and transuranium element series. It is named after the city of Berkeley, California, the location of the Lawrence Berkeley National Laboratory (then the University of California Radiation Laboratory) where it was discovered in December 1949. Berkelium was the fifth transuranium element discovered after neptunium, plutonium, curium and americium.\nThe major isotope of berkelium, 249Bk, is synthesized in minute quantities in dedicated high-flux nuclear reactors, mainly at the Oak Ridge National Laboratory in Tennessee, USA, and at the Research Institute of Atomic Reactors in Dimitrovgrad, Russia.", 885 | "source": "https://en.wikipedia.org/wiki/Berkelium", 886 | "category": "Actinide", 887 | "atomic_weight": "[247] (mass number)", 888 | "colors": [ 889 | 4279161591, 890 | 4289920762 891 | ] 892 | }, 893 | null, 894 | null, 895 | null, 896 | { 897 | "number": 30, 898 | "name": "Zinc", 899 | "symbol": "Zn", 900 | "extract": "Zinc is a chemical element with symbol Zn and atomic number 30. It is the first element in group 12 of the periodic table. In some respects zinc is chemically similar to magnesium: both elements exhibit only one normal oxidation state (+2), and the Zn2+ and Mg2+ ions are of similar size. Zinc is the 24th most abundant element in Earth's crust and has five stable isotopes. The most common zinc ore is sphalerite (zinc blende), a zinc sulfide mineral.", 901 | "source": "https://en.wikipedia.org/wiki/Zinc", 902 | "category": "Post-transition Metal", 903 | "atomic_weight": "65.38(2) u(±)", 904 | "colors": [ 905 | 4279343502, 906 | 4281921405 907 | ] 908 | }, 909 | { 910 | "number": 48, 911 | "name": "Cadmium", 912 | "symbol": "Cd", 913 | "extract": "Cadmium is a chemical element with symbol Cd and atomic number 48. This soft, bluish-white metal is chemically similar to the two other stable metals in group 12, zinc and mercury. Like zinc, it demonstrates oxidation state +2 in most of its compounds, and like mercury, it has a lower melting point than the transition metals in groups 3 through 11. Cadmium and its congeners in group 12 are often not considered transition metals, in that they do not have partly filled d or f electron shells in the elemental or common oxidation states. The average concentration of cadmium in Earth's crust is between 0.1 and 0.5 parts per million (ppm).", 914 | "source": "https://en.wikipedia.org/wiki/Cadmium", 915 | "category": "Post-transition Metal", 916 | "atomic_weight": "112.414(4) u(±)", 917 | "colors": [ 918 | 4279343502, 919 | 4281921405 920 | ] 921 | }, 922 | { 923 | "number": 80, 924 | "name": "Mercury", 925 | "symbol": "Hg", 926 | "extract": "Mercury is a chemical element with symbol Hg and atomic number 80. It is commonly known as quicksilver and was formerly named hydrargyrum ( hy-DRAR-jər-əm). A heavy, silvery d-block element, mercury is the only metallic element that is liquid at standard conditions for temperature and pressure; the only other element that is liquid under these conditions is the halogen bromine, though metals such as caesium, gallium, and rubidium melt just above room temperature.\nMercury occurs in deposits throughout the world mostly as cinnabar (mercuric sulfide). The red pigment vermilion is obtained by grinding natural cinnabar or synthetic mercuric sulfide.", 927 | "source": "https://en.wikipedia.org/wiki/Mercury (element)", 928 | "category": "Post-transition Metal", 929 | "atomic_weight": "200.592(3) u(±)", 930 | "colors": [ 931 | 4279343502, 932 | 4281921405 933 | ] 934 | }, 935 | { 936 | "number": 112, 937 | "name": "Copernicium", 938 | "symbol": "Cn", 939 | "extract": "Copernicium is a synthetic chemical element with symbol Cn and atomic number 112. Its known isotopes are extremely radioactive, and have only been created in a laboratory. The most stable known isotope, copernicium-285, has a half-life of approximately 29 seconds. Copernicium was first created in 1996 by the GSI Helmholtz Centre for Heavy Ion Research near Darmstadt, Germany. It is named after the astronomer Nicolaus Copernicus.", 940 | "source": "https://en.wikipedia.org/wiki/Copernicium", 941 | "category": "Post-transition Metal", 942 | "atomic_weight": "[285] (mass number)", 943 | "colors": [ 944 | 4279343502, 945 | 4281921405 946 | ] 947 | }, 948 | null, 949 | { 950 | "number": 66, 951 | "name": "Dysprosium", 952 | "symbol": "Dy", 953 | "extract": "Dysprosium is a chemical element with symbol Dy and atomic number 66. It is a rare earth element with a metallic silver luster. Dysprosium is never found in nature as a free element, though it is found in various minerals, such as xenotime. Naturally occurring dysprosium is composed of seven isotopes, the most abundant of which is 164Dy.\nDysprosium was first identified in 1886 by Paul Émile Lecoq de Boisbaudran, but it was not isolated in pure form until the development of ion exchange techniques in the 1950s.", 954 | "source": "https://en.wikipedia.org/wiki/Dysprosium", 955 | "category": "Lanthanide", 956 | "atomic_weight": "162.500(1) u(±)", 957 | "colors": [ 958 | 4287349578, 959 | 4292141399 960 | ] 961 | }, 962 | { 963 | "number": 98, 964 | "name": "Californium", 965 | "symbol": "Cf", 966 | "extract": "Californium is a radioactive chemical element with symbol Cf and atomic number 98. The element was first synthesized in 1950 at the Lawrence Berkeley National Laboratory (then the University of California Radiation Laboratory), by bombarding curium with alpha particles (helium-4 ions). It is an actinide element, the sixth transuranium element to be synthesized, and has the second-highest atomic mass of all the elements that have been produced in amounts large enough to see with the unaided eye (after einsteinium). The element was named after the university and the state of California.\nTwo crystalline forms exist for californium under normal pressure: one above and one below 900 °C (1,650 °F).", 967 | "source": "https://en.wikipedia.org/wiki/Californium", 968 | "category": "Actinide", 969 | "atomic_weight": "[251] (mass number)", 970 | "colors": [ 971 | 4279161591, 972 | 4289920762 973 | ] 974 | }, 975 | null, 976 | { 977 | "number": 5, 978 | "name": "Boron", 979 | "symbol": "B", 980 | "extract": "Boron is a chemical element with symbol B and atomic number 5. Produced entirely by cosmic ray spallation and supernovae and not by stellar nucleosynthesis, it is a low-abundance element in the Solar system and in the Earth's crust. Boron is concentrated on Earth by the water-solubility of its more common naturally occurring compounds, the borate minerals. These are mined industrially as evaporites, such as borax and kernite. The largest known boron deposits are in Turkey, the largest producer of boron minerals.", 981 | "source": "https://en.wikipedia.org/wiki/Boron", 982 | "category": "Metalloid", 983 | "atomic_weight": "10.81 u(±)", 984 | "colors": [ 985 | 4278219519, 986 | 4278241023 987 | ] 988 | }, 989 | { 990 | "number": 13, 991 | "name": "Aluminium", 992 | "symbol": "Al", 993 | "extract": "Aluminium or aluminum is a chemical element with symbol Al and atomic number 13. It is a silvery-white, soft, nonmagnetic and ductile metal in the boron group. By mass, aluminium makes up about 8% of the Earth's crust; it is the third most abundant element after oxygen and silicon and the most abundant metal in the crust, though it is less common in the mantle below. The chief ore of aluminium is bauxite. Aluminium metal is so chemically reactive that native specimens are rare and limited to extreme reducing environments.", 994 | "source": "https://en.wikipedia.org/wiki/Aluminium", 995 | "category": "Post-transition Metal", 996 | "atomic_weight": "26.9815384(3) u(±)", 997 | "colors": [ 998 | 4279343502, 999 | 4281921405 1000 | ] 1001 | }, 1002 | { 1003 | "number": 31, 1004 | "name": "Gallium", 1005 | "symbol": "Ga", 1006 | "extract": "Gallium is a chemical element with symbol Ga and atomic number 31. It is in group 13 of the periodic table, and thus has similarities to the other metals of the group, aluminium, indium, and thallium. Gallium does not occur as a free element in nature, but as gallium(III) compounds in trace amounts in zinc ores and in bauxite. Elemental gallium is a soft, silvery blue metal at standard temperature and pressure, a brittle solid at low temperatures, and a liquid at temperatures greater than 29.76 °C (85.57 °F) (above room temperature, but below the normal human body temperature of 37 °C (99 °F), hence, the metal will melt in a person's hands).\nThe melting point of gallium is used as a temperature reference point.", 1007 | "source": "https://en.wikipedia.org/wiki/Gallium", 1008 | "category": "Post-transition Metal", 1009 | "atomic_weight": "69.723(1) u(±)", 1010 | "colors": [ 1011 | 4279343502, 1012 | 4281921405 1013 | ] 1014 | }, 1015 | { 1016 | "number": 49, 1017 | "name": "Indium", 1018 | "symbol": "In", 1019 | "extract": "Indium is a chemical element with symbol In and atomic number 49. It is a post-transition metal that makes up 0.21 parts per million of the Earth's crust. Very soft and malleable, indium has a melting point higher than sodium and gallium, but lower than lithium and tin. Chemically, indium is similar to gallium and thallium, and it is largely intermediate between the two in terms of its properties. Indium was discovered in 1863 by Ferdinand Reich and Hieronymous Theodor Richter by spectroscopic methods.", 1020 | "source": "https://en.wikipedia.org/wiki/Indium", 1021 | "category": "Post-transition Metal", 1022 | "atomic_weight": "114.818(1) u(±)", 1023 | "colors": [ 1024 | 4279343502, 1025 | 4281921405 1026 | ] 1027 | }, 1028 | { 1029 | "number": 81, 1030 | "name": "Thallium", 1031 | "symbol": "Tl", 1032 | "extract": "Thallium is a chemical element with symbol Tl and atomic number 81. It is a gray post-transition metal that is not found free in nature. When isolated, thallium resembles tin, but discolors when exposed to air. Chemists William Crookes and Claude-Auguste Lamy discovered thallium independently in 1861, in residues of sulfuric acid production. Both used the newly developed method of flame spectroscopy, in which thallium produces a notable green spectral line.", 1033 | "source": "https://en.wikipedia.org/wiki/Thallium", 1034 | "category": "Post-transition Metal", 1035 | "atomic_weight": "204.38 u(±)", 1036 | "colors": [ 1037 | 4279343502, 1038 | 4281921405 1039 | ] 1040 | }, 1041 | { 1042 | "number": 113, 1043 | "name": "Nihonium", 1044 | "symbol": "Nh", 1045 | "extract": "Nihonium is a synthetic chemical element with the symbol Nh and atomic number 113. It is extremely radioactive; its most stable known isotope, nihonium-286, has a half-life of about 10 seconds. In the periodic table, nihonium is a transactinide element in the p-block. It is a member of period 7 and group 13 (boron group).\nNihonium was first reported to have been created in 2003 by a Russian–American collaboration at the Joint Institute for Nuclear Research (JINR) in Dubna, Russia, and in 2004 by a team of Japanese scientists at Riken in Wakō, Japan.", 1046 | "source": "https://en.wikipedia.org/wiki/Nihonium", 1047 | "category": "Unknown chemical properties", 1048 | "atomic_weight": "[286] (mass number)", 1049 | "colors": [ 1050 | 4285890458, 1051 | 4292337128 1052 | ] 1053 | }, 1054 | null, 1055 | { 1056 | "number": 67, 1057 | "name": "Holmium", 1058 | "symbol": "Ho", 1059 | "extract": "Holmium is a chemical element with symbol Ho and atomic number 67. Part of the lanthanide series, holmium is a rare-earth element. Holmium was discovered by Swedish chemist Per Theodor Cleve. Its oxide was first isolated from rare-earth ores in 1878. The element's name comes from Holmia, the Latin name for the city of Stockholm.", 1060 | "source": "https://en.wikipedia.org/wiki/Holmium", 1061 | "category": "Lanthanide", 1062 | "atomic_weight": "164.930328(7) u(±)", 1063 | "colors": [ 1064 | 4287349578, 1065 | 4292141399 1066 | ] 1067 | }, 1068 | { 1069 | "number": 99, 1070 | "name": "Einsteinium", 1071 | "symbol": "Es", 1072 | "extract": "Einsteinium is a synthetic element with symbol Es and atomic number 99. A member of the actinide series, it is the seventh transuranic element.\nEinsteinium was discovered as a component of the debris of the first hydrogen bomb explosion in 1952, and named after Albert Einstein. Its most common isotope einsteinium-253 (half-life 20.47 days) is produced artificially from decay of californium-253 in a few dedicated high-power nuclear reactors with a total yield on the order of one milligram per year. The reactor synthesis is followed by a complex process of separating einsteinium-253 from other actinides and products of their decay.", 1073 | "source": "https://en.wikipedia.org/wiki/Einsteinium", 1074 | "category": "Actinide", 1075 | "atomic_weight": "[252] (mass number)", 1076 | "colors": [ 1077 | 4279161591, 1078 | 4289920762 1079 | ] 1080 | }, 1081 | null, 1082 | { 1083 | "number": 6, 1084 | "name": "Carbon", 1085 | "symbol": "C", 1086 | "extract": "Carbon (from Latin: carbo \"coal\") is a chemical element with symbol C and atomic number 6. It is nonmetallic and tetravalent—making four electrons available to form covalent chemical bonds. It belongs to group 14 of the periodic table. Three isotopes occur naturally, 12C and 13C being stable, while 14C is a radionuclide, decaying with a half-life of about 5,730 years. Carbon is one of the few elements known since antiquity.Carbon is the 15th most abundant element in the Earth's crust, and the fourth most abundant element in the universe by mass after hydrogen, helium, and oxygen.", 1087 | "source": "https://en.wikipedia.org/wiki/Carbon", 1088 | "category": "Reactive Nonmetal", 1089 | "atomic_weight": "12.011 u(±)", 1090 | "colors": [ 1091 | 4283657726, 1092 | 4287535603 1093 | ] 1094 | }, 1095 | { 1096 | "number": 14, 1097 | "name": "Silicon", 1098 | "symbol": "Si", 1099 | "extract": "Silicon is a chemical element with symbol Si and atomic number 14. It is a hard and brittle crystalline solid with a blue-grey metallic lustre; and it is a tetravalent metalloid and semiconductor. It is a member of group 14 in the periodic table: carbon is above it; and germanium, tin, and lead are below it. It is relatively unreactive. Because of its high chemical affinity for oxygen, it was not until 1823 that Jöns Jakob Berzelius was first able to prepare it and characterize it in pure form.", 1100 | "source": "https://en.wikipedia.org/wiki/Silicon", 1101 | "category": "Metalloid", 1102 | "atomic_weight": "28.085 u(±)", 1103 | "colors": [ 1104 | 4278219519, 1105 | 4278241023 1106 | ] 1107 | }, 1108 | { 1109 | "number": 32, 1110 | "name": "Germanium", 1111 | "symbol": "Ge", 1112 | "extract": "Germanium is a chemical element with symbol Ge and atomic number 32. It is a lustrous, hard, grayish-white metalloid in the carbon group, chemically similar to its group neighbours silicon and tin. Pure germanium is a semiconductor with an appearance similar to elemental silicon. Like silicon, germanium naturally reacts and forms complexes with oxygen in nature.\nBecause it seldom appears in high concentration, germanium was discovered comparatively late in the history of chemistry.", 1113 | "source": "https://en.wikipedia.org/wiki/Germanium", 1114 | "category": "Metalloid", 1115 | "atomic_weight": "72.630(8) u(±)", 1116 | "colors": [ 1117 | 4278219519, 1118 | 4278241023 1119 | ] 1120 | }, 1121 | { 1122 | "number": 50, 1123 | "name": "Tin", 1124 | "symbol": "Sn", 1125 | "extract": "Tin is a chemical element with the symbol Sn (from Latin: stannum) and atomic number 50. It is a post-transition metal in group 14 of the periodic table of elements. It is obtained chiefly from the mineral cassiterite, which contains stannic oxide, SnO2. Tin shows a chemical similarity to both of its neighbors in group 14, germanium and lead, and has two main oxidation states, +2 and the slightly more stable +4. Tin is the 49th most abundant element and has, with 10 stable isotopes, the largest number of stable isotopes in the periodic table, thanks to its magic number of protons.", 1126 | "source": "https://en.wikipedia.org/wiki/Tin", 1127 | "category": "Post-transition Metal", 1128 | "atomic_weight": "118.710(7) u(±)", 1129 | "colors": [ 1130 | 4279343502, 1131 | 4281921405 1132 | ] 1133 | }, 1134 | { 1135 | "number": 82, 1136 | "name": "Lead", 1137 | "symbol": "Pb", 1138 | "extract": "Lead () is a chemical element with symbol Pb (from the Latin plumbum) and atomic number 82. It is a heavy metal that is denser than most common materials. Lead is soft and malleable, and also has a relatively low melting point. When freshly cut, lead is silvery with a hint of blue; it tarnishes to a dull gray color when exposed to air. Lead has the highest atomic number of any stable element and three of its isotopes each include a major decay chain of heavier elements.", 1139 | "source": "https://en.wikipedia.org/wiki/Lead", 1140 | "category": "Post-transition Metal", 1141 | "atomic_weight": "207.2(1) u(±)", 1142 | "colors": [ 1143 | 4279343502, 1144 | 4281921405 1145 | ] 1146 | }, 1147 | { 1148 | "number": 114, 1149 | "name": "Flerovium", 1150 | "symbol": "Fl", 1151 | "extract": "Flerovium is a superheavy artificial chemical element with symbol Fl and atomic number 114. It is an extremely radioactive synthetic element. The element is named after the Flerov Laboratory of Nuclear Reactions of the Joint Institute for Nuclear Research in Dubna, Russia, where the element was discovered in 1998. The name of the laboratory, in turn, honours the Russian physicist Georgy Flyorov (Флёров in Cyrillic, hence the transliteration of \"yo\" to \"e\"). The name was adopted by IUPAC on 30 May 2012.", 1152 | "source": "https://en.wikipedia.org/wiki/Flerovium", 1153 | "category": "Unknown chemical properties", 1154 | "atomic_weight": "[289] (mass number)", 1155 | "colors": [ 1156 | 4285890458, 1157 | 4292337128 1158 | ] 1159 | }, 1160 | null, 1161 | { 1162 | "number": 68, 1163 | "name": "Erbium", 1164 | "symbol": "Er", 1165 | "extract": "Erbium is a chemical element with symbol Er and atomic number 68. A silvery-white solid metal when artificially isolated, natural erbium is always found in chemical combination with other elements. It is a lanthanide, a rare earth element, originally found in the gadolinite mine in Ytterby in Sweden, from which it got its name.\nErbium's principal uses involve its pink-colored Er3+ ions, which have optical fluorescent properties particularly useful in certain laser applications. Erbium-doped glasses or crystals can be used as optical amplification media, where Er3+ ions are optically pumped at around 980 or 1480 nm and then radiate light at 1530 nm in stimulated emission.", 1166 | "source": "https://en.wikipedia.org/wiki/Erbium", 1167 | "category": "Lanthanide", 1168 | "atomic_weight": "167.259(3) u(±)", 1169 | "colors": [ 1170 | 4287349578, 1171 | 4292141399 1172 | ] 1173 | }, 1174 | { 1175 | "number": 100, 1176 | "name": "Fermium", 1177 | "symbol": "Fm", 1178 | "extract": "Fermium is a synthetic element with symbol Fm and atomic number 100. It is an actinide and the heaviest element that can be formed by neutron bombardment of lighter elements, and hence the last element that can be prepared in macroscopic quantities, although pure fermium metal has not yet been prepared. A total of 19 isotopes are known, with 257Fm being the longest-lived with a half-life of 100.5 days.\nIt was discovered in the debris of the first hydrogen bomb explosion in 1952, and named after Enrico Fermi, one of the pioneers of nuclear physics. Its chemistry is typical for the late actinides, with a preponderance of the +3 oxidation state but also an accessible +2 oxidation state.", 1179 | "source": "https://en.wikipedia.org/wiki/Fermium", 1180 | "category": "Actinide", 1181 | "atomic_weight": "[257] (mass number)", 1182 | "colors": [ 1183 | 4279161591, 1184 | 4289920762 1185 | ] 1186 | }, 1187 | null, 1188 | { 1189 | "number": 7, 1190 | "name": "Nitrogen", 1191 | "symbol": "N", 1192 | "extract": "Nitrogen is a chemical element with symbol N and atomic number 7. It was first discovered and isolated by Scottish physician Daniel Rutherford in 1772. Although Carl Wilhelm Scheele and Henry Cavendish had independently done so at about the same time, Rutherford is generally accorded the credit because his work was published first. The name nitrogène was suggested by French chemist Jean-Antoine-Claude Chaptal in 1790, when it was found that nitrogen was present in nitric acid and nitrates. Antoine Lavoisier suggested instead the name azote, from the Greek ἀζωτικός \"no life\", as it is an asphyxiant gas; this name is instead used in many languages, such as French, Russian, Romanian and Turkish, and appears in the English names of some nitrogen compounds such as hydrazine, azides and azo compounds.", 1193 | "source": "https://en.wikipedia.org/wiki/Nitrogen", 1194 | "category": "Reactive Nonmetal", 1195 | "atomic_weight": "14.007 u(±)", 1196 | "colors": [ 1197 | 4283657726, 1198 | 4287535603 1199 | ] 1200 | }, 1201 | { 1202 | "number": 15, 1203 | "name": "Phosphorus", 1204 | "symbol": "P", 1205 | "extract": "Phosphorus is a chemical element with symbol P and atomic number 15. Elemental phosphorus exists in two major forms, white phosphorus and red phosphorus, but because it is highly reactive, phosphorus is never found as a free element on Earth. It has a concentration in the Earth's crust of about one gram per kilogram (compare copper at about 0.06 grams). With few exceptions, minerals containing phosphorus are in the maximally oxidized state as inorganic phosphate rocks.\nElemental phosphorus was first isolated (as white phosphorus) in 1669 and emitted a faint glow when exposed to oxygen – hence the name, taken from Greek mythology, Φωσφόρος meaning \"light-bearer\" (Latin Lucifer), referring to the \"Morning Star\", the planet Venus.", 1206 | "source": "https://en.wikipedia.org/wiki/Phosphorus", 1207 | "category": "Reactive Nonmetal", 1208 | "atomic_weight": "30.973761998(5) u(±)", 1209 | "colors": [ 1210 | 4283657726, 1211 | 4287535603 1212 | ] 1213 | }, 1214 | { 1215 | "number": 33, 1216 | "name": "Arsenic", 1217 | "symbol": "As", 1218 | "extract": "Arsenic is a chemical element with symbol As and atomic number 33. Arsenic occurs in many minerals, usually in combination with sulfur and metals, but also as a pure elemental crystal. Arsenic is a metalloid. It has various allotropes, but only the gray form, which has a metallic appearance, is important to industry.\nThe primary use of arsenic is in alloys of lead (for example, in car batteries and ammunition).", 1219 | "source": "https://en.wikipedia.org/wiki/Arsenic", 1220 | "category": "Metalloid", 1221 | "atomic_weight": "74.921595(6) u(±)", 1222 | "colors": [ 1223 | 4278219519, 1224 | 4278241023 1225 | ] 1226 | }, 1227 | { 1228 | "number": 51, 1229 | "name": "Antimony", 1230 | "symbol": "Sb", 1231 | "extract": "Antimony is a chemical element with symbol Sb (from Latin: stibium) and atomic number 51. A lustrous gray metalloid, it is found in nature mainly as the sulfide mineral stibnite (Sb2S3). Antimony compounds have been known since ancient times and were powdered for use as medicine and cosmetics, often known by the Arabic name, kohl. Metallic antimony was also known, but it was erroneously identified as lead upon its discovery. The earliest known description of the metal in the West was written in 1540 by Vannoccio Biringuccio.", 1232 | "source": "https://en.wikipedia.org/wiki/Antimony", 1233 | "category": "Metalloid", 1234 | "atomic_weight": "121.760(1) u(±)", 1235 | "colors": [ 1236 | 4278219519, 1237 | 4278241023 1238 | ] 1239 | }, 1240 | { 1241 | "number": 83, 1242 | "name": "Bismuth", 1243 | "symbol": "Bi", 1244 | "extract": "Bismuth is a chemical element with symbol Bi and atomic number 83. It is a pentavalent post-transition metal and one of the pnictogens with chemical properties resembling its lighter homologs arsenic and antimony. Elemental bismuth may occur naturally, although its sulfide and oxide form important commercial ores. The free element is 86% as dense as lead. It is a brittle metal with a silvery white color when freshly produced, but surface oxidation can give it a pink tinge.", 1245 | "source": "https://en.wikipedia.org/wiki/Bismuth", 1246 | "category": "Post-transition Metal", 1247 | "atomic_weight": "208.98040(1) u(±)", 1248 | "colors": [ 1249 | 4279343502, 1250 | 4281921405 1251 | ] 1252 | }, 1253 | { 1254 | "number": 115, 1255 | "name": "Moscovium", 1256 | "symbol": "Mc", 1257 | "extract": "Moscovium is a synthetic chemical element with symbol Mc and atomic number 115. It was first synthesized in 2003 by a joint team of Russian and American scientists at the Joint Institute for Nuclear Research (JINR) in Dubna, Russia. In December 2015, it was recognized as one of four new elements by the Joint Working Party of international scientific bodies IUPAC and IUPAP. On 28 November 2016, it was officially named after the Moscow Oblast, in which the JINR is situated.Moscovium is an extremely radioactive element: its most stable known isotope, moscovium-290, has a half-life of only 0.65 seconds. In the periodic table, it is a p-block transactinide element. It is a member of the 7th period and is placed in group 15 as the heaviest pnictogen, although it has not been confirmed to behave as a heavier homologue of the pnictogen bismuth.", 1258 | "source": "https://en.wikipedia.org/wiki/Moscovium", 1259 | "category": "Unknown chemical properties", 1260 | "atomic_weight": "[290] (mass number)", 1261 | "colors": [ 1262 | 4285890458, 1263 | 4292337128 1264 | ] 1265 | }, 1266 | null, 1267 | { 1268 | "number": 69, 1269 | "name": "Thulium", 1270 | "symbol": "Tm", 1271 | "extract": "Thulium is a chemical element with symbol Tm and atomic number 69. It is the thirteenth and third-last element in the lanthanide series. Like the other lanthanides, the most common oxidation state is +3, seen in its oxide, halides and other compounds; because it occurs so late in the series, however, the +2 oxidation state is also stabilized by the nearly full 4f shell that results. In aqueous solution, like compounds of other late lanthanides, soluble thulium compounds form coordination complexes with nine water molecules.\nIn 1879, the Swedish chemist Per Teodor Cleve separated from the rare earth oxide erbia another two previously unknown components, which he called holmia and thulia; these were the oxides of holmium and thulium, respectively.", 1272 | "source": "https://en.wikipedia.org/wiki/Thulium", 1273 | "category": "Lanthanide", 1274 | "atomic_weight": "168.934218(6) u(±)", 1275 | "colors": [ 1276 | 4287349578, 1277 | 4292141399 1278 | ] 1279 | }, 1280 | { 1281 | "number": 101, 1282 | "name": "Mendelevium", 1283 | "symbol": "Md", 1284 | "extract": "Mendelevium is a synthetic element with chemical symbol Md (formerly Mv) and atomic number 101. A metallic radioactive transuranic element in the actinide series, it is the first element that currently cannot be produced in macroscopic quantities through neutron bombardment of lighter elements. It is the third-to-last actinide and the ninth transuranic element. It can only be produced in particle accelerators by bombarding lighter elements with charged particles. A total of sixteen mendelevium isotopes are known, the most stable being 258Md with a half-life of 51 days; nevertheless, the shorter-lived 256Md (half-life 1.17 hours) is most commonly used in chemistry because it can be produced on a larger scale.", 1285 | "source": "https://en.wikipedia.org/wiki/Mendelevium", 1286 | "category": "Actinide", 1287 | "atomic_weight": "[258] (mass number)", 1288 | "colors": [ 1289 | 4279161591, 1290 | 4289920762 1291 | ] 1292 | }, 1293 | null, 1294 | { 1295 | "number": 8, 1296 | "name": "Oxygen", 1297 | "symbol": "O", 1298 | "extract": "Oxygen is the chemical element with the symbol O and atomic number 8. It is a member of the chalcogen group on the periodic table, a highly reactive nonmetal, and an oxidizing agent that readily forms oxides with most elements as well as with other compounds. By mass, oxygen is the third-most abundant element in the universe, after hydrogen and helium. At standard temperature and pressure, two atoms of the element bind to form dioxygen, a colorless and odorless diatomic gas with the formula O2. Diatomic oxygen gas constitutes 20.8% of the Earth's atmosphere.", 1299 | "source": "https://en.wikipedia.org/wiki/Oxygen", 1300 | "category": "Reactive Nonmetal", 1301 | "atomic_weight": "15.999 u(±)", 1302 | "colors": [ 1303 | 4283657726, 1304 | 4287535603 1305 | ] 1306 | }, 1307 | { 1308 | "number": 16, 1309 | "name": "Sulfur", 1310 | "symbol": "S", 1311 | "extract": "Sulfur or sulphur is a chemical element with symbol S and atomic number 16. It is abundant, multivalent, and nonmetallic. Under normal conditions, sulfur atoms form cyclic octatomic molecules with a chemical formula S8. Elemental sulfur is a bright yellow, crystalline solid at room temperature.\nSulfur is the tenth most common element by mass in the universe, and the fifth most common on Earth.", 1312 | "source": "https://en.wikipedia.org/wiki/Sulfur", 1313 | "category": "Reactive Nonmetal", 1314 | "atomic_weight": "32.06 u(±)", 1315 | "colors": [ 1316 | 4283657726, 1317 | 4287535603 1318 | ] 1319 | }, 1320 | { 1321 | "number": 34, 1322 | "name": "Selenium", 1323 | "symbol": "Se", 1324 | "extract": "Selenium is a chemical element with symbol Se and atomic number 34. It is a nonmetal (more rarely considered a metalloid) with properties that are intermediate between the elements above and below in the periodic table, sulfur and tellurium, and also has similarities to arsenic. It rarely occurs in its elemental state or as pure ore compounds in the Earth's crust. Selenium (from Ancient Greek σελήνη (selḗnē) \"Moon\") was discovered in 1817 by Jöns Jacob Berzelius, who noted the similarity of the new element to the previously discovered tellurium (named for the Earth).\nSelenium is found in metal sulfide ores, where it partially replaces the sulfur.", 1325 | "source": "https://en.wikipedia.org/wiki/Selenium", 1326 | "category": "Reactive Nonmetal", 1327 | "atomic_weight": "78.971(8) u(±)", 1328 | "colors": [ 1329 | 4283657726, 1330 | 4287535603 1331 | ] 1332 | }, 1333 | { 1334 | "number": 52, 1335 | "name": "Tellurium", 1336 | "symbol": "Te", 1337 | "extract": "Tellurium is a chemical element with symbol Te and atomic number 52. It is a brittle, mildly toxic, rare, silver-white metalloid. Tellurium is chemically related to selenium and sulfur, all three of which are chalcogens. It is occasionally found in native form as elemental crystals. Tellurium is far more common in the Universe as a whole than on Earth.", 1338 | "source": "https://en.wikipedia.org/wiki/Tellurium", 1339 | "category": "Metalloid", 1340 | "atomic_weight": "127.60(3) u(±)", 1341 | "colors": [ 1342 | 4278219519, 1343 | 4278241023 1344 | ] 1345 | }, 1346 | { 1347 | "number": 84, 1348 | "name": "Polonium", 1349 | "symbol": "Po", 1350 | "extract": "Polonium is a chemical element with symbol Po and atomic number 84. A rare and highly radioactive metal with no stable isotopes, polonium is chemically similar to selenium and tellurium, though its metallic character resembles that of its horizontal neighbors in the periodic table: thallium, lead, and bismuth. Due to the short half-life of all its isotopes, its natural occurrence is limited to tiny traces of the fleeting polonium-210 (with a half-life of 138 days) in uranium ores, as it is the penultimate daughter of natural uranium-238. Though slightly longer-lived isotopes exist, they are much more difficult to produce. Today, polonium is usually produced in milligram quantities by the neutron irradiation of bismuth.", 1351 | "source": "https://en.wikipedia.org/wiki/Polonium", 1352 | "category": "Post-transition Metal", 1353 | "atomic_weight": "[209] (mass number)", 1354 | "colors": [ 1355 | 4279343502, 1356 | 4281921405 1357 | ] 1358 | }, 1359 | { 1360 | "number": 116, 1361 | "name": "Livermorium", 1362 | "symbol": "Lv", 1363 | "extract": "Livermorium is a synthetic chemical element with symbol Lv and has an atomic number of 116. It is an extremely radioactive element that has only been created in the laboratory and has not been observed in nature. The element is named after the Lawrence Livermore National Laboratory in the United States, which collaborated with the Joint Institute for Nuclear Research (JINR) in Dubna, Russia to discover livermorium during experiments made between 2000 and 2006. The name of the laboratory refers to the city of Livermore, California where it is located, which in turn was named after the rancher and landowner Robert Livermore. The name was adopted by IUPAC on May 30, 2012.", 1364 | "source": "https://en.wikipedia.org/wiki/Livermorium", 1365 | "category": "Unknown chemical properties", 1366 | "atomic_weight": "[293] (mass number)", 1367 | "colors": [ 1368 | 4285890458, 1369 | 4292337128 1370 | ] 1371 | }, 1372 | null, 1373 | { 1374 | "number": 70, 1375 | "name": "Ytterbium", 1376 | "symbol": "Yb", 1377 | "extract": "Ytterbium is a chemical element with symbol Yb and atomic number 70. It is the fourteenth and penultimate element in the lanthanide series, which is the basis of the relative stability of its +2 oxidation state. However, like the other lanthanides, its most common oxidation state is +3, as in its oxide, halides, and other compounds. In aqueous solution, like compounds of other late lanthanides, soluble ytterbium compounds form complexes with nine water molecules. Because of its closed-shell electron configuration, its density and melting and boiling points differ significantly from those of most other lanthanides.", 1378 | "source": "https://en.wikipedia.org/wiki/Ytterbium", 1379 | "category": "Lanthanide", 1380 | "atomic_weight": "173.045(10) u(±)", 1381 | "colors": [ 1382 | 4287349578, 1383 | 4292141399 1384 | ] 1385 | }, 1386 | { 1387 | "number": 102, 1388 | "name": "Nobelium", 1389 | "symbol": "No", 1390 | "extract": "Nobelium is a synthetic chemical element with symbol No and atomic number 102. It is named in honor of Alfred Nobel, the inventor of dynamite and benefactor of science. A radioactive metal, it is the tenth transuranic element and is the penultimate member of the actinide series. Like all elements with atomic number over 100, nobelium can only be produced in particle accelerators by bombarding lighter elements with charged particles. A total of twelve nobelium isotopes are known to exist; the most stable is 259No with a half-life of 58 minutes, but the shorter-lived 255No (half-life 3.1 minutes) is most commonly used in chemistry because it can be produced on a larger scale.", 1391 | "source": "https://en.wikipedia.org/wiki/Nobelium", 1392 | "category": "Actinide", 1393 | "atomic_weight": "[259] (mass number)", 1394 | "colors": [ 1395 | 4279161591, 1396 | 4289920762 1397 | ] 1398 | }, 1399 | null, 1400 | { 1401 | "number": 9, 1402 | "name": "Fluorine", 1403 | "symbol": "F", 1404 | "extract": "Fluorine is a chemical element with symbol F and atomic number 9. It is the lightest halogen and exists as a highly toxic pale yellow diatomic gas at standard conditions. As the most electronegative element, it is extremely reactive, as it reacts with almost all other elements, except for helium and neon.\nAmong the elements, fluorine ranks 24th in universal abundance and 13th in terrestrial abundance. Fluorite, the primary mineral source of fluorine which gave the element its name, was first described in 1529; as it was added to metal ores to lower their melting points for smelting, the Latin verb fluo meaning \"flow\" gave the mineral its name.", 1405 | "source": "https://en.wikipedia.org/wiki/Fluorine", 1406 | "category": "Reactive Nonmetal", 1407 | "atomic_weight": "18.998403163(6) u(±)", 1408 | "colors": [ 1409 | 4283657726, 1410 | 4287535603 1411 | ] 1412 | }, 1413 | { 1414 | "number": 17, 1415 | "name": "Chlorine", 1416 | "symbol": "Cl", 1417 | "extract": "Chlorine is a chemical element with symbol Cl and atomic number 17. The second-lightest of the halogens, it appears between fluorine and bromine in the periodic table and its properties are mostly intermediate between them. Chlorine is a yellow-green gas at room temperature. It is an extremely reactive element and a strong oxidising agent: among the elements, it has the highest electron affinity and the third-highest electronegativity, behind only oxygen and fluorine.\nThe most common compound of chlorine, sodium chloride (common salt), has been known since ancient times.", 1418 | "source": "https://en.wikipedia.org/wiki/Chlorine", 1419 | "category": "Reactive Nonmetal", 1420 | "atomic_weight": "35.45 u(±)", 1421 | "colors": [ 1422 | 4283657726, 1423 | 4287535603 1424 | ] 1425 | }, 1426 | { 1427 | "number": 35, 1428 | "name": "Bromine", 1429 | "symbol": "Br", 1430 | "extract": "Bromine is a chemical element with symbol Br and atomic number 35. It is the third-lightest halogen, and is a fuming red-brown liquid at room temperature that evaporates readily to form a similarly coloured gas. Its properties are thus intermediate between those of chlorine and iodine. Isolated independently by two chemists, Carl Jacob Löwig (in 1825) and Antoine Jérôme Balard (in 1826), its name was derived from the Ancient Greek βρῶμος (\"stench\"), referencing its sharp and disagreeable smell.\nElemental bromine is very reactive and thus does not occur free in nature, but in colourless soluble crystalline mineral halide salts, analogous to table salt.", 1431 | "source": "https://en.wikipedia.org/wiki/Bromine", 1432 | "category": "Reactive Nonmetal", 1433 | "atomic_weight": "79.904 u(±)", 1434 | "colors": [ 1435 | 4283657726, 1436 | 4287535603 1437 | ] 1438 | }, 1439 | { 1440 | "number": 53, 1441 | "name": "Iodine", 1442 | "symbol": "I", 1443 | "extract": "Iodine is a chemical element with symbol I and atomic number 53. The heaviest of the stable halogens, it exists as a lustrous, purple-black non-metallic solid at standard conditions that melts to form a deep violet liquid at 114 degrees Celsius, and boils to a violet gas at 184 degrees Celsius. The element was discovered by the French chemist Bernard Courtois in 1811. It was named two years later by Joseph Louis Gay-Lussac from this property, after the Greek ἰώδης \"violet-coloured\".\nIodine occurs in many oxidation states, including iodide (I−), iodate (IO−3), and the various periodate anions.", 1444 | "source": "https://en.wikipedia.org/wiki/Iodine", 1445 | "category": "Reactive Nonmetal", 1446 | "atomic_weight": "126.90447(3) u(±)", 1447 | "colors": [ 1448 | 4283657726, 1449 | 4287535603 1450 | ] 1451 | }, 1452 | { 1453 | "number": 85, 1454 | "name": "Astatine", 1455 | "symbol": "At", 1456 | "extract": "Astatine is a radioactive chemical element with symbol At and atomic number 85. It is the rarest naturally occurring element in the Earth's crust, occurring only as the decay product of various heavier elements. All of astatine's isotopes are short-lived; the most stable is astatine-210, with a half-life of 8.1 hours. A sample of the pure element has never been assembled, because any macroscopic specimen would be immediately vaporized by the heat of its own radioactivity.\nThe bulk properties of astatine are not known with any certainty.", 1457 | "source": "https://en.wikipedia.org/wiki/Astatine", 1458 | "category": "Metalloid", 1459 | "atomic_weight": "[210] (mass number)", 1460 | "colors": [ 1461 | 4278219519, 1462 | 4278241023 1463 | ] 1464 | }, 1465 | { 1466 | "number": 117, 1467 | "name": "Tennessine", 1468 | "symbol": "Ts", 1469 | "extract": "Tennessine is a synthetic chemical element with symbol Ts and atomic number 117. It is the second-heaviest known element and the penultimate element of the 7th period of the periodic table.\nThe discovery of tennessine was officially announced in Dubna, Russia, by a Russian–American collaboration in April 2010, which makes it the most recently discovered element as of 2019. One of its daughter isotopes was created directly in 2011, partially confirming the results of the experiment. The experiment itself was repeated successfully by the same collaboration in 2012 and by a joint German–American team in May 2014.", 1470 | "source": "https://en.wikipedia.org/wiki/Tennessine", 1471 | "category": "Unknown chemical properties", 1472 | "atomic_weight": "[294] (mass number)", 1473 | "colors": [ 1474 | 4285890458, 1475 | 4292337128 1476 | ] 1477 | }, 1478 | null, 1479 | { 1480 | "number": 71, 1481 | "name": "Lutetium", 1482 | "symbol": "Lu", 1483 | "extract": "Lutetium is a chemical element with symbol Lu and atomic number 71. It is a silvery white metal, which resists corrosion in dry air, but not in moist air. Lutetium is the last element in the lanthanide series, and it is traditionally counted among the rare earths. Lutetium is sometimes considered the first element of the 6th-period transition metals, although lanthanum is more often considered as such.\nLutetium was independently discovered in 1907 by French scientist Georges Urbain, Austrian mineralogist Baron Carl Auer von Welsbach, and American chemist Charles James.", 1484 | "source": "https://en.wikipedia.org/wiki/Lutetium", 1485 | "category": "Lanthanide", 1486 | "atomic_weight": "174.9668(1) u(±)", 1487 | "colors": [ 1488 | 4287349578, 1489 | 4292141399 1490 | ] 1491 | }, 1492 | { 1493 | "number": 103, 1494 | "name": "Lawrencium", 1495 | "symbol": "Lr", 1496 | "extract": "Lawrencium is a synthetic chemical element with symbol Lr (formerly Lw) and atomic number 103. It is named in honor of Ernest Lawrence, inventor of the cyclotron, a device that was used to discover many artificial radioactive elements. A radioactive metal, lawrencium is the eleventh transuranic element and is also the final member of the actinide series. Like all elements with atomic number over 100, lawrencium can only be produced in particle accelerators by bombarding lighter elements with charged particles. Twelve isotopes of lawrencium are currently known; the most stable is 266Lr with a half-life of 11 hours, but the shorter-lived 260Lr (half-life 2.7 minutes) is most commonly used in chemistry because it can be produced on a larger scale.", 1497 | "source": "https://en.wikipedia.org/wiki/Lawrencium", 1498 | "category": "Actinide", 1499 | "atomic_weight": "[266] (mass number)", 1500 | "colors": [ 1501 | 4279161591, 1502 | 4289920762 1503 | ] 1504 | }, 1505 | { 1506 | "number": 2, 1507 | "name": "Helium", 1508 | "symbol": "He", 1509 | "extract": "Helium (from Greek: ἥλιος, translit. Helios, lit. 'Sun') is a chemical element with symbol He and atomic number 2. It is a colorless, odorless, tasteless, non-toxic, inert, monatomic gas, the first in the noble gas group in the periodic table. Its boiling point is the lowest among all the elements.", 1510 | "source": "https://en.wikipedia.org/wiki/Helium", 1511 | "category": "Noble Gas", 1512 | "atomic_weight": "4.002602(2) u(±)", 1513 | "colors": [ 1514 | 4288124656, 1515 | 4294690772 1516 | ] 1517 | }, 1518 | { 1519 | "number": 10, 1520 | "name": "Neon", 1521 | "symbol": "Ne", 1522 | "extract": "Neon is a chemical element with symbol Ne and atomic number 10. It is a noble gas. Neon is a colorless, odorless, inert monatomic gas under standard conditions, with about two-thirds the density of air. It was discovered (along with krypton and xenon) in 1898 as one of the three residual rare inert elements remaining in dry air, after nitrogen, oxygen, argon and carbon dioxide were removed. Neon was the second of these three rare gases to be discovered and was immediately recognized as a new element from its bright red emission spectrum.", 1523 | "source": "https://en.wikipedia.org/wiki/Neon", 1524 | "category": "Noble Gas", 1525 | "atomic_weight": "20.1797(6) u(±)", 1526 | "colors": [ 1527 | 4288124656, 1528 | 4294690772 1529 | ] 1530 | }, 1531 | { 1532 | "number": 18, 1533 | "name": "Argon", 1534 | "symbol": "Ar", 1535 | "extract": "Argon is a chemical element with symbol Ar and atomic number 18. It is in group 18 of the periodic table and is a noble gas. Argon is the third-most abundant gas in the Earth's atmosphere, at 0.934% (9340 ppmv). It is more than twice as abundant as water vapor (which averages about 4000 ppmv, but varies greatly), 23 times as abundant as carbon dioxide (400 ppmv), and more than 500 times as abundant as neon (18 ppmv). Argon is the most abundant noble gas in Earth's crust, comprising 0.00015% of the crust.", 1536 | "source": "https://en.wikipedia.org/wiki/Argon", 1537 | "category": "Noble Gas", 1538 | "atomic_weight": "39.948 u(±)", 1539 | "colors": [ 1540 | 4288124656, 1541 | 4294690772 1542 | ] 1543 | }, 1544 | { 1545 | "number": 36, 1546 | "name": "Krypton", 1547 | "symbol": "Kr", 1548 | "extract": "Krypton (from Ancient Greek: κρυπτός, translit. kryptos \"the hidden one\") is a chemical element with symbol Kr and atomic number 36. It is a member of group 18 (noble gases) elements. A colorless, odorless, tasteless noble gas, krypton occurs in trace amounts in the atmosphere and is often used with other rare gases in fluorescent lamps. With rare exceptions, krypton is chemically inert.", 1549 | "source": "https://en.wikipedia.org/wiki/Krypton", 1550 | "category": "Noble Gas", 1551 | "atomic_weight": "83.798(2) u(±)", 1552 | "colors": [ 1553 | 4288124656, 1554 | 4294690772 1555 | ] 1556 | }, 1557 | { 1558 | "number": 54, 1559 | "name": "Xenon", 1560 | "symbol": "Xe", 1561 | "extract": "Xenon is a chemical element with symbol Xe and atomic number 54. It is a colorless, dense, odorless noble gas found in the Earth's atmosphere in trace amounts. Although generally unreactive, xenon can undergo a few chemical reactions such as the formation of xenon hexafluoroplatinate, the first noble gas compound to be synthesized.Xenon is used in flash lamps and arc lamps, and as a general anesthetic. The first excimer laser design used a xenon dimer molecule (Xe2) as the lasing medium, and the earliest laser designs used xenon flash lamps as pumps. Xenon is used to search for hypothetical weakly interacting massive particles and as the propellant for ion thrusters in spacecraft.Naturally occurring xenon consists of eight stable isotopes.", 1562 | "source": "https://en.wikipedia.org/wiki/Xenon", 1563 | "category": "Noble Gas", 1564 | "atomic_weight": "131.293(6) u(±)", 1565 | "colors": [ 1566 | 4288124656, 1567 | 4294690772 1568 | ] 1569 | }, 1570 | { 1571 | "number": 86, 1572 | "name": "Radon", 1573 | "symbol": "Rn", 1574 | "extract": "Radon is a chemical element with symbol Rn and atomic number 86. It is a radioactive, colorless, odorless, tasteless noble gas. It occurs naturally in minute quantities as an intermediate step in the normal radioactive decay chains through which thorium and uranium slowly decay into lead and various other short-lived radioactive elements; radon itself is the immediate decay product of radium. Its most stable isotope, 222Rn, has a half-life of only 3.8 days, making radon one of the rarest elements since it decays away so quickly. However, since thorium and uranium are two of the most common radioactive elements on Earth, and they have three isotopes with very long half-lives, on the order of several billions of years, radon will be present on Earth long into the future in spite of its short half-life as it is continually being generated.", 1575 | "source": "https://en.wikipedia.org/wiki/Radon", 1576 | "category": "Noble Gas", 1577 | "atomic_weight": "[222] (mass number)", 1578 | "colors": [ 1579 | 4288124656, 1580 | 4294690772 1581 | ] 1582 | }, 1583 | { 1584 | "number": 118, 1585 | "name": "Oganesson", 1586 | "symbol": "Og", 1587 | "extract": "Oganesson is a synthetic chemical element with symbol Og and atomic number 118. It was first synthesized in 2002 at the Joint Institute for Nuclear Research (JINR) in Dubna, near Moscow in Russia, by a joint team of Russian and American scientists. In December 2015, it was recognized as one of four new elements by the Joint Working Party of the international scientific bodies IUPAC and IUPAP. It was formally named on 28 November 2016. The name is in line with the tradition of honoring a scientist, in this case the nuclear physicist Yuri Oganessian, who has played a leading role in the discovery of the heaviest elements in the periodic table. It is one of only two elements named after a person who was alive at the time of naming, the other being seaborgium; it is also the only element whose namesake is alive today.Oganesson has the highest atomic number and highest atomic mass of all known elements.", 1588 | "source": "https://en.wikipedia.org/wiki/Oganesson", 1589 | "category": "Unknown chemical properties", 1590 | "atomic_weight": "[294] (mass number)", 1591 | "colors": [ 1592 | 4285890458, 1593 | 4292337128 1594 | ] 1595 | }, 1596 | null, 1597 | null, 1598 | null 1599 | ] 1600 | } -------------------------------------------------------------------------------- /assets/fonts/RobotoCondensed-Light.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brianrobles204/Elements-App/1624dee83066463d58251aa43f8afbbfa158cefe/assets/fonts/RobotoCondensed-Light.ttf -------------------------------------------------------------------------------- /assets/fonts/RobotoCondensed-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brianrobles204/Elements-App/1624dee83066463d58251aa43f8afbbfa158cefe/assets/fonts/RobotoCondensed-Regular.ttf -------------------------------------------------------------------------------- /assets/fonts/ShareTechMono-Regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brianrobles204/Elements-App/1624dee83066463d58251aa43f8afbbfa158cefe/assets/fonts/ShareTechMono-Regular.ttf -------------------------------------------------------------------------------- /assets/launcher_icons/app_icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brianrobles204/Elements-App/1624dee83066463d58251aa43f8afbbfa158cefe/assets/launcher_icons/app_icon.png -------------------------------------------------------------------------------- /assets/launcher_icons/launcher_adaptive_background.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brianrobles204/Elements-App/1624dee83066463d58251aa43f8afbbfa158cefe/assets/launcher_icons/launcher_adaptive_background.png -------------------------------------------------------------------------------- /assets/launcher_icons/launcher_adaptive_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brianrobles204/Elements-App/1624dee83066463d58251aa43f8afbbfa158cefe/assets/launcher_icons/launcher_adaptive_foreground.png -------------------------------------------------------------------------------- /assets/launcher_icons/launcher_android.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brianrobles204/Elements-App/1624dee83066463d58251aa43f8afbbfa158cefe/assets/launcher_icons/launcher_android.png -------------------------------------------------------------------------------- /assets/launcher_icons/launcher_ios.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brianrobles204/Elements-App/1624dee83066463d58251aa43f8afbbfa158cefe/assets/launcher_icons/launcher_ios.png -------------------------------------------------------------------------------- /assets/screenshots/screencast.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brianrobles204/Elements-App/1624dee83066463d58251aa43f8afbbfa158cefe/assets/screenshots/screencast.gif -------------------------------------------------------------------------------- /assets/screenshots/screenshot_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brianrobles204/Elements-App/1624dee83066463d58251aa43f8afbbfa158cefe/assets/screenshots/screenshot_1.png -------------------------------------------------------------------------------- /assets/screenshots/screenshot_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brianrobles204/Elements-App/1624dee83066463d58251aa43f8afbbfa158cefe/assets/screenshots/screenshot_2.png -------------------------------------------------------------------------------- /assets/screenshots/screenshot_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brianrobles204/Elements-App/1624dee83066463d58251aa43f8afbbfa158cefe/assets/screenshots/screenshot_3.png -------------------------------------------------------------------------------- /assets/screenshots/screenshot_4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brianrobles204/Elements-App/1624dee83066463d58251aa43f8afbbfa158cefe/assets/screenshots/screenshot_4.png -------------------------------------------------------------------------------- /buildJson.dart: -------------------------------------------------------------------------------- 1 | import 'dart:convert'; 2 | import 'dart:io'; 3 | 4 | import 'package:http/http.dart' as http; 5 | import 'package:meta/meta.dart'; 6 | 7 | 8 | const kRowCount = 10; 9 | const kColCount = 18; 10 | 11 | 12 | /// Dart script to generate the elementsGrid.json file 13 | /// 14 | /// Each element is created from the elementsList. Atomic weight, category, 15 | /// and app-specific colors are assigned based on the respective mappings. 16 | /// Atomic weights are based on published IUPAC figures, while a short element 17 | /// extract is sourced from Wikipedia. 18 | /// 19 | /// Elements are arranged in a List representing the usual 10 x 18 grid of the 20 | /// periodic table, in column-major ordering. Empty spaces are represented with nulls. 21 | main() async { 22 | 23 | var extractMap = await getExtractMap(); 24 | 25 | var gridList = List.filled(kRowCount * kColCount, null); 26 | for (var element in kElementsList) { 27 | gridList[(element.x) * kRowCount + (element.y)] = element; 28 | } 29 | 30 | var outputFile = File('assets/elementsGrid.json'); 31 | var elements = { 32 | 'elements' : gridList 33 | .map((element) => element?.toJson(extract: extractMap[element.title])) 34 | .toList(), 35 | }; 36 | 37 | var outputSink = outputFile.openWrite() 38 | ..write(JsonEncoder.withIndent(' ').convert(elements)); 39 | await outputSink.flush(); 40 | await outputSink.close(); 41 | 42 | print('Wrote to output file ${outputFile.path}'); 43 | } 44 | 45 | 46 | Future> getExtractMap() async { 47 | var extractsMap = {}; 48 | var count = 20; 49 | 50 | Iterable remainingElements = List.from(kElementsList); 51 | 52 | do { 53 | var extractElements = remainingElements.take(count); 54 | remainingElements = remainingElements.skip(count); 55 | 56 | print('Obtaining extracts for ' 57 | '${extractElements.first.symbol} - ${extractElements.last.symbol}'); 58 | 59 | var response = await http.get(getUrl(extractElements)); 60 | var pages = (jsonDecode(response.body)['query']['pages'] as List) 61 | .map((json) => Page.fromJson(json)); 62 | 63 | for (var page in pages) { 64 | extractsMap[page.title] = page.extract; 65 | } 66 | 67 | await Future.delayed(Duration(milliseconds: 500)); // ample rate limiting 68 | } while (remainingElements.isNotEmpty); 69 | 70 | return extractsMap; 71 | } 72 | 73 | Uri getUrl(Iterable elements) { 74 | return Uri.https('en.wikipedia.org', '/w/api.php', { 75 | 'action' : 'query', 76 | 'prop' : 'extracts', 77 | 'exintro' : 'true', 78 | 'exsentences' : '5', 79 | 'explaintext' : 'true', 80 | 'format' : 'json', 81 | 'formatversion' : '2', 82 | 'titles' : elements.map((element) => element.title).join('|'), 83 | }); 84 | } 85 | 86 | 87 | /// Class representing the categories of the chemical elements. 88 | /// 89 | /// Elements are categorized based on metallic classification. 90 | /// This class is enum-like, but with a corresponding label per category. 91 | class Category { 92 | 93 | const Category._(this.label); 94 | 95 | final String label; 96 | 97 | static List get values => [ 98 | alkaliMetal, alkalineEarthMetal, lanthanide, actinide, transitionMetal, 99 | postTransitionMetal, metalloid, reactiveNonmetal, nobleGas, unknown, 100 | ]; 101 | 102 | static const alkaliMetal = Category._('Alkali Metal'); 103 | static const alkalineEarthMetal = Category._('Alkaline Earth Metal'); 104 | static const lanthanide = Category._('Lanthanide'); 105 | static const actinide = Category._('Actinide'); 106 | static const transitionMetal = Category._('Transition Metal'); 107 | static const postTransitionMetal = Category._('Post-transition Metal'); 108 | static const metalloid = Category._('Metalloid'); 109 | static const reactiveNonmetal = Category._('Reactive Nonmetal'); 110 | static const nobleGas = Category._('Noble Gas'); 111 | static const unknown = Category._('Unknown chemical properties'); 112 | } 113 | 114 | /// Class representing each chemical element within the periodic table. 115 | /// 116 | /// Each element has an atomic number, symbol, name, and position within the 117 | /// periodic table grid. The element can be serialized to JSON. Certain 118 | /// properties are populated based on mappings, but the extract field must be 119 | /// provided when serializing. 120 | class Element { 121 | 122 | const Element(this.number, this.symbol, this.name, 123 | { @required this.x, @required this.y }); 124 | 125 | final String name, symbol; 126 | final int number, x, y; 127 | 128 | String get source => 'https://en.wikipedia.org/wiki/$title'; 129 | Category get category => Category.values 130 | .firstWhere((category) => kCategoryMap[category].contains(symbol)); 131 | String get atomicWeight => kAtomicWeightMap[symbol]; 132 | List get colors => kColorMap[category]; 133 | 134 | String get title => kTitleMap[name] ?? name; 135 | 136 | Map toJson({ @required String extract }) { 137 | assert(extract != null); 138 | 139 | var sourceJson = source; 140 | assert(sourceJson != null); 141 | 142 | var categoryJson = category?.label; 143 | assert(categoryJson != null); 144 | 145 | var atomicWeightJson = atomicWeight; 146 | assert(atomicWeightJson != null); 147 | 148 | var colorsJson = colors; 149 | assert(colorsJson != null); 150 | 151 | return { 152 | 'number' : number, 153 | 'name' : name, 154 | 'symbol' : symbol, 155 | 'extract' : extract, 156 | 'source' : sourceJson, 157 | 'category' : categoryJson, 158 | 'atomic_weight' : atomicWeightJson, 159 | 'colors' : colorsJson, 160 | }; 161 | } 162 | } 163 | 164 | 165 | /// Page response object from Wikipedia queries. 166 | class Page { 167 | 168 | Page.fromJson(Map json) 169 | : pageId = json['pageid'], 170 | title = json['title'], 171 | extract = json['extract']; 172 | 173 | final int pageId; 174 | final String title, extract; 175 | } 176 | 177 | 178 | /// Conventional categorization by metallic classification 179 | const kCategoryMap = { 180 | Category.alkaliMetal : [ 'Li', 'Na', 'K', 'Rb', 'Cs', 'Fr' ], 181 | Category.alkalineEarthMetal : [ 'Be', 'Mg', 'Ca', 'Sr', 'Ba', 'Ra' ], 182 | Category.lanthanide : [ 'La', 'Ce', 'Pr', 'Nd', 'Pm', 'Sm', 'Eu', 183 | 'Gd', 'Tb', 'Dy', 'Ho', 'Er', 'Tm', 'Yb', 'Lu' ], 184 | Category.actinide : [ 'Ac', 'Th', 'Pa', 'U', 'Np', 'Pu', 'Am', 'Cm', 185 | 'Bk', 'Cf', 'Es', 'Fm', 'Md', 'No', 'Lr', ], 186 | Category.transitionMetal : [ 'Sc', 'Ti', 'V', 'Cr', 'Mn', 'Fe', 'Co', 'Ni', 187 | 'Cu', 'Y', 'Zr', 'Nb', 'Mo', 'Tc', 'Ru', 'Rh', 188 | 'Pd', 'Ag', 'Hf', 'Ta', 'W', 'Re', 'Os', 'Ir', 189 | 'Pt', 'Au', 'Rf', 'Db', 'Sg', 'Bh', 'Hs' ], 190 | Category.postTransitionMetal : [ 'Al', 'Zn', 'Ga', 'Cd', 'In', 'Sn', 'Hg', 'Tl', 191 | 'Pb', 'Bi', 'Po', 'Cn' ], 192 | Category.metalloid : [ 'B', 'Si', 'Ge', 'As', 'Sb', 'Te', 'At' ], 193 | Category.reactiveNonmetal : [ 'H', 'C', 'N', 'O', 'F', 'P', 'S', 'Cl', 'Se', 'Br', 'I' ], 194 | Category.nobleGas : [ 'He', 'Ne', 'Ar', 'Kr', 'Xe', 'Rn' ], 195 | Category.unknown : [ 'Mt', 'Ds', 'Rg', 'Nh', 'Fl', 'Mc', 'Lv', 'Ts', 'Og' ], 196 | }; 197 | 198 | /// App-specific map of colors per category 199 | const kColorMap = { 200 | Category.alkaliMetal : [ 0xFFD32F2F, 0xFFFF77A9 ], 201 | Category.alkalineEarthMetal : [ 0xFFF46B45, 0xFFEEA849 ], 202 | Category.lanthanide : [ 0xFF8BC34A, 0xFFD4E157 ], 203 | Category.actinide : [ 0xFF0ED2F7, 0xFFB2FEFA ], 204 | Category.transitionMetal : [ 0xFFFFCA28, 0xFFFFF263 ], 205 | Category.postTransitionMetal : [ 0xFF11998E, 0xFF38EF7D ], 206 | Category.metalloid : [ 0xFF0072FF, 0xFF00C6FF ], 207 | Category.reactiveNonmetal : [ 0xFF536DFE, 0xFF8E99F3 ], 208 | Category.nobleGas : [ 0xFF9796F0, 0xFFFBC7D4 ], 209 | Category.unknown : [ 0xFF757F9A, 0xFFD7DDE8 ], 210 | }; 211 | 212 | /// Conventional atomic weights as published by the IUPAC 213 | /// Values lifted from https://en.wikipedia.org/wiki/List_of_chemical_elements 214 | const kAtomicWeightMap = { 215 | 'H' : '1.008 u(±)', 216 | 'He' : '4.002602(2) u(±)', 217 | 'Li' : '6.94 u(±)', 218 | 'Be' : '9.0121831(5) u(±)', 219 | 'B' : '10.81 u(±)', 220 | 'C' : '12.011 u(±)', 221 | 'N' : '14.007 u(±)', 222 | 'O' : '15.999 u(±)', 223 | 'F' : '18.998403163(6) u(±)', 224 | 'Ne' : '20.1797(6) u(±)', 225 | 'Na' : '22.98976928(2) u(±)', 226 | 'Mg' : '24.305 u(±)', 227 | 'Al' : '26.9815384(3) u(±)', 228 | 'Si' : '28.085 u(±)', 229 | 'P' : '30.973761998(5) u(±)', 230 | 'S' : '32.06 u(±)', 231 | 'Cl' : '35.45 u(±)', 232 | 'Ar' : '39.948 u(±)', 233 | 'K' : '39.0983(1) u(±)', 234 | 'Ca' : '40.078(4) u(±)', 235 | 'Sc' : '44.955908(5) u(±)', 236 | 'Ti' : '47.867(1) u(±)', 237 | 'V' : '50.9415(1) u(±)', 238 | 'Cr' : '51.9961(6) u(±)', 239 | 'Mn' : '54.938043(2) u(±)', 240 | 'Fe' : '55.845(2) u(±)', 241 | 'Co' : '58.933194(3) u(±)', 242 | 'Ni' : '58.6934(4) u(±)', 243 | 'Cu' : '63.546(3) u(±)', 244 | 'Zn' : '65.38(2) u(±)', 245 | 'Ga' : '69.723(1) u(±)', 246 | 'Ge' : '72.630(8) u(±)', 247 | 'As' : '74.921595(6) u(±)', 248 | 'Se' : '78.971(8) u(±)', 249 | 'Br' : '79.904 u(±)', 250 | 'Kr' : '83.798(2) u(±)', 251 | 'Rb' : '85.4678(3) u(±)', 252 | 'Sr' : '87.62(1) u(±)', 253 | 'Y' : '88.90584(1) u(±)', 254 | 'Zr' : '91.224(2) u(±)', 255 | 'Nb' : '92.90637(1) u(±)', 256 | 'Mo' : '95.95(1) u(±)', 257 | 'Ru' : '101.07(2) u(±)', 258 | 'Rh' : '102.90549(2) u(±)', 259 | 'Pd' : '106.42(1) u(±)', 260 | 'Ag' : '107.8682(2) u(±)', 261 | 'Cd' : '112.414(4) u(±)', 262 | 'In' : '114.818(1) u(±)', 263 | 'Sn' : '118.710(7) u(±)', 264 | 'Sb' : '121.760(1) u(±)', 265 | 'Te' : '127.60(3) u(±)', 266 | 'I' : '126.90447(3) u(±)', 267 | 'Xe' : '131.293(6) u(±)', 268 | 'Cs' : '132.90545196(6) u(±)', 269 | 'Ba' : '137.327(7) u(±)', 270 | 'La' : '138.90547(7) u(±)', 271 | 'Ce' : '140.116(1) u(±)', 272 | 'Pr' : '140.90766(1) u(±)', 273 | 'Nd' : '144.242(3) u(±)', 274 | 'Sm' : '150.36(2) u(±)', 275 | 'Eu' : '151.964(1) u(±)', 276 | 'Gd' : '157.25(3) u(±)', 277 | 'Tb' : '158.925354(8) u(±)', 278 | 'Dy' : '162.500(1) u(±)', 279 | 'Ho' : '164.930328(7) u(±)', 280 | 'Er' : '167.259(3) u(±)', 281 | 'Tm' : '168.934218(6) u(±)', 282 | 'Yb' : '173.045(10) u(±)', 283 | 'Lu' : '174.9668(1) u(±)', 284 | 'Hf' : '178.49(2) u(±)', 285 | 'Ta' : '180.94788(2) u(±)', 286 | 'W' : '183.84(1) u(±)', 287 | 'Re' : '186.207(1) u(±)', 288 | 'Os' : '190.23(3) u(±)', 289 | 'Ir' : '192.217(2) u(±)', 290 | 'Pt' : '195.084(9) u(±)', 291 | 'Au' : '196.966570(4) u(±)', 292 | 'Hg' : '200.592(3) u(±)', 293 | 'Tl' : '204.38 u(±)', 294 | 'Pb' : '207.2(1) u(±)', 295 | 'Bi' : '208.98040(1) u(±)', 296 | 'Th' : '232.0377(4) u(±)', 297 | 'Pa' : '231.03588(1) u(±)', 298 | 'U' : '238.02891(3) u(±)', 299 | 300 | // No atomic weight available due to instability. 301 | // Mass number of the most stable isotope is provided instead. 302 | 'Tc' : '[98] (mass number)', 303 | 'Pm' : '[145] (mass number)', 304 | 'Po' : '[209] (mass number)', 305 | 'At' : '[210] (mass number)', 306 | 'Rn' : '[222] (mass number)', 307 | 'Fr' : '[223] (mass number)', 308 | 'Ra' : '[226] (mass number)', 309 | 'Ac' : '[227] (mass number)', 310 | 'Np' : '[237] (mass number)', 311 | 'Pu' : '[244] (mass number)', 312 | 'Am' : '[243] (mass number)', 313 | 'Cm' : '[247] (mass number)', 314 | 'Bk' : '[247] (mass number)', 315 | 'Cf' : '[251] (mass number)', 316 | 'Es' : '[252] (mass number)', 317 | 'Fm' : '[257] (mass number)', 318 | 'Md' : '[258] (mass number)', 319 | 'No' : '[259] (mass number)', 320 | 'Lr' : '[266] (mass number)', 321 | 'Rf' : '[267] (mass number)', 322 | 'Db' : '[268] (mass number)', 323 | 'Sg' : '[269] (mass number)', 324 | 'Bh' : '[270] (mass number)', 325 | 'Hs' : '[270] (mass number)', 326 | 'Mt' : '[278] (mass number)', 327 | 'Ds' : '[281] (mass number)', 328 | 'Rg' : '[282] (mass number)', 329 | 'Cn' : '[285] (mass number)', 330 | 'Nh' : '[286] (mass number)', 331 | 'Fl' : '[289] (mass number)', 332 | 'Mc' : '[290] (mass number)', 333 | 'Lv' : '[293] (mass number)', 334 | 'Ts' : '[294] (mass number)', 335 | 'Og' : '[294] (mass number)', 336 | }; 337 | 338 | /// Mapping for element names to Wikipedia titles. 339 | /// If no mapping is provided, the element name itself is a suitable Wikipedia title. 340 | const kTitleMap = { 341 | 'Mercury' : 'Mercury (element)', 342 | }; 343 | 344 | 345 | /// Actual list of elements and their corresponding mapping in the periodic table grid. 346 | const kElementsList = [ 347 | Element(1, 'H', 'Hydrogen', x : 0, y: 0,), 348 | Element(2, 'He', 'Helium', x : 17, y: 0,), 349 | Element(3, 'Li', 'Lithium', x : 0, y: 1,), 350 | Element(4, 'Be', 'Beryllium', x : 1, y: 1,), 351 | Element(5, 'B', 'Boron', x : 12, y: 1,), 352 | Element(6, 'C', 'Carbon', x : 13, y: 1,), 353 | Element(7, 'N', 'Nitrogen', x : 14, y: 1,), 354 | Element(8, 'O', 'Oxygen', x : 15, y: 1,), 355 | Element(9, 'F', 'Fluorine', x : 16, y: 1,), 356 | Element(10, 'Ne', 'Neon', x : 17, y: 1,), 357 | Element(11, 'Na', 'Sodium', x : 0, y: 2,), 358 | Element(12, 'Mg', 'Magnesium', x : 1, y: 2,), 359 | Element(13, 'Al', 'Aluminium', x : 12, y: 2,), 360 | Element(14, 'Si', 'Silicon', x : 13, y: 2,), 361 | Element(15, 'P', 'Phosphorus', x : 14, y: 2,), 362 | Element(16, 'S', 'Sulfur', x : 15, y: 2,), 363 | Element(17, 'Cl', 'Chlorine', x : 16, y: 2,), 364 | Element(18, 'Ar', 'Argon', x : 17, y: 2,), 365 | Element(19, 'K', 'Potassium', x : 0, y: 3,), 366 | Element(20, 'Ca', 'Calcium', x : 1, y: 3,), 367 | Element(21, 'Sc', 'Scandium', x : 2, y: 3,), 368 | Element(22, 'Ti', 'Titanium', x : 3, y: 3,), 369 | Element(23, 'V', 'Vanadium', x : 4, y: 3,), 370 | Element(24, 'Cr', 'Chromium', x : 5, y: 3,), 371 | Element(25, 'Mn', 'Manganese', x : 6, y: 3,), 372 | Element(26, 'Fe', 'Iron', x : 7, y: 3,), 373 | Element(27, 'Co', 'Cobalt', x : 8, y: 3,), 374 | Element(28, 'Ni', 'Nickel', x : 9, y: 3,), 375 | Element(29, 'Cu', 'Copper', x : 10, y: 3,), 376 | Element(30, 'Zn', 'Zinc', x : 11, y: 3,), 377 | Element(31, 'Ga', 'Gallium', x : 12, y: 3,), 378 | Element(32, 'Ge', 'Germanium', x : 13, y: 3,), 379 | Element(33, 'As', 'Arsenic', x : 14, y: 3,), 380 | Element(34, 'Se', 'Selenium', x : 15, y: 3,), 381 | Element(35, 'Br', 'Bromine', x : 16, y: 3,), 382 | Element(36, 'Kr', 'Krypton', x : 17, y: 3,), 383 | Element(37, 'Rb', 'Rubidium', x : 0, y: 4,), 384 | Element(38, 'Sr', 'Strontium', x : 1, y: 4,), 385 | Element(39, 'Y', 'Yttrium', x : 2, y: 4,), 386 | Element(40, 'Zr', 'Zirconium', x : 3, y: 4,), 387 | Element(41, 'Nb', 'Niobium', x : 4, y: 4,), 388 | Element(42, 'Mo', 'Molybdenum', x : 5, y: 4,), 389 | Element(43, 'Tc', 'Technetium', x : 6, y: 4,), 390 | Element(44, 'Ru', 'Ruthenium', x : 7, y: 4,), 391 | Element(45, 'Rh', 'Rhodium', x : 8, y: 4,), 392 | Element(46, 'Pd', 'Palladium', x : 9, y: 4,), 393 | Element(47, 'Ag', 'Silver', x : 10, y: 4,), 394 | Element(48, 'Cd', 'Cadmium', x : 11, y: 4,), 395 | Element(49, 'In', 'Indium', x : 12, y: 4,), 396 | Element(50, 'Sn', 'Tin', x : 13, y: 4,), 397 | Element(51, 'Sb', 'Antimony', x : 14, y: 4,), 398 | Element(52, 'Te', 'Tellurium', x : 15, y: 4,), 399 | Element(53, 'I', 'Iodine', x : 16, y: 4,), 400 | Element(54, 'Xe', 'Xenon', x : 17, y: 4,), 401 | Element(55, 'Cs', 'Caesium', x : 0, y: 5,), 402 | Element(56, 'Ba', 'Barium', x : 1, y: 5,), 403 | Element(57, 'La', 'Lanthanum', x : 2, y: 8,), 404 | Element(58, 'Ce', 'Cerium', x : 3, y: 8,), 405 | Element(59, 'Pr', 'Praseodymium', x : 4, y: 8,), 406 | Element(60, 'Nd', 'Neodymium', x : 5, y: 8,), 407 | Element(61, 'Pm', 'Promethium', x : 6, y: 8,), 408 | Element(62, 'Sm', 'Samarium', x : 7, y: 8,), 409 | Element(63, 'Eu', 'Europium', x : 8, y: 8,), 410 | Element(64, 'Gd', 'Gadolinium', x : 9, y: 8,), 411 | Element(65, 'Tb', 'Terbium', x : 10, y: 8,), 412 | Element(66, 'Dy', 'Dysprosium', x : 11, y: 8,), 413 | Element(67, 'Ho', 'Holmium', x : 12, y: 8,), 414 | Element(68, 'Er', 'Erbium', x : 13, y: 8,), 415 | Element(69, 'Tm', 'Thulium', x : 14, y: 8,), 416 | Element(70, 'Yb', 'Ytterbium', x : 15, y: 8,), 417 | Element(71, 'Lu', 'Lutetium', x : 16, y: 8,), 418 | Element(72, 'Hf', 'Hafnium', x : 3, y: 5,), 419 | Element(73, 'Ta', 'Tantalum', x : 4, y: 5,), 420 | Element(74, 'W', 'Tungsten', x : 5, y: 5,), 421 | Element(75, 'Re', 'Rhenium', x : 6, y: 5,), 422 | Element(76, 'Os', 'Osmium', x : 7, y: 5,), 423 | Element(77, 'Ir', 'Iridium', x : 8, y: 5,), 424 | Element(78, 'Pt', 'Platinum', x : 9, y: 5,), 425 | Element(79, 'Au', 'Gold', x : 10, y: 5,), 426 | Element(80, 'Hg', 'Mercury', x : 11, y: 5,), 427 | Element(81, 'Tl', 'Thallium', x : 12, y: 5,), 428 | Element(82, 'Pb', 'Lead', x : 13, y: 5,), 429 | Element(83, 'Bi', 'Bismuth', x : 14, y: 5,), 430 | Element(84, 'Po', 'Polonium', x : 15, y: 5,), 431 | Element(85, 'At', 'Astatine', x : 16, y: 5,), 432 | Element(86, 'Rn', 'Radon', x : 17, y: 5,), 433 | Element(87, 'Fr', 'Francium', x : 0, y: 6,), 434 | Element(88, 'Ra', 'Radium', x : 1, y: 6,), 435 | Element(89, 'Ac', 'Actinium', x : 2, y: 9,), 436 | Element(90, 'Th', 'Thorium', x : 3, y: 9,), 437 | Element(91, 'Pa', 'Protactinium', x : 4, y: 9,), 438 | Element(92, 'U', 'Uranium', x : 5, y: 9,), 439 | Element(93, 'Np', 'Neptunium', x : 6, y: 9,), 440 | Element(94, 'Pu', 'Plutonium', x : 7, y: 9,), 441 | Element(95, 'Am', 'Americium', x : 8, y: 9,), 442 | Element(96, 'Cm', 'Curium', x : 9, y: 9,), 443 | Element(97, 'Bk', 'Berkelium', x : 10, y: 9,), 444 | Element(98, 'Cf', 'Californium', x : 11, y: 9,), 445 | Element(99, 'Es', 'Einsteinium', x : 12, y: 9,), 446 | Element(100, 'Fm', 'Fermium', x : 13, y: 9,), 447 | Element(101, 'Md', 'Mendelevium', x : 14, y: 9,), 448 | Element(102, 'No', 'Nobelium', x : 15, y: 9,), 449 | Element(103, 'Lr', 'Lawrencium', x : 16, y: 9,), 450 | Element(104, 'Rf', 'Rutherfordium', x : 3, y: 6,), 451 | Element(105, 'Db', 'Dubnium', x : 4, y: 6,), 452 | Element(106, 'Sg', 'Seaborgium', x : 5, y: 6,), 453 | Element(107, 'Bh', 'Bohrium', x : 6, y: 6,), 454 | Element(108, 'Hs', 'Hassium', x : 7, y: 6,), 455 | Element(109, 'Mt', 'Meitnerium', x : 8, y: 6,), 456 | Element(110, 'Ds', 'Darmstadtium', x : 9, y: 6,), 457 | Element(111, 'Rg', 'Roentgenium', x : 10, y: 6,), 458 | Element(112, 'Cn', 'Copernicium', x : 11, y: 6,), 459 | Element(113, 'Nh', 'Nihonium', x : 12, y: 6,), 460 | Element(114, 'Fl', 'Flerovium', x : 13, y: 6,), 461 | Element(115, 'Mc', 'Moscovium', x : 14, y: 6,), 462 | Element(116, 'Lv', 'Livermorium', x : 15, y: 6,), 463 | Element(117, 'Ts', 'Tennessine', x : 16, y: 6,), 464 | Element(118, 'Og', 'Oganesson', x : 17, y: 6,), 465 | ]; -------------------------------------------------------------------------------- /ios/Flutter/AppFrameworkInfo.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | App 9 | CFBundleIdentifier 10 | io.flutter.flutter.app 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | App 15 | CFBundlePackageType 16 | FMWK 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | 1.0 23 | MinimumOSVersion 24 | 8.0 25 | 26 | 27 | -------------------------------------------------------------------------------- /ios/Flutter/Debug.xcconfig: -------------------------------------------------------------------------------- 1 | #include "Generated.xcconfig" 2 | -------------------------------------------------------------------------------- /ios/Flutter/Release.xcconfig: -------------------------------------------------------------------------------- 1 | #include "Generated.xcconfig" 2 | -------------------------------------------------------------------------------- /ios/Runner.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- 1 | // !$*UTF8*$! 2 | { 3 | archiveVersion = 1; 4 | classes = { 5 | }; 6 | objectVersion = 46; 7 | objects = { 8 | 9 | /* Begin PBXBuildFile section */ 10 | 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; }; 11 | 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; }; 12 | 3B80C3941E831B6300D905FE /* App.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3B80C3931E831B6300D905FE /* App.framework */; }; 13 | 3B80C3951E831B6300D905FE /* App.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 3B80C3931E831B6300D905FE /* App.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; 14 | 9705A1C61CF904A100538489 /* Flutter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9740EEBA1CF902C7004384FC /* Flutter.framework */; }; 15 | 9705A1C71CF904A300538489 /* Flutter.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 9740EEBA1CF902C7004384FC /* Flutter.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; 16 | 9740EEB41CF90195004384FC /* Debug.xcconfig in Resources */ = {isa = PBXBuildFile; fileRef = 9740EEB21CF90195004384FC /* Debug.xcconfig */; }; 17 | 978B8F6F1D3862AE00F588F7 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 7AFFD8EE1D35381100E5BB4D /* AppDelegate.m */; }; 18 | 97C146F31CF9000F007C117D /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 97C146F21CF9000F007C117D /* main.m */; }; 19 | 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; }; 20 | 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; }; 21 | 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; }; 22 | /* End PBXBuildFile section */ 23 | 24 | /* Begin PBXCopyFilesBuildPhase section */ 25 | 9705A1C41CF9048500538489 /* Embed Frameworks */ = { 26 | isa = PBXCopyFilesBuildPhase; 27 | buildActionMask = 2147483647; 28 | dstPath = ""; 29 | dstSubfolderSpec = 10; 30 | files = ( 31 | 3B80C3951E831B6300D905FE /* App.framework in Embed Frameworks */, 32 | 9705A1C71CF904A300538489 /* Flutter.framework in Embed Frameworks */, 33 | ); 34 | name = "Embed Frameworks"; 35 | runOnlyForDeploymentPostprocessing = 0; 36 | }; 37 | /* End PBXCopyFilesBuildPhase section */ 38 | 39 | /* Begin PBXFileReference section */ 40 | 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = ""; }; 41 | 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = ""; }; 42 | 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = ""; }; 43 | 3B80C3931E831B6300D905FE /* App.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = App.framework; path = Flutter/App.framework; sourceTree = ""; }; 44 | 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = ""; }; 45 | 7AFFD8ED1D35381100E5BB4D /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = ""; }; 46 | 7AFFD8EE1D35381100E5BB4D /* AppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = ""; }; 47 | 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = Flutter/Debug.xcconfig; sourceTree = ""; }; 48 | 9740EEB31CF90195004384FC /* Generated.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Generated.xcconfig; path = Flutter/Generated.xcconfig; sourceTree = ""; }; 49 | 9740EEBA1CF902C7004384FC /* Flutter.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Flutter.framework; path = Flutter/Flutter.framework; sourceTree = ""; }; 50 | 97C146EE1CF9000F007C117D /* Runner.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Runner.app; sourceTree = BUILT_PRODUCTS_DIR; }; 51 | 97C146F21CF9000F007C117D /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; 52 | 97C146FB1CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; }; 53 | 97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; 54 | 97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; 55 | 97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 56 | /* End PBXFileReference section */ 57 | 58 | /* Begin PBXFrameworksBuildPhase section */ 59 | 97C146EB1CF9000F007C117D /* Frameworks */ = { 60 | isa = PBXFrameworksBuildPhase; 61 | buildActionMask = 2147483647; 62 | files = ( 63 | 9705A1C61CF904A100538489 /* Flutter.framework in Frameworks */, 64 | 3B80C3941E831B6300D905FE /* App.framework in Frameworks */, 65 | ); 66 | runOnlyForDeploymentPostprocessing = 0; 67 | }; 68 | /* End PBXFrameworksBuildPhase section */ 69 | 70 | /* Begin PBXGroup section */ 71 | 9740EEB11CF90186004384FC /* Flutter */ = { 72 | isa = PBXGroup; 73 | children = ( 74 | 3B80C3931E831B6300D905FE /* App.framework */, 75 | 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */, 76 | 9740EEBA1CF902C7004384FC /* Flutter.framework */, 77 | 9740EEB21CF90195004384FC /* Debug.xcconfig */, 78 | 7AFA3C8E1D35360C0083082E /* Release.xcconfig */, 79 | 9740EEB31CF90195004384FC /* Generated.xcconfig */, 80 | ); 81 | name = Flutter; 82 | sourceTree = ""; 83 | }; 84 | 97C146E51CF9000F007C117D = { 85 | isa = PBXGroup; 86 | children = ( 87 | 9740EEB11CF90186004384FC /* Flutter */, 88 | 97C146F01CF9000F007C117D /* Runner */, 89 | 97C146EF1CF9000F007C117D /* Products */, 90 | CF3B75C9A7D2FA2A4C99F110 /* Frameworks */, 91 | ); 92 | sourceTree = ""; 93 | }; 94 | 97C146EF1CF9000F007C117D /* Products */ = { 95 | isa = PBXGroup; 96 | children = ( 97 | 97C146EE1CF9000F007C117D /* Runner.app */, 98 | ); 99 | name = Products; 100 | sourceTree = ""; 101 | }; 102 | 97C146F01CF9000F007C117D /* Runner */ = { 103 | isa = PBXGroup; 104 | children = ( 105 | 7AFFD8ED1D35381100E5BB4D /* AppDelegate.h */, 106 | 7AFFD8EE1D35381100E5BB4D /* AppDelegate.m */, 107 | 97C146FA1CF9000F007C117D /* Main.storyboard */, 108 | 97C146FD1CF9000F007C117D /* Assets.xcassets */, 109 | 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */, 110 | 97C147021CF9000F007C117D /* Info.plist */, 111 | 97C146F11CF9000F007C117D /* Supporting Files */, 112 | 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */, 113 | 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */, 114 | ); 115 | path = Runner; 116 | sourceTree = ""; 117 | }; 118 | 97C146F11CF9000F007C117D /* Supporting Files */ = { 119 | isa = PBXGroup; 120 | children = ( 121 | 97C146F21CF9000F007C117D /* main.m */, 122 | ); 123 | name = "Supporting Files"; 124 | sourceTree = ""; 125 | }; 126 | /* End PBXGroup section */ 127 | 128 | /* Begin PBXNativeTarget section */ 129 | 97C146ED1CF9000F007C117D /* Runner */ = { 130 | isa = PBXNativeTarget; 131 | buildConfigurationList = 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */; 132 | buildPhases = ( 133 | 9740EEB61CF901F6004384FC /* Run Script */, 134 | 97C146EA1CF9000F007C117D /* Sources */, 135 | 97C146EB1CF9000F007C117D /* Frameworks */, 136 | 97C146EC1CF9000F007C117D /* Resources */, 137 | 9705A1C41CF9048500538489 /* Embed Frameworks */, 138 | 3B06AD1E1E4923F5004D2608 /* Thin Binary */, 139 | ); 140 | buildRules = ( 141 | ); 142 | dependencies = ( 143 | ); 144 | name = Runner; 145 | productName = Runner; 146 | productReference = 97C146EE1CF9000F007C117D /* Runner.app */; 147 | productType = "com.apple.product-type.application"; 148 | }; 149 | /* End PBXNativeTarget section */ 150 | 151 | /* Begin PBXProject section */ 152 | 97C146E61CF9000F007C117D /* Project object */ = { 153 | isa = PBXProject; 154 | attributes = { 155 | LastUpgradeCheck = 0910; 156 | ORGANIZATIONNAME = "The Chromium Authors"; 157 | TargetAttributes = { 158 | 97C146ED1CF9000F007C117D = { 159 | CreatedOnToolsVersion = 7.3.1; 160 | }; 161 | }; 162 | }; 163 | buildConfigurationList = 97C146E91CF9000F007C117D /* Build configuration list for PBXProject "Runner" */; 164 | compatibilityVersion = "Xcode 3.2"; 165 | developmentRegion = English; 166 | hasScannedForEncodings = 0; 167 | knownRegions = ( 168 | en, 169 | Base, 170 | ); 171 | mainGroup = 97C146E51CF9000F007C117D; 172 | productRefGroup = 97C146EF1CF9000F007C117D /* Products */; 173 | projectDirPath = ""; 174 | projectRoot = ""; 175 | targets = ( 176 | 97C146ED1CF9000F007C117D /* Runner */, 177 | ); 178 | }; 179 | /* End PBXProject section */ 180 | 181 | /* Begin PBXResourcesBuildPhase section */ 182 | 97C146EC1CF9000F007C117D /* Resources */ = { 183 | isa = PBXResourcesBuildPhase; 184 | buildActionMask = 2147483647; 185 | files = ( 186 | 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */, 187 | 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */, 188 | 9740EEB41CF90195004384FC /* Debug.xcconfig in Resources */, 189 | 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */, 190 | 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */, 191 | ); 192 | runOnlyForDeploymentPostprocessing = 0; 193 | }; 194 | /* End PBXResourcesBuildPhase section */ 195 | 196 | /* Begin PBXShellScriptBuildPhase section */ 197 | 3B06AD1E1E4923F5004D2608 /* Thin Binary */ = { 198 | isa = PBXShellScriptBuildPhase; 199 | buildActionMask = 2147483647; 200 | files = ( 201 | ); 202 | inputPaths = ( 203 | ); 204 | name = "Thin Binary"; 205 | outputPaths = ( 206 | ); 207 | runOnlyForDeploymentPostprocessing = 0; 208 | shellPath = /bin/sh; 209 | shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" thin"; 210 | }; 211 | 9740EEB61CF901F6004384FC /* Run Script */ = { 212 | isa = PBXShellScriptBuildPhase; 213 | buildActionMask = 2147483647; 214 | files = ( 215 | ); 216 | inputPaths = ( 217 | ); 218 | name = "Run Script"; 219 | outputPaths = ( 220 | ); 221 | runOnlyForDeploymentPostprocessing = 0; 222 | shellPath = /bin/sh; 223 | shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build"; 224 | }; 225 | /* End PBXShellScriptBuildPhase section */ 226 | 227 | /* Begin PBXSourcesBuildPhase section */ 228 | 97C146EA1CF9000F007C117D /* Sources */ = { 229 | isa = PBXSourcesBuildPhase; 230 | buildActionMask = 2147483647; 231 | files = ( 232 | 978B8F6F1D3862AE00F588F7 /* AppDelegate.m in Sources */, 233 | 97C146F31CF9000F007C117D /* main.m in Sources */, 234 | 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */, 235 | ); 236 | runOnlyForDeploymentPostprocessing = 0; 237 | }; 238 | /* End PBXSourcesBuildPhase section */ 239 | 240 | /* Begin PBXVariantGroup section */ 241 | 97C146FA1CF9000F007C117D /* Main.storyboard */ = { 242 | isa = PBXVariantGroup; 243 | children = ( 244 | 97C146FB1CF9000F007C117D /* Base */, 245 | ); 246 | name = Main.storyboard; 247 | sourceTree = ""; 248 | }; 249 | 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */ = { 250 | isa = PBXVariantGroup; 251 | children = ( 252 | 97C147001CF9000F007C117D /* Base */, 253 | ); 254 | name = LaunchScreen.storyboard; 255 | sourceTree = ""; 256 | }; 257 | /* End PBXVariantGroup section */ 258 | 259 | /* Begin XCBuildConfiguration section */ 260 | 249021D3217E4FDB00AE95B9 /* Profile */ = { 261 | isa = XCBuildConfiguration; 262 | baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; 263 | buildSettings = { 264 | ALWAYS_SEARCH_USER_PATHS = NO; 265 | CLANG_ANALYZER_NONNULL = YES; 266 | CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; 267 | CLANG_CXX_LIBRARY = "libc++"; 268 | CLANG_ENABLE_MODULES = YES; 269 | CLANG_ENABLE_OBJC_ARC = YES; 270 | CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; 271 | CLANG_WARN_BOOL_CONVERSION = YES; 272 | CLANG_WARN_COMMA = YES; 273 | CLANG_WARN_CONSTANT_CONVERSION = YES; 274 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; 275 | CLANG_WARN_EMPTY_BODY = YES; 276 | CLANG_WARN_ENUM_CONVERSION = YES; 277 | CLANG_WARN_INFINITE_RECURSION = YES; 278 | CLANG_WARN_INT_CONVERSION = YES; 279 | CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; 280 | CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; 281 | CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; 282 | CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; 283 | CLANG_WARN_STRICT_PROTOTYPES = YES; 284 | CLANG_WARN_SUSPICIOUS_MOVE = YES; 285 | CLANG_WARN_UNREACHABLE_CODE = YES; 286 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; 287 | "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; 288 | COPY_PHASE_STRIP = NO; 289 | DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; 290 | ENABLE_NS_ASSERTIONS = NO; 291 | ENABLE_STRICT_OBJC_MSGSEND = YES; 292 | GCC_C_LANGUAGE_STANDARD = gnu99; 293 | GCC_NO_COMMON_BLOCKS = YES; 294 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES; 295 | GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; 296 | GCC_WARN_UNDECLARED_SELECTOR = YES; 297 | GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; 298 | GCC_WARN_UNUSED_FUNCTION = YES; 299 | GCC_WARN_UNUSED_VARIABLE = YES; 300 | IPHONEOS_DEPLOYMENT_TARGET = 8.0; 301 | MTL_ENABLE_DEBUG_INFO = NO; 302 | SDKROOT = iphoneos; 303 | TARGETED_DEVICE_FAMILY = "1,2"; 304 | VALIDATE_PRODUCT = YES; 305 | }; 306 | name = Profile; 307 | }; 308 | 249021D4217E4FDB00AE95B9 /* Profile */ = { 309 | isa = XCBuildConfiguration; 310 | baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; 311 | buildSettings = { 312 | ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; 313 | CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; 314 | DEVELOPMENT_TEAM = S8QB4VV633; 315 | ENABLE_BITCODE = NO; 316 | FRAMEWORK_SEARCH_PATHS = ( 317 | "$(inherited)", 318 | "$(PROJECT_DIR)/Flutter", 319 | ); 320 | INFOPLIST_FILE = Runner/Info.plist; 321 | LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; 322 | LIBRARY_SEARCH_PATHS = ( 323 | "$(inherited)", 324 | "$(PROJECT_DIR)/Flutter", 325 | ); 326 | PRODUCT_BUNDLE_IDENTIFIER = com.brianrobles204.elementsApp; 327 | PRODUCT_NAME = "$(TARGET_NAME)"; 328 | VERSIONING_SYSTEM = "apple-generic"; 329 | }; 330 | name = Profile; 331 | }; 332 | 97C147031CF9000F007C117D /* Debug */ = { 333 | isa = XCBuildConfiguration; 334 | baseConfigurationReference = 9740EEB21CF90195004384FC /* Debug.xcconfig */; 335 | buildSettings = { 336 | ALWAYS_SEARCH_USER_PATHS = NO; 337 | CLANG_ANALYZER_NONNULL = YES; 338 | CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; 339 | CLANG_CXX_LIBRARY = "libc++"; 340 | CLANG_ENABLE_MODULES = YES; 341 | CLANG_ENABLE_OBJC_ARC = YES; 342 | CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; 343 | CLANG_WARN_BOOL_CONVERSION = YES; 344 | CLANG_WARN_COMMA = YES; 345 | CLANG_WARN_CONSTANT_CONVERSION = YES; 346 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; 347 | CLANG_WARN_EMPTY_BODY = YES; 348 | CLANG_WARN_ENUM_CONVERSION = YES; 349 | CLANG_WARN_INFINITE_RECURSION = YES; 350 | CLANG_WARN_INT_CONVERSION = YES; 351 | CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; 352 | CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; 353 | CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; 354 | CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; 355 | CLANG_WARN_STRICT_PROTOTYPES = YES; 356 | CLANG_WARN_SUSPICIOUS_MOVE = YES; 357 | CLANG_WARN_UNREACHABLE_CODE = YES; 358 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; 359 | "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; 360 | COPY_PHASE_STRIP = NO; 361 | DEBUG_INFORMATION_FORMAT = dwarf; 362 | ENABLE_STRICT_OBJC_MSGSEND = YES; 363 | ENABLE_TESTABILITY = YES; 364 | GCC_C_LANGUAGE_STANDARD = gnu99; 365 | GCC_DYNAMIC_NO_PIC = NO; 366 | GCC_NO_COMMON_BLOCKS = YES; 367 | GCC_OPTIMIZATION_LEVEL = 0; 368 | GCC_PREPROCESSOR_DEFINITIONS = ( 369 | "DEBUG=1", 370 | "$(inherited)", 371 | ); 372 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES; 373 | GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; 374 | GCC_WARN_UNDECLARED_SELECTOR = YES; 375 | GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; 376 | GCC_WARN_UNUSED_FUNCTION = YES; 377 | GCC_WARN_UNUSED_VARIABLE = YES; 378 | IPHONEOS_DEPLOYMENT_TARGET = 8.0; 379 | MTL_ENABLE_DEBUG_INFO = YES; 380 | ONLY_ACTIVE_ARCH = YES; 381 | SDKROOT = iphoneos; 382 | TARGETED_DEVICE_FAMILY = "1,2"; 383 | }; 384 | name = Debug; 385 | }; 386 | 97C147041CF9000F007C117D /* Release */ = { 387 | isa = XCBuildConfiguration; 388 | baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; 389 | buildSettings = { 390 | ALWAYS_SEARCH_USER_PATHS = NO; 391 | CLANG_ANALYZER_NONNULL = YES; 392 | CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; 393 | CLANG_CXX_LIBRARY = "libc++"; 394 | CLANG_ENABLE_MODULES = YES; 395 | CLANG_ENABLE_OBJC_ARC = YES; 396 | CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; 397 | CLANG_WARN_BOOL_CONVERSION = YES; 398 | CLANG_WARN_COMMA = YES; 399 | CLANG_WARN_CONSTANT_CONVERSION = YES; 400 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; 401 | CLANG_WARN_EMPTY_BODY = YES; 402 | CLANG_WARN_ENUM_CONVERSION = YES; 403 | CLANG_WARN_INFINITE_RECURSION = YES; 404 | CLANG_WARN_INT_CONVERSION = YES; 405 | CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; 406 | CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; 407 | CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; 408 | CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; 409 | CLANG_WARN_STRICT_PROTOTYPES = YES; 410 | CLANG_WARN_SUSPICIOUS_MOVE = YES; 411 | CLANG_WARN_UNREACHABLE_CODE = YES; 412 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; 413 | "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; 414 | COPY_PHASE_STRIP = NO; 415 | DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; 416 | ENABLE_NS_ASSERTIONS = NO; 417 | ENABLE_STRICT_OBJC_MSGSEND = YES; 418 | GCC_C_LANGUAGE_STANDARD = gnu99; 419 | GCC_NO_COMMON_BLOCKS = YES; 420 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES; 421 | GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; 422 | GCC_WARN_UNDECLARED_SELECTOR = YES; 423 | GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; 424 | GCC_WARN_UNUSED_FUNCTION = YES; 425 | GCC_WARN_UNUSED_VARIABLE = YES; 426 | IPHONEOS_DEPLOYMENT_TARGET = 8.0; 427 | MTL_ENABLE_DEBUG_INFO = NO; 428 | SDKROOT = iphoneos; 429 | TARGETED_DEVICE_FAMILY = "1,2"; 430 | VALIDATE_PRODUCT = YES; 431 | }; 432 | name = Release; 433 | }; 434 | 97C147061CF9000F007C117D /* Debug */ = { 435 | isa = XCBuildConfiguration; 436 | baseConfigurationReference = 9740EEB21CF90195004384FC /* Debug.xcconfig */; 437 | buildSettings = { 438 | ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; 439 | CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; 440 | ENABLE_BITCODE = NO; 441 | FRAMEWORK_SEARCH_PATHS = ( 442 | "$(inherited)", 443 | "$(PROJECT_DIR)/Flutter", 444 | ); 445 | INFOPLIST_FILE = Runner/Info.plist; 446 | LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; 447 | LIBRARY_SEARCH_PATHS = ( 448 | "$(inherited)", 449 | "$(PROJECT_DIR)/Flutter", 450 | ); 451 | PRODUCT_BUNDLE_IDENTIFIER = com.brianrobles204.elementsApp; 452 | PRODUCT_NAME = "$(TARGET_NAME)"; 453 | VERSIONING_SYSTEM = "apple-generic"; 454 | }; 455 | name = Debug; 456 | }; 457 | 97C147071CF9000F007C117D /* Release */ = { 458 | isa = XCBuildConfiguration; 459 | baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; 460 | buildSettings = { 461 | ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; 462 | CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; 463 | ENABLE_BITCODE = NO; 464 | FRAMEWORK_SEARCH_PATHS = ( 465 | "$(inherited)", 466 | "$(PROJECT_DIR)/Flutter", 467 | ); 468 | INFOPLIST_FILE = Runner/Info.plist; 469 | LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; 470 | LIBRARY_SEARCH_PATHS = ( 471 | "$(inherited)", 472 | "$(PROJECT_DIR)/Flutter", 473 | ); 474 | PRODUCT_BUNDLE_IDENTIFIER = com.brianrobles204.elementsApp; 475 | PRODUCT_NAME = "$(TARGET_NAME)"; 476 | VERSIONING_SYSTEM = "apple-generic"; 477 | }; 478 | name = Release; 479 | }; 480 | /* End XCBuildConfiguration section */ 481 | 482 | /* Begin XCConfigurationList section */ 483 | 97C146E91CF9000F007C117D /* Build configuration list for PBXProject "Runner" */ = { 484 | isa = XCConfigurationList; 485 | buildConfigurations = ( 486 | 97C147031CF9000F007C117D /* Debug */, 487 | 97C147041CF9000F007C117D /* Release */, 488 | 249021D3217E4FDB00AE95B9 /* Profile */, 489 | ); 490 | defaultConfigurationIsVisible = 0; 491 | defaultConfigurationName = Release; 492 | }; 493 | 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */ = { 494 | isa = XCConfigurationList; 495 | buildConfigurations = ( 496 | 97C147061CF9000F007C117D /* Debug */, 497 | 97C147071CF9000F007C117D /* Release */, 498 | 249021D4217E4FDB00AE95B9 /* Profile */, 499 | ); 500 | defaultConfigurationIsVisible = 0; 501 | defaultConfigurationName = Release; 502 | }; 503 | /* End XCConfigurationList section */ 504 | }; 505 | rootObject = 97C146E61CF9000F007C117D /* Project object */; 506 | } 507 | -------------------------------------------------------------------------------- /ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme: -------------------------------------------------------------------------------- 1 | 2 | 5 | 8 | 9 | 15 | 21 | 22 | 23 | 24 | 25 | 31 | 32 | 33 | 34 | 40 | 41 | 42 | 43 | 44 | 45 | 56 | 58 | 64 | 65 | 66 | 67 | 68 | 69 | 75 | 77 | 83 | 84 | 85 | 86 | 88 | 89 | 92 | 93 | 94 | -------------------------------------------------------------------------------- /ios/Runner.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ios/Runner/AppDelegate.h: -------------------------------------------------------------------------------- 1 | #import 2 | #import 3 | 4 | @interface AppDelegate : FlutterAppDelegate 5 | 6 | @end 7 | -------------------------------------------------------------------------------- /ios/Runner/AppDelegate.m: -------------------------------------------------------------------------------- 1 | #include "AppDelegate.h" 2 | #include "GeneratedPluginRegistrant.h" 3 | 4 | @implementation AppDelegate 5 | 6 | - (BOOL)application:(UIApplication *)application 7 | didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { 8 | [GeneratedPluginRegistrant registerWithRegistry:self]; 9 | // Override point for customization after application launch. 10 | return [super application:application didFinishLaunchingWithOptions:launchOptions]; 11 | } 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "size" : "20x20", 5 | "idiom" : "iphone", 6 | "filename" : "Icon-App-20x20@2x.png", 7 | "scale" : "2x" 8 | }, 9 | { 10 | "size" : "20x20", 11 | "idiom" : "iphone", 12 | "filename" : "Icon-App-20x20@3x.png", 13 | "scale" : "3x" 14 | }, 15 | { 16 | "size" : "29x29", 17 | "idiom" : "iphone", 18 | "filename" : "Icon-App-29x29@1x.png", 19 | "scale" : "1x" 20 | }, 21 | { 22 | "size" : "29x29", 23 | "idiom" : "iphone", 24 | "filename" : "Icon-App-29x29@2x.png", 25 | "scale" : "2x" 26 | }, 27 | { 28 | "size" : "29x29", 29 | "idiom" : "iphone", 30 | "filename" : "Icon-App-29x29@3x.png", 31 | "scale" : "3x" 32 | }, 33 | { 34 | "size" : "40x40", 35 | "idiom" : "iphone", 36 | "filename" : "Icon-App-40x40@2x.png", 37 | "scale" : "2x" 38 | }, 39 | { 40 | "size" : "40x40", 41 | "idiom" : "iphone", 42 | "filename" : "Icon-App-40x40@3x.png", 43 | "scale" : "3x" 44 | }, 45 | { 46 | "size" : "60x60", 47 | "idiom" : "iphone", 48 | "filename" : "Icon-App-60x60@2x.png", 49 | "scale" : "2x" 50 | }, 51 | { 52 | "size" : "60x60", 53 | "idiom" : "iphone", 54 | "filename" : "Icon-App-60x60@3x.png", 55 | "scale" : "3x" 56 | }, 57 | { 58 | "size" : "20x20", 59 | "idiom" : "ipad", 60 | "filename" : "Icon-App-20x20@1x.png", 61 | "scale" : "1x" 62 | }, 63 | { 64 | "size" : "20x20", 65 | "idiom" : "ipad", 66 | "filename" : "Icon-App-20x20@2x.png", 67 | "scale" : "2x" 68 | }, 69 | { 70 | "size" : "29x29", 71 | "idiom" : "ipad", 72 | "filename" : "Icon-App-29x29@1x.png", 73 | "scale" : "1x" 74 | }, 75 | { 76 | "size" : "29x29", 77 | "idiom" : "ipad", 78 | "filename" : "Icon-App-29x29@2x.png", 79 | "scale" : "2x" 80 | }, 81 | { 82 | "size" : "40x40", 83 | "idiom" : "ipad", 84 | "filename" : "Icon-App-40x40@1x.png", 85 | "scale" : "1x" 86 | }, 87 | { 88 | "size" : "40x40", 89 | "idiom" : "ipad", 90 | "filename" : "Icon-App-40x40@2x.png", 91 | "scale" : "2x" 92 | }, 93 | { 94 | "size" : "76x76", 95 | "idiom" : "ipad", 96 | "filename" : "Icon-App-76x76@1x.png", 97 | "scale" : "1x" 98 | }, 99 | { 100 | "size" : "76x76", 101 | "idiom" : "ipad", 102 | "filename" : "Icon-App-76x76@2x.png", 103 | "scale" : "2x" 104 | }, 105 | { 106 | "size" : "83.5x83.5", 107 | "idiom" : "ipad", 108 | "filename" : "Icon-App-83.5x83.5@2x.png", 109 | "scale" : "2x" 110 | }, 111 | { 112 | "size" : "1024x1024", 113 | "idiom" : "ios-marketing", 114 | "filename" : "Icon-App-1024x1024@1x.png", 115 | "scale" : "1x" 116 | } 117 | ], 118 | "info" : { 119 | "version" : 1, 120 | "author" : "xcode" 121 | } 122 | } 123 | -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brianrobles204/Elements-App/1624dee83066463d58251aa43f8afbbfa158cefe/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brianrobles204/Elements-App/1624dee83066463d58251aa43f8afbbfa158cefe/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brianrobles204/Elements-App/1624dee83066463d58251aa43f8afbbfa158cefe/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brianrobles204/Elements-App/1624dee83066463d58251aa43f8afbbfa158cefe/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brianrobles204/Elements-App/1624dee83066463d58251aa43f8afbbfa158cefe/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brianrobles204/Elements-App/1624dee83066463d58251aa43f8afbbfa158cefe/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brianrobles204/Elements-App/1624dee83066463d58251aa43f8afbbfa158cefe/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brianrobles204/Elements-App/1624dee83066463d58251aa43f8afbbfa158cefe/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brianrobles204/Elements-App/1624dee83066463d58251aa43f8afbbfa158cefe/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brianrobles204/Elements-App/1624dee83066463d58251aa43f8afbbfa158cefe/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brianrobles204/Elements-App/1624dee83066463d58251aa43f8afbbfa158cefe/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brianrobles204/Elements-App/1624dee83066463d58251aa43f8afbbfa158cefe/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brianrobles204/Elements-App/1624dee83066463d58251aa43f8afbbfa158cefe/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brianrobles204/Elements-App/1624dee83066463d58251aa43f8afbbfa158cefe/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brianrobles204/Elements-App/1624dee83066463d58251aa43f8afbbfa158cefe/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "filename" : "LaunchImage.png", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "filename" : "LaunchImage@2x.png", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "filename" : "LaunchImage@3x.png", 16 | "scale" : "3x" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brianrobles204/Elements-App/1624dee83066463d58251aa43f8afbbfa158cefe/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brianrobles204/Elements-App/1624dee83066463d58251aa43f8afbbfa158cefe/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/brianrobles204/Elements-App/1624dee83066463d58251aa43f8afbbfa158cefe/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png -------------------------------------------------------------------------------- /ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md: -------------------------------------------------------------------------------- 1 | # Launch Screen Assets 2 | 3 | You can customize the launch screen with your own desired assets by replacing the image files in this directory. 4 | 5 | You can also do it by opening your Flutter project's Xcode project with `open ios/Runner.xcworkspace`, selecting `Runner/Assets.xcassets` in the Project Navigator and dropping in the desired images. -------------------------------------------------------------------------------- /ios/Runner/Base.lproj/LaunchScreen.storyboard: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | -------------------------------------------------------------------------------- /ios/Runner/Base.lproj/Main.storyboard: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /ios/Runner/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | $(PRODUCT_BUNDLE_IDENTIFIER) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | elements_app 15 | CFBundlePackageType 16 | APPL 17 | CFBundleShortVersionString 18 | $(FLUTTER_BUILD_NAME) 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | $(FLUTTER_BUILD_NUMBER) 23 | LSRequiresIPhoneOS 24 | 25 | UILaunchStoryboardName 26 | LaunchScreen 27 | UIMainStoryboardFile 28 | Main 29 | UISupportedInterfaceOrientations 30 | 31 | UIInterfaceOrientationPortrait 32 | UIInterfaceOrientationLandscapeLeft 33 | UIInterfaceOrientationLandscapeRight 34 | 35 | UISupportedInterfaceOrientations~ipad 36 | 37 | UIInterfaceOrientationPortrait 38 | UIInterfaceOrientationPortraitUpsideDown 39 | UIInterfaceOrientationLandscapeLeft 40 | UIInterfaceOrientationLandscapeRight 41 | 42 | UIViewControllerBasedStatusBarAppearance 43 | 44 | 45 | 46 | -------------------------------------------------------------------------------- /ios/Runner/main.m: -------------------------------------------------------------------------------- 1 | #import 2 | #import 3 | #import "AppDelegate.h" 4 | 5 | int main(int argc, char* argv[]) { 6 | @autoreleasepool { 7 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /lib/main.dart: -------------------------------------------------------------------------------- 1 | import 'dart:convert'; 2 | 3 | import 'package:flutter/material.dart'; 4 | import 'package:flutter/services.dart'; 5 | 6 | 7 | const kRowCount = 10; 8 | 9 | const kContentSize = 64.0; 10 | const kGutterWidth = 2.0; 11 | 12 | const kGutterInset = EdgeInsets.all(kGutterWidth); 13 | 14 | 15 | void main() { 16 | WidgetsFlutterBinding.ensureInitialized(); 17 | final gridList = rootBundle.loadString('assets/elementsGrid.json') 18 | .then((source) => jsonDecode(source)['elements'] as List) 19 | .then((list) => list.map((json) => json != null ? ElementData.fromJson(json) : null).toList()); 20 | 21 | runApp(ElementsApp(gridList)); 22 | } 23 | 24 | 25 | class ElementData { 26 | 27 | final String name, category, symbol, extract, source, atomicWeight; 28 | final int number; 29 | final List colors; 30 | 31 | ElementData.fromJson(Map json) 32 | : name = json['name'], category = json['category'], symbol = json['symbol'], 33 | extract = json['extract'], source = json['source'], 34 | atomicWeight = json['atomic_weight'], number = json['number'], 35 | colors = (json['colors'] as List).map((value) => Color(value)).toList(); 36 | } 37 | 38 | 39 | class ElementsApp extends StatelessWidget { 40 | ElementsApp(this.gridList); 41 | 42 | final Future> gridList; 43 | 44 | @override 45 | Widget build(BuildContext context) { 46 | final theme = ThemeData( 47 | brightness: Brightness.dark, 48 | accentColor: Colors.grey, 49 | 50 | textTheme: Typography.whiteMountainView.apply(fontFamily: 'Roboto Condensed'), 51 | primaryTextTheme: Typography.whiteMountainView.apply(fontFamily: 'Share Tech Mono'), 52 | ); 53 | 54 | return MaterialApp(title: 'Elements', theme: theme, home: TablePage(gridList)); 55 | } 56 | } 57 | 58 | class TablePage extends StatelessWidget { 59 | TablePage(this.gridList); 60 | 61 | final Future> gridList; 62 | 63 | @override 64 | Widget build(BuildContext context) { 65 | return Scaffold( 66 | backgroundColor: Colors.blueGrey[900], 67 | appBar: AppBar(title: Text('Elements'), centerTitle: true, backgroundColor: Colors.blueGrey[800]), 68 | body: FutureBuilder( 69 | future: gridList, 70 | builder: (_, snapshot) => snapshot.hasData ? _buildTable(snapshot.data) 71 | : Center(child: CircularProgressIndicator()), 72 | ), 73 | ); 74 | } 75 | 76 | Widget _buildTable(List elements) { 77 | final tiles = elements.map((element) => element != null ? ElementTile(element) 78 | : Container(color: Colors.black38, margin: kGutterInset)).toList(); 79 | 80 | return SingleChildScrollView( 81 | child: SizedBox(height: kRowCount * (kContentSize + (kGutterWidth * 2)), 82 | child: GridView.count(crossAxisCount: kRowCount, children: tiles, 83 | scrollDirection: Axis.horizontal,),),); 84 | } 85 | } 86 | 87 | class DetailPage extends StatelessWidget { 88 | DetailPage(this.element); 89 | 90 | final ElementData element; 91 | 92 | @override 93 | Widget build(BuildContext context) { 94 | final listItems = [ 95 | ListTile(leading: Icon(Icons.category), title : Text(element.category.toUpperCase())), 96 | ListTile(leading: Icon(Icons.info), title : Text(element.extract), 97 | subtitle: Text(element.source),), 98 | ListTile(leading: Icon(Icons.fiber_smart_record), title: Text(element.atomicWeight), 99 | subtitle: Text('Atomic Weight'),), 100 | ].expand((widget) => [widget, Divider()]).toList(); 101 | 102 | return Scaffold( 103 | backgroundColor: Color.lerp(Colors.grey[850], element.colors[0], 0.07), 104 | 105 | appBar: AppBar( 106 | backgroundColor: Color.lerp(Colors.grey[850], element.colors[1], 0.2), 107 | bottom: ElementTile(element, isLarge: true),), 108 | 109 | body: ListView(padding: EdgeInsets.only(top: 24.0), children: listItems), 110 | ); 111 | } 112 | } 113 | 114 | 115 | class ElementTile extends StatelessWidget implements PreferredSizeWidget { 116 | const ElementTile(this.element, { this.isLarge = false }); 117 | 118 | final ElementData element; 119 | final bool isLarge; 120 | 121 | Size get preferredSize => Size.fromHeight(kContentSize * 1.5); 122 | 123 | @override 124 | Widget build(BuildContext context) { 125 | final tileText = [ 126 | Align(alignment: AlignmentDirectional.centerStart, 127 | child: Text('${element.number}', style: TextStyle(fontSize: 10.0)),), 128 | Text(element.symbol, style: Theme.of(context).primaryTextTheme.headline), 129 | Text(element.name, maxLines: 1, overflow: TextOverflow.ellipsis, 130 | textScaleFactor: isLarge ? 0.65 : 1,), 131 | ]; 132 | 133 | final tile = Container( 134 | margin: kGutterInset, 135 | width: kContentSize, 136 | height: kContentSize, 137 | foregroundDecoration: BoxDecoration( 138 | gradient: LinearGradient(colors: element.colors), 139 | backgroundBlendMode: BlendMode.multiply,), 140 | child: RawMaterialButton( 141 | onPressed: !isLarge ? () => Navigator.push(context, 142 | MaterialPageRoute(builder: (_) => DetailPage(element))) : null, 143 | fillColor: Colors.grey[800], 144 | disabledElevation: 10.0, 145 | padding: kGutterInset * 2.0, 146 | child: Column(mainAxisAlignment: MainAxisAlignment.spaceBetween, children: tileText), 147 | ), 148 | ); 149 | 150 | return Hero( 151 | tag: 'hero-${element.symbol}', 152 | flightShuttleBuilder: (_, anim, __, ___, ____) => 153 | ScaleTransition(scale: anim.drive(Tween(begin: 1, end: 1.75)), child: tile), 154 | child: Transform.scale(scale: isLarge ? 1.75 : 1, child: tile), 155 | ); 156 | } 157 | } 158 | -------------------------------------------------------------------------------- /pubspec.lock: -------------------------------------------------------------------------------- 1 | # Generated by pub 2 | # See https://www.dartlang.org/tools/pub/glossary#lockfile 3 | packages: 4 | archive: 5 | dependency: transitive 6 | description: 7 | name: archive 8 | url: "https://pub.dartlang.org" 9 | source: hosted 10 | version: "2.0.8" 11 | args: 12 | dependency: transitive 13 | description: 14 | name: args 15 | url: "https://pub.dartlang.org" 16 | source: hosted 17 | version: "1.5.1" 18 | async: 19 | dependency: transitive 20 | description: 21 | name: async 22 | url: "https://pub.dartlang.org" 23 | source: hosted 24 | version: "2.0.8" 25 | boolean_selector: 26 | dependency: transitive 27 | description: 28 | name: boolean_selector 29 | url: "https://pub.dartlang.org" 30 | source: hosted 31 | version: "1.0.4" 32 | charcode: 33 | dependency: transitive 34 | description: 35 | name: charcode 36 | url: "https://pub.dartlang.org" 37 | source: hosted 38 | version: "1.1.2" 39 | collection: 40 | dependency: transitive 41 | description: 42 | name: collection 43 | url: "https://pub.dartlang.org" 44 | source: hosted 45 | version: "1.14.11" 46 | convert: 47 | dependency: transitive 48 | description: 49 | name: convert 50 | url: "https://pub.dartlang.org" 51 | source: hosted 52 | version: "2.1.1" 53 | crypto: 54 | dependency: transitive 55 | description: 56 | name: crypto 57 | url: "https://pub.dartlang.org" 58 | source: hosted 59 | version: "2.0.6" 60 | cupertino_icons: 61 | dependency: "direct main" 62 | description: 63 | name: cupertino_icons 64 | url: "https://pub.dartlang.org" 65 | source: hosted 66 | version: "0.1.2" 67 | dart_config: 68 | dependency: transitive 69 | description: 70 | path: "." 71 | ref: HEAD 72 | resolved-ref: a7ed88a4793e094a4d5d5c2d88a89e55510accde 73 | url: "https://github.com/MarkOSullivan94/dart_config.git" 74 | source: git 75 | version: "0.5.0" 76 | flutter: 77 | dependency: "direct main" 78 | description: flutter 79 | source: sdk 80 | version: "0.0.0" 81 | flutter_launcher_icons: 82 | dependency: "direct dev" 83 | description: 84 | name: flutter_launcher_icons 85 | url: "https://pub.dartlang.org" 86 | source: hosted 87 | version: "0.7.0" 88 | flutter_test: 89 | dependency: "direct dev" 90 | description: flutter 91 | source: sdk 92 | version: "0.0.0" 93 | http: 94 | dependency: "direct main" 95 | description: 96 | name: http 97 | url: "https://pub.dartlang.org" 98 | source: hosted 99 | version: "0.12.0+2" 100 | http_parser: 101 | dependency: transitive 102 | description: 103 | name: http_parser 104 | url: "https://pub.dartlang.org" 105 | source: hosted 106 | version: "3.1.3" 107 | image: 108 | dependency: transitive 109 | description: 110 | name: image 111 | url: "https://pub.dartlang.org" 112 | source: hosted 113 | version: "2.0.7" 114 | matcher: 115 | dependency: transitive 116 | description: 117 | name: matcher 118 | url: "https://pub.dartlang.org" 119 | source: hosted 120 | version: "0.12.3+1" 121 | meta: 122 | dependency: transitive 123 | description: 124 | name: meta 125 | url: "https://pub.dartlang.org" 126 | source: hosted 127 | version: "1.1.6" 128 | path: 129 | dependency: transitive 130 | description: 131 | name: path 132 | url: "https://pub.dartlang.org" 133 | source: hosted 134 | version: "1.6.2" 135 | pedantic: 136 | dependency: transitive 137 | description: 138 | name: pedantic 139 | url: "https://pub.dartlang.org" 140 | source: hosted 141 | version: "1.4.0" 142 | petitparser: 143 | dependency: transitive 144 | description: 145 | name: petitparser 146 | url: "https://pub.dartlang.org" 147 | source: hosted 148 | version: "2.1.1" 149 | quiver: 150 | dependency: transitive 151 | description: 152 | name: quiver 153 | url: "https://pub.dartlang.org" 154 | source: hosted 155 | version: "2.0.1" 156 | sky_engine: 157 | dependency: transitive 158 | description: flutter 159 | source: sdk 160 | version: "0.0.99" 161 | source_span: 162 | dependency: transitive 163 | description: 164 | name: source_span 165 | url: "https://pub.dartlang.org" 166 | source: hosted 167 | version: "1.5.4" 168 | stack_trace: 169 | dependency: transitive 170 | description: 171 | name: stack_trace 172 | url: "https://pub.dartlang.org" 173 | source: hosted 174 | version: "1.9.3" 175 | stream_channel: 176 | dependency: transitive 177 | description: 178 | name: stream_channel 179 | url: "https://pub.dartlang.org" 180 | source: hosted 181 | version: "1.6.8" 182 | string_scanner: 183 | dependency: transitive 184 | description: 185 | name: string_scanner 186 | url: "https://pub.dartlang.org" 187 | source: hosted 188 | version: "1.0.4" 189 | term_glyph: 190 | dependency: transitive 191 | description: 192 | name: term_glyph 193 | url: "https://pub.dartlang.org" 194 | source: hosted 195 | version: "1.1.0" 196 | test_api: 197 | dependency: transitive 198 | description: 199 | name: test_api 200 | url: "https://pub.dartlang.org" 201 | source: hosted 202 | version: "0.2.2" 203 | typed_data: 204 | dependency: transitive 205 | description: 206 | name: typed_data 207 | url: "https://pub.dartlang.org" 208 | source: hosted 209 | version: "1.1.6" 210 | vector_math: 211 | dependency: transitive 212 | description: 213 | name: vector_math 214 | url: "https://pub.dartlang.org" 215 | source: hosted 216 | version: "2.0.8" 217 | xml: 218 | dependency: transitive 219 | description: 220 | name: xml 221 | url: "https://pub.dartlang.org" 222 | source: hosted 223 | version: "3.3.1" 224 | yaml: 225 | dependency: transitive 226 | description: 227 | name: yaml 228 | url: "https://pub.dartlang.org" 229 | source: hosted 230 | version: "2.1.15" 231 | sdks: 232 | dart: ">=2.1.0 <3.0.0" 233 | -------------------------------------------------------------------------------- /pubspec.yaml: -------------------------------------------------------------------------------- 1 | name: elements_app 2 | description: Browse the elements of the periodic table! 3 | 4 | version: 1.1.0+1 5 | 6 | 7 | environment: 8 | sdk: ">=2.1.0 <3.0.0" 9 | 10 | dependencies: 11 | flutter: 12 | sdk: flutter 13 | 14 | cupertino_icons: ^0.1.2 15 | http: ^0.12.0+1 16 | 17 | dev_dependencies: 18 | flutter_test: 19 | sdk: flutter 20 | 21 | flutter_launcher_icons: "^0.7.0" 22 | 23 | 24 | flutter: 25 | 26 | uses-material-design: true 27 | 28 | assets: 29 | - assets/elementsGrid.json 30 | 31 | fonts: 32 | - family: Share Tech Mono 33 | fonts: 34 | - asset: assets/fonts/ShareTechMono-Regular.ttf 35 | - family: Roboto Condensed 36 | fonts: 37 | - asset: assets/fonts/RobotoCondensed-Regular.ttf 38 | - asset: assets/fonts/RobotoCondensed-Light.ttf 39 | weight: 300 40 | 41 | 42 | flutter_icons: 43 | android: true 44 | ios: true 45 | image_path_android: "assets/launcher_icons/launcher_android.png" 46 | image_path_ios: "assets/launcher_icons/launcher_ios.png" 47 | adaptive_icon_foreground: "assets/launcher_icons/launcher_adaptive_foreground.png" 48 | adaptive_icon_background: "assets/launcher_icons/launcher_adaptive_background.png" --------------------------------------------------------------------------------