diff --git a/Gemfile b/Gemfile deleted file mode 100644 index f1f6c55..0000000 --- a/Gemfile +++ /dev/null @@ -1,22 +0,0 @@ -source "https://rubygems.org" -ruby RUBY_VERSION - -# Hello! This is where you manage which Jekyll version is used to run. -# When you want to use a different version, change it below, save the -# file and run `bundle install`. Run Jekyll with `bundle exec`, like so: -# -# bundle exec jekyll serve -# -# This will help ensure the proper Jekyll version is running. -# Happy Jekylling! -gem "jekyll", "3.7.3" -gem "rouge", "3.1.1" - -# If you have any plugins, put them here! -group :jekyll_plugins do - gem "jekyll-redirect-from", "~> 0.13" - gem "jekyll-feed", "~> 0.9" -end - -# Windows does not include zoneinfo files, so bundle the tzinfo-data gem -gem 'tzinfo-data', platforms: [:mingw, :mswin, :x64_mingw, :jruby] diff --git a/Gemfile.lock b/Gemfile.lock deleted file mode 100644 index 9914379..0000000 --- a/Gemfile.lock +++ /dev/null @@ -1,74 +0,0 @@ -GEM - remote: https://rubygems.org/ - specs: - addressable (2.5.2) - public_suffix (>= 2.0.2, < 4.0) - colorator (1.1.0) - concurrent-ruby (1.0.5) - em-websocket (0.5.1) - eventmachine (>= 0.12.9) - http_parser.rb (~> 0.6.0) - eventmachine (1.2.5) - ffi (1.9.23) - forwardable-extended (2.6.0) - http_parser.rb (0.6.0) - i18n (0.9.5) - concurrent-ruby (~> 1.0) - jekyll (3.7.3) - addressable (~> 2.4) - colorator (~> 1.0) - em-websocket (~> 0.5) - i18n (~> 0.7) - jekyll-sass-converter (~> 1.0) - jekyll-watch (~> 2.0) - kramdown (~> 1.14) - liquid (~> 4.0) - mercenary (~> 0.3.3) - pathutil (~> 0.9) - rouge (>= 1.7, < 4) - safe_yaml (~> 1.0) - jekyll-feed (0.9.3) - jekyll (~> 3.3) - jekyll-redirect-from (0.13.0) - jekyll (~> 3.3) - jekyll-sass-converter (1.5.2) - sass (~> 3.4) - jekyll-watch (2.0.0) - listen (~> 3.0) - kramdown (1.16.2) - liquid (4.0.0) - listen (3.1.5) - rb-fsevent (~> 0.9, >= 0.9.4) - rb-inotify (~> 0.9, >= 0.9.7) - ruby_dep (~> 1.2) - mercenary (0.3.6) - pathutil (0.16.1) - forwardable-extended (~> 2.6) - public_suffix (3.0.2) - rb-fsevent (0.10.3) - rb-inotify (0.9.10) - ffi (>= 0.5.0, < 2) - rouge (3.1.1) - ruby_dep (1.5.0) - safe_yaml (1.0.4) - sass (3.5.6) - sass-listen (~> 4.0.0) - sass-listen (4.0.0) - rb-fsevent (~> 0.9, >= 0.9.4) - rb-inotify (~> 0.9, >= 0.9.7) - -PLATFORMS - ruby - -DEPENDENCIES - jekyll (= 3.7.3) - jekyll-feed (~> 0.9) - jekyll-redirect-from (~> 0.13) - rouge (= 3.1.1) - tzinfo-data - -RUBY VERSION - ruby 2.3.1p112 - -BUNDLED WITH - 1.16.1 diff --git a/README.md b/README.md deleted file mode 100644 index 94cee64..0000000 --- a/README.md +++ /dev/null @@ -1,21 +0,0 @@ -# Codebar Android Workshop Resources - -## Getting started - -This is a [GitHub Pages](https://pages.github.com/) repo, so you can render the pages with [Jekyll](https://jekyllrb.com/). First make sure to [install Ruby](https://www.ruby-lang.org/en/documentation/installation/) and then the [bundler](https://bundler.io/) gem. Then: - -1. `bundle install`, which will install Jekyll. -2. `bundle exec jekyll serve --watch` -3. go to - -You are now ready to make changes! - -You could also use your favorite manager, `chruby`, `rbenv`, `rvm`, etc. For [RVM](https://rvm.io/rvm/install), follow the [quick installation guide](https://rvm.io/rvm/install#quick-guided-install) and then run: - -```bash -$ rvm install 2.2.1 # inside `codebar/tutorials` folder -$ rvm gemset use codebar-tutorial --create -$ gem install bundler -$ bundle install -$ jekyll serve # go to http://127.0.0.1:4000/android-tutorials/ -``` diff --git a/_config.yml b/_config.yml deleted file mode 100644 index 7090d0a..0000000 --- a/_config.yml +++ /dev/null @@ -1,32 +0,0 @@ -# Welcome to Jekyll! -# -# This config file is meant for settings that affect your whole blog, values -# which you are expected to set up once and rarely edit after that. If you find -# yourself editing this file very often, consider using Jekyll's data files -# feature for the data you need to update frequently. -# -# For technical reasons, this file is *NOT* reloaded automatically when you use -# 'bundle exec jekyll serve'. If you change this file, please restart the server process. - -# Site settings -# These are used to personalize your new site. If you look in the HTML files, -# you will see them accessed via {{ site.title }}, {{ site.email }}, and so on. -# You can create any custom variable you would like, and they will be accessible -# in the templates via {{ site.myvariable }}. -title: Codebar Android Workshop Resources -email: londom@codebar.io -baseurl: "/android-tutorials" # the subpath of your site, e.g. /blog -url: "https://codebar.github.io" # the base hostname & protocol for your site, e.g. http://example.com -twitter_username: jekyllrb -github_username: jekyll - -# Build settings -markdown: kramdown -highlighter: rouge - -plugins: - - jekyll-feed - - jekyll-redirect-from -exclude: - - Gemfile - - Gemfile.lock diff --git a/_layouts/default.html b/_layouts/default.html deleted file mode 100644 index 3a267e9..0000000 --- a/_layouts/default.html +++ /dev/null @@ -1,25 +0,0 @@ - - - - - - - - - - - - - -
-
- {{ content | expand_urls: root_url }} -
-
- - - - - diff --git a/_layouts/page.html b/_layouts/page.html deleted file mode 100644 index f1f1d6a..0000000 --- a/_layouts/page.html +++ /dev/null @@ -1,20 +0,0 @@ ---- -layout: default ---- - -
- -
diff --git a/assets/MaterialIcons-Regular.eot b/assets/MaterialIcons-Regular.eot deleted file mode 100755 index 70508eb..0000000 Binary files a/assets/MaterialIcons-Regular.eot and /dev/null differ diff --git a/assets/MaterialIcons-Regular.ijmap b/assets/MaterialIcons-Regular.ijmap deleted file mode 100755 index d9f1d25..0000000 --- a/assets/MaterialIcons-Regular.ijmap +++ /dev/null @@ -1 +0,0 @@ -{"icons":{"e84d":{"name":"3d Rotation"},"eb3b":{"name":"Ac Unit"},"e190":{"name":"Access Alarm"},"e191":{"name":"Access Alarms"},"e192":{"name":"Access Time"},"e84e":{"name":"Accessibility"},"e914":{"name":"Accessible"},"e84f":{"name":"Account Balance"},"e850":{"name":"Account Balance Wallet"},"e851":{"name":"Account Box"},"e853":{"name":"Account Circle"},"e60e":{"name":"Adb"},"e145":{"name":"Add"},"e439":{"name":"Add A Photo"},"e193":{"name":"Add Alarm"},"e003":{"name":"Add Alert"},"e146":{"name":"Add Box"},"e147":{"name":"Add Circle"},"e148":{"name":"Add Circle Outline"},"e567":{"name":"Add Location"},"e854":{"name":"Add Shopping Cart"},"e39d":{"name":"Add To Photos"},"e05c":{"name":"Add To Queue"},"e39e":{"name":"Adjust"},"e630":{"name":"Airline Seat Flat"},"e631":{"name":"Airline Seat Flat Angled"},"e632":{"name":"Airline Seat Individual Suite"},"e633":{"name":"Airline Seat Legroom Extra"},"e634":{"name":"Airline Seat Legroom Normal"},"e635":{"name":"Airline Seat Legroom Reduced"},"e636":{"name":"Airline Seat Recline Extra"},"e637":{"name":"Airline Seat Recline Normal"},"e195":{"name":"Airplanemode Active"},"e194":{"name":"Airplanemode Inactive"},"e055":{"name":"Airplay"},"eb3c":{"name":"Airport Shuttle"},"e855":{"name":"Alarm"},"e856":{"name":"Alarm Add"},"e857":{"name":"Alarm Off"},"e858":{"name":"Alarm On"},"e019":{"name":"Album"},"eb3d":{"name":"All Inclusive"},"e90b":{"name":"All Out"},"e859":{"name":"Android"},"e85a":{"name":"Announcement"},"e5c3":{"name":"Apps"},"e149":{"name":"Archive"},"e5c4":{"name":"Arrow Back"},"e5db":{"name":"Arrow Downward"},"e5c5":{"name":"Arrow Drop Down"},"e5c6":{"name":"Arrow Drop Down Circle"},"e5c7":{"name":"Arrow Drop Up"},"e5c8":{"name":"Arrow Forward"},"e5d8":{"name":"Arrow Upward"},"e060":{"name":"Art Track"},"e85b":{"name":"Aspect Ratio"},"e85c":{"name":"Assessment"},"e85d":{"name":"Assignment"},"e85e":{"name":"Assignment Ind"},"e85f":{"name":"Assignment Late"},"e860":{"name":"Assignment Return"},"e861":{"name":"Assignment Returned"},"e862":{"name":"Assignment Turned In"},"e39f":{"name":"Assistant"},"e3a0":{"name":"Assistant Photo"},"e226":{"name":"Attach File"},"e227":{"name":"Attach Money"},"e2bc":{"name":"Attachment"},"e3a1":{"name":"Audiotrack"},"e863":{"name":"Autorenew"},"e01b":{"name":"Av Timer"},"e14a":{"name":"Backspace"},"e864":{"name":"Backup"},"e19c":{"name":"Battery Alert"},"e1a3":{"name":"Battery Charging Full"},"e1a4":{"name":"Battery Full"},"e1a5":{"name":"Battery Std"},"e1a6":{"name":"Battery Unknown"},"eb3e":{"name":"Beach Access"},"e52d":{"name":"Beenhere"},"e14b":{"name":"Block"},"e1a7":{"name":"Bluetooth"},"e60f":{"name":"Bluetooth Audio"},"e1a8":{"name":"Bluetooth Connected"},"e1a9":{"name":"Bluetooth Disabled"},"e1aa":{"name":"Bluetooth Searching"},"e3a2":{"name":"Blur Circular"},"e3a3":{"name":"Blur Linear"},"e3a4":{"name":"Blur Off"},"e3a5":{"name":"Blur On"},"e865":{"name":"Book"},"e866":{"name":"Bookmark"},"e867":{"name":"Bookmark Border"},"e228":{"name":"Border All"},"e229":{"name":"Border Bottom"},"e22a":{"name":"Border Clear"},"e22b":{"name":"Border Color"},"e22c":{"name":"Border Horizontal"},"e22d":{"name":"Border Inner"},"e22e":{"name":"Border Left"},"e22f":{"name":"Border Outer"},"e230":{"name":"Border Right"},"e231":{"name":"Border Style"},"e232":{"name":"Border Top"},"e233":{"name":"Border Vertical"},"e06b":{"name":"Branding Watermark"},"e3a6":{"name":"Brightness 1"},"e3a7":{"name":"Brightness 2"},"e3a8":{"name":"Brightness 3"},"e3a9":{"name":"Brightness 4"},"e3aa":{"name":"Brightness 5"},"e3ab":{"name":"Brightness 6"},"e3ac":{"name":"Brightness 7"},"e1ab":{"name":"Brightness Auto"},"e1ac":{"name":"Brightness High"},"e1ad":{"name":"Brightness Low"},"e1ae":{"name":"Brightness Medium"},"e3ad":{"name":"Broken Image"},"e3ae":{"name":"Brush"},"e6dd":{"name":"Bubble Chart"},"e868":{"name":"Bug Report"},"e869":{"name":"Build"},"e43c":{"name":"Burst Mode"},"e0af":{"name":"Business"},"eb3f":{"name":"Business Center"},"e86a":{"name":"Cached"},"e7e9":{"name":"Cake"},"e0b0":{"name":"Call"},"e0b1":{"name":"Call End"},"e0b2":{"name":"Call Made"},"e0b3":{"name":"Call Merge"},"e0b4":{"name":"Call Missed"},"e0e4":{"name":"Call Missed Outgoing"},"e0b5":{"name":"Call Received"},"e0b6":{"name":"Call Split"},"e06c":{"name":"Call To Action"},"e3af":{"name":"Camera"},"e3b0":{"name":"Camera Alt"},"e8fc":{"name":"Camera Enhance"},"e3b1":{"name":"Camera Front"},"e3b2":{"name":"Camera Rear"},"e3b3":{"name":"Camera Roll"},"e5c9":{"name":"Cancel"},"e8f6":{"name":"Card Giftcard"},"e8f7":{"name":"Card Membership"},"e8f8":{"name":"Card Travel"},"eb40":{"name":"Casino"},"e307":{"name":"Cast"},"e308":{"name":"Cast Connected"},"e3b4":{"name":"Center Focus Strong"},"e3b5":{"name":"Center Focus Weak"},"e86b":{"name":"Change History"},"e0b7":{"name":"Chat"},"e0ca":{"name":"Chat Bubble"},"e0cb":{"name":"Chat Bubble Outline"},"e5ca":{"name":"Check"},"e834":{"name":"Check Box"},"e835":{"name":"Check Box Outline Blank"},"e86c":{"name":"Check Circle"},"e5cb":{"name":"Chevron Left"},"e5cc":{"name":"Chevron Right"},"eb41":{"name":"Child Care"},"eb42":{"name":"Child Friendly"},"e86d":{"name":"Chrome Reader Mode"},"e86e":{"name":"Class"},"e14c":{"name":"Clear"},"e0b8":{"name":"Clear All"},"e5cd":{"name":"Close"},"e01c":{"name":"Closed Caption"},"e2bd":{"name":"Cloud"},"e2be":{"name":"Cloud Circle"},"e2bf":{"name":"Cloud Done"},"e2c0":{"name":"Cloud Download"},"e2c1":{"name":"Cloud Off"},"e2c2":{"name":"Cloud Queue"},"e2c3":{"name":"Cloud Upload"},"e86f":{"name":"Code"},"e3b6":{"name":"Collections"},"e431":{"name":"Collections Bookmark"},"e3b7":{"name":"Color Lens"},"e3b8":{"name":"Colorize"},"e0b9":{"name":"Comment"},"e3b9":{"name":"Compare"},"e915":{"name":"Compare Arrows"},"e30a":{"name":"Computer"},"e638":{"name":"Confirmation Number"},"e0d0":{"name":"Contact Mail"},"e0cf":{"name":"Contact Phone"},"e0ba":{"name":"Contacts"},"e14d":{"name":"Content Copy"},"e14e":{"name":"Content Cut"},"e14f":{"name":"Content Paste"},"e3ba":{"name":"Control Point"},"e3bb":{"name":"Control Point Duplicate"},"e90c":{"name":"Copyright"},"e150":{"name":"Create"},"e2cc":{"name":"Create New Folder"},"e870":{"name":"Credit Card"},"e3be":{"name":"Crop"},"e3bc":{"name":"Crop 16 9"},"e3bd":{"name":"Crop 3 2"},"e3bf":{"name":"Crop 5 4"},"e3c0":{"name":"Crop 7 5"},"e3c1":{"name":"Crop Din"},"e3c2":{"name":"Crop Free"},"e3c3":{"name":"Crop Landscape"},"e3c4":{"name":"Crop Original"},"e3c5":{"name":"Crop Portrait"},"e437":{"name":"Crop Rotate"},"e3c6":{"name":"Crop Square"},"e871":{"name":"Dashboard"},"e1af":{"name":"Data Usage"},"e916":{"name":"Date Range"},"e3c7":{"name":"Dehaze"},"e872":{"name":"Delete"},"e92b":{"name":"Delete Forever"},"e16c":{"name":"Delete Sweep"},"e873":{"name":"Description"},"e30b":{"name":"Desktop Mac"},"e30c":{"name":"Desktop Windows"},"e3c8":{"name":"Details"},"e30d":{"name":"Developer Board"},"e1b0":{"name":"Developer Mode"},"e335":{"name":"Device Hub"},"e1b1":{"name":"Devices"},"e337":{"name":"Devices Other"},"e0bb":{"name":"Dialer Sip"},"e0bc":{"name":"Dialpad"},"e52e":{"name":"Directions"},"e52f":{"name":"Directions Bike"},"e532":{"name":"Directions Boat"},"e530":{"name":"Directions Bus"},"e531":{"name":"Directions Car"},"e534":{"name":"Directions Railway"},"e566":{"name":"Directions Run"},"e533":{"name":"Directions Subway"},"e535":{"name":"Directions Transit"},"e536":{"name":"Directions Walk"},"e610":{"name":"Disc Full"},"e875":{"name":"Dns"},"e612":{"name":"Do Not Disturb"},"e611":{"name":"Do Not Disturb Alt"},"e643":{"name":"Do Not Disturb Off"},"e644":{"name":"Do Not Disturb On"},"e30e":{"name":"Dock"},"e7ee":{"name":"Domain"},"e876":{"name":"Done"},"e877":{"name":"Done All"},"e917":{"name":"Donut Large"},"e918":{"name":"Donut Small"},"e151":{"name":"Drafts"},"e25d":{"name":"Drag Handle"},"e613":{"name":"Drive Eta"},"e1b2":{"name":"Dvr"},"e3c9":{"name":"Edit"},"e568":{"name":"Edit Location"},"e8fb":{"name":"Eject"},"e0be":{"name":"Email"},"e63f":{"name":"Enhanced Encryption"},"e01d":{"name":"Equalizer"},"e000":{"name":"Error"},"e001":{"name":"Error Outline"},"e926":{"name":"Euro Symbol"},"e56d":{"name":"Ev Station"},"e878":{"name":"Event"},"e614":{"name":"Event Available"},"e615":{"name":"Event Busy"},"e616":{"name":"Event Note"},"e903":{"name":"Event Seat"},"e879":{"name":"Exit To App"},"e5ce":{"name":"Expand Less"},"e5cf":{"name":"Expand More"},"e01e":{"name":"Explicit"},"e87a":{"name":"Explore"},"e3ca":{"name":"Exposure"},"e3cb":{"name":"Exposure Neg 1"},"e3cc":{"name":"Exposure Neg 2"},"e3cd":{"name":"Exposure Plus 1"},"e3ce":{"name":"Exposure Plus 2"},"e3cf":{"name":"Exposure Zero"},"e87b":{"name":"Extension"},"e87c":{"name":"Face"},"e01f":{"name":"Fast Forward"},"e020":{"name":"Fast Rewind"},"e87d":{"name":"Favorite"},"e87e":{"name":"Favorite Border"},"e06d":{"name":"Featured Play List"},"e06e":{"name":"Featured Video"},"e87f":{"name":"Feedback"},"e05d":{"name":"Fiber Dvr"},"e061":{"name":"Fiber Manual Record"},"e05e":{"name":"Fiber New"},"e06a":{"name":"Fiber Pin"},"e062":{"name":"Fiber Smart Record"},"e2c4":{"name":"File Download"},"e2c6":{"name":"File Upload"},"e3d3":{"name":"Filter"},"e3d0":{"name":"Filter 1"},"e3d1":{"name":"Filter 2"},"e3d2":{"name":"Filter 3"},"e3d4":{"name":"Filter 4"},"e3d5":{"name":"Filter 5"},"e3d6":{"name":"Filter 6"},"e3d7":{"name":"Filter 7"},"e3d8":{"name":"Filter 8"},"e3d9":{"name":"Filter 9"},"e3da":{"name":"Filter 9 Plus"},"e3db":{"name":"Filter B And W"},"e3dc":{"name":"Filter Center Focus"},"e3dd":{"name":"Filter Drama"},"e3de":{"name":"Filter Frames"},"e3df":{"name":"Filter Hdr"},"e152":{"name":"Filter List"},"e3e0":{"name":"Filter None"},"e3e2":{"name":"Filter Tilt Shift"},"e3e3":{"name":"Filter Vintage"},"e880":{"name":"Find In Page"},"e881":{"name":"Find Replace"},"e90d":{"name":"Fingerprint"},"e5dc":{"name":"First Page"},"eb43":{"name":"Fitness Center"},"e153":{"name":"Flag"},"e3e4":{"name":"Flare"},"e3e5":{"name":"Flash Auto"},"e3e6":{"name":"Flash Off"},"e3e7":{"name":"Flash On"},"e539":{"name":"Flight"},"e904":{"name":"Flight Land"},"e905":{"name":"Flight Takeoff"},"e3e8":{"name":"Flip"},"e882":{"name":"Flip To Back"},"e883":{"name":"Flip To Front"},"e2c7":{"name":"Folder"},"e2c8":{"name":"Folder Open"},"e2c9":{"name":"Folder Shared"},"e617":{"name":"Folder Special"},"e167":{"name":"Font Download"},"e234":{"name":"Format Align Center"},"e235":{"name":"Format Align Justify"},"e236":{"name":"Format Align Left"},"e237":{"name":"Format Align Right"},"e238":{"name":"Format Bold"},"e239":{"name":"Format Clear"},"e23a":{"name":"Format Color Fill"},"e23b":{"name":"Format Color Reset"},"e23c":{"name":"Format Color Text"},"e23d":{"name":"Format Indent Decrease"},"e23e":{"name":"Format Indent Increase"},"e23f":{"name":"Format Italic"},"e240":{"name":"Format Line Spacing"},"e241":{"name":"Format List Bulleted"},"e242":{"name":"Format List Numbered"},"e243":{"name":"Format Paint"},"e244":{"name":"Format Quote"},"e25e":{"name":"Format Shapes"},"e245":{"name":"Format Size"},"e246":{"name":"Format Strikethrough"},"e247":{"name":"Format Textdirection L To R"},"e248":{"name":"Format Textdirection R To L"},"e249":{"name":"Format Underlined"},"e0bf":{"name":"Forum"},"e154":{"name":"Forward"},"e056":{"name":"Forward 10"},"e057":{"name":"Forward 30"},"e058":{"name":"Forward 5"},"eb44":{"name":"Free Breakfast"},"e5d0":{"name":"Fullscreen"},"e5d1":{"name":"Fullscreen Exit"},"e24a":{"name":"Functions"},"e927":{"name":"G Translate"},"e30f":{"name":"Gamepad"},"e021":{"name":"Games"},"e90e":{"name":"Gavel"},"e155":{"name":"Gesture"},"e884":{"name":"Get App"},"e908":{"name":"Gif"},"eb45":{"name":"Golf Course"},"e1b3":{"name":"Gps Fixed"},"e1b4":{"name":"Gps Not Fixed"},"e1b5":{"name":"Gps Off"},"e885":{"name":"Grade"},"e3e9":{"name":"Gradient"},"e3ea":{"name":"Grain"},"e1b8":{"name":"Graphic Eq"},"e3eb":{"name":"Grid Off"},"e3ec":{"name":"Grid On"},"e7ef":{"name":"Group"},"e7f0":{"name":"Group Add"},"e886":{"name":"Group Work"},"e052":{"name":"Hd"},"e3ed":{"name":"Hdr Off"},"e3ee":{"name":"Hdr On"},"e3f1":{"name":"Hdr Strong"},"e3f2":{"name":"Hdr Weak"},"e310":{"name":"Headset"},"e311":{"name":"Headset Mic"},"e3f3":{"name":"Healing"},"e023":{"name":"Hearing"},"e887":{"name":"Help"},"e8fd":{"name":"Help Outline"},"e024":{"name":"High Quality"},"e25f":{"name":"Highlight"},"e888":{"name":"Highlight Off"},"e889":{"name":"History"},"e88a":{"name":"Home"},"eb46":{"name":"Hot Tub"},"e53a":{"name":"Hotel"},"e88b":{"name":"Hourglass Empty"},"e88c":{"name":"Hourglass Full"},"e902":{"name":"Http"},"e88d":{"name":"Https"},"e3f4":{"name":"Image"},"e3f5":{"name":"Image Aspect Ratio"},"e0e0":{"name":"Import Contacts"},"e0c3":{"name":"Import Export"},"e912":{"name":"Important Devices"},"e156":{"name":"Inbox"},"e909":{"name":"Indeterminate Check Box"},"e88e":{"name":"Info"},"e88f":{"name":"Info Outline"},"e890":{"name":"Input"},"e24b":{"name":"Insert Chart"},"e24c":{"name":"Insert Comment"},"e24d":{"name":"Insert Drive File"},"e24e":{"name":"Insert Emoticon"},"e24f":{"name":"Insert Invitation"},"e250":{"name":"Insert Link"},"e251":{"name":"Insert Photo"},"e891":{"name":"Invert Colors"},"e0c4":{"name":"Invert Colors Off"},"e3f6":{"name":"Iso"},"e312":{"name":"Keyboard"},"e313":{"name":"Keyboard Arrow Down"},"e314":{"name":"Keyboard Arrow Left"},"e315":{"name":"Keyboard Arrow Right"},"e316":{"name":"Keyboard Arrow Up"},"e317":{"name":"Keyboard Backspace"},"e318":{"name":"Keyboard Capslock"},"e31a":{"name":"Keyboard Hide"},"e31b":{"name":"Keyboard Return"},"e31c":{"name":"Keyboard Tab"},"e31d":{"name":"Keyboard Voice"},"eb47":{"name":"Kitchen"},"e892":{"name":"Label"},"e893":{"name":"Label Outline"},"e3f7":{"name":"Landscape"},"e894":{"name":"Language"},"e31e":{"name":"Laptop"},"e31f":{"name":"Laptop Chromebook"},"e320":{"name":"Laptop Mac"},"e321":{"name":"Laptop Windows"},"e5dd":{"name":"Last Page"},"e895":{"name":"Launch"},"e53b":{"name":"Layers"},"e53c":{"name":"Layers Clear"},"e3f8":{"name":"Leak Add"},"e3f9":{"name":"Leak Remove"},"e3fa":{"name":"Lens"},"e02e":{"name":"Library Add"},"e02f":{"name":"Library Books"},"e030":{"name":"Library Music"},"e90f":{"name":"Lightbulb Outline"},"e919":{"name":"Line Style"},"e91a":{"name":"Line Weight"},"e260":{"name":"Linear Scale"},"e157":{"name":"Link"},"e438":{"name":"Linked Camera"},"e896":{"name":"List"},"e0c6":{"name":"Live Help"},"e639":{"name":"Live Tv"},"e53f":{"name":"Local Activity"},"e53d":{"name":"Local Airport"},"e53e":{"name":"Local Atm"},"e540":{"name":"Local Bar"},"e541":{"name":"Local Cafe"},"e542":{"name":"Local Car Wash"},"e543":{"name":"Local Convenience Store"},"e556":{"name":"Local Dining"},"e544":{"name":"Local Drink"},"e545":{"name":"Local Florist"},"e546":{"name":"Local Gas Station"},"e547":{"name":"Local Grocery Store"},"e548":{"name":"Local Hospital"},"e549":{"name":"Local Hotel"},"e54a":{"name":"Local Laundry Service"},"e54b":{"name":"Local Library"},"e54c":{"name":"Local Mall"},"e54d":{"name":"Local Movies"},"e54e":{"name":"Local Offer"},"e54f":{"name":"Local Parking"},"e550":{"name":"Local Pharmacy"},"e551":{"name":"Local Phone"},"e552":{"name":"Local Pizza"},"e553":{"name":"Local Play"},"e554":{"name":"Local Post Office"},"e555":{"name":"Local Printshop"},"e557":{"name":"Local See"},"e558":{"name":"Local Shipping"},"e559":{"name":"Local Taxi"},"e7f1":{"name":"Location City"},"e1b6":{"name":"Location Disabled"},"e0c7":{"name":"Location Off"},"e0c8":{"name":"Location On"},"e1b7":{"name":"Location Searching"},"e897":{"name":"Lock"},"e898":{"name":"Lock Open"},"e899":{"name":"Lock Outline"},"e3fc":{"name":"Looks"},"e3fb":{"name":"Looks 3"},"e3fd":{"name":"Looks 4"},"e3fe":{"name":"Looks 5"},"e3ff":{"name":"Looks 6"},"e400":{"name":"Looks One"},"e401":{"name":"Looks Two"},"e028":{"name":"Loop"},"e402":{"name":"Loupe"},"e16d":{"name":"Low Priority"},"e89a":{"name":"Loyalty"},"e158":{"name":"Mail"},"e0e1":{"name":"Mail Outline"},"e55b":{"name":"Map"},"e159":{"name":"Markunread"},"e89b":{"name":"Markunread Mailbox"},"e322":{"name":"Memory"},"e5d2":{"name":"Menu"},"e252":{"name":"Merge Type"},"e0c9":{"name":"Message"},"e029":{"name":"Mic"},"e02a":{"name":"Mic None"},"e02b":{"name":"Mic Off"},"e618":{"name":"Mms"},"e253":{"name":"Mode Comment"},"e254":{"name":"Mode Edit"},"e263":{"name":"Monetization On"},"e25c":{"name":"Money Off"},"e403":{"name":"Monochrome Photos"},"e7f2":{"name":"Mood"},"e7f3":{"name":"Mood Bad"},"e619":{"name":"More"},"e5d3":{"name":"More Horiz"},"e5d4":{"name":"More Vert"},"e91b":{"name":"Motorcycle"},"e323":{"name":"Mouse"},"e168":{"name":"Move To Inbox"},"e02c":{"name":"Movie"},"e404":{"name":"Movie Creation"},"e43a":{"name":"Movie Filter"},"e6df":{"name":"Multiline Chart"},"e405":{"name":"Music Note"},"e063":{"name":"Music Video"},"e55c":{"name":"My Location"},"e406":{"name":"Nature"},"e407":{"name":"Nature People"},"e408":{"name":"Navigate Before"},"e409":{"name":"Navigate Next"},"e55d":{"name":"Navigation"},"e569":{"name":"Near Me"},"e1b9":{"name":"Network Cell"},"e640":{"name":"Network Check"},"e61a":{"name":"Network Locked"},"e1ba":{"name":"Network Wifi"},"e031":{"name":"New Releases"},"e16a":{"name":"Next Week"},"e1bb":{"name":"Nfc"},"e641":{"name":"No Encryption"},"e0cc":{"name":"No Sim"},"e033":{"name":"Not Interested"},"e06f":{"name":"Note"},"e89c":{"name":"Note Add"},"e7f4":{"name":"Notifications"},"e7f7":{"name":"Notifications Active"},"e7f5":{"name":"Notifications None"},"e7f6":{"name":"Notifications Off"},"e7f8":{"name":"Notifications Paused"},"e90a":{"name":"Offline Pin"},"e63a":{"name":"Ondemand Video"},"e91c":{"name":"Opacity"},"e89d":{"name":"Open In Browser"},"e89e":{"name":"Open In New"},"e89f":{"name":"Open With"},"e7f9":{"name":"Pages"},"e8a0":{"name":"Pageview"},"e40a":{"name":"Palette"},"e925":{"name":"Pan Tool"},"e40b":{"name":"Panorama"},"e40c":{"name":"Panorama Fish Eye"},"e40d":{"name":"Panorama Horizontal"},"e40e":{"name":"Panorama Vertical"},"e40f":{"name":"Panorama Wide Angle"},"e7fa":{"name":"Party Mode"},"e034":{"name":"Pause"},"e035":{"name":"Pause Circle Filled"},"e036":{"name":"Pause Circle Outline"},"e8a1":{"name":"Payment"},"e7fb":{"name":"People"},"e7fc":{"name":"People Outline"},"e8a2":{"name":"Perm Camera Mic"},"e8a3":{"name":"Perm Contact Calendar"},"e8a4":{"name":"Perm Data Setting"},"e8a5":{"name":"Perm Device Information"},"e8a6":{"name":"Perm Identity"},"e8a7":{"name":"Perm Media"},"e8a8":{"name":"Perm Phone Msg"},"e8a9":{"name":"Perm Scan Wifi"},"e7fd":{"name":"Person"},"e7fe":{"name":"Person Add"},"e7ff":{"name":"Person Outline"},"e55a":{"name":"Person Pin"},"e56a":{"name":"Person Pin Circle"},"e63b":{"name":"Personal Video"},"e91d":{"name":"Pets"},"e0cd":{"name":"Phone"},"e324":{"name":"Phone Android"},"e61b":{"name":"Phone Bluetooth Speaker"},"e61c":{"name":"Phone Forwarded"},"e61d":{"name":"Phone In Talk"},"e325":{"name":"Phone Iphone"},"e61e":{"name":"Phone Locked"},"e61f":{"name":"Phone Missed"},"e620":{"name":"Phone Paused"},"e326":{"name":"Phonelink"},"e0db":{"name":"Phonelink Erase"},"e0dc":{"name":"Phonelink Lock"},"e327":{"name":"Phonelink Off"},"e0dd":{"name":"Phonelink Ring"},"e0de":{"name":"Phonelink Setup"},"e410":{"name":"Photo"},"e411":{"name":"Photo Album"},"e412":{"name":"Photo Camera"},"e43b":{"name":"Photo Filter"},"e413":{"name":"Photo Library"},"e432":{"name":"Photo Size Select Actual"},"e433":{"name":"Photo Size Select Large"},"e434":{"name":"Photo Size Select Small"},"e415":{"name":"Picture As Pdf"},"e8aa":{"name":"Picture In Picture"},"e911":{"name":"Picture In Picture Alt"},"e6c4":{"name":"Pie Chart"},"e6c5":{"name":"Pie Chart Outlined"},"e55e":{"name":"Pin Drop"},"e55f":{"name":"Place"},"e037":{"name":"Play Arrow"},"e038":{"name":"Play Circle Filled"},"e039":{"name":"Play Circle Outline"},"e906":{"name":"Play For Work"},"e03b":{"name":"Playlist Add"},"e065":{"name":"Playlist Add Check"},"e05f":{"name":"Playlist Play"},"e800":{"name":"Plus One"},"e801":{"name":"Poll"},"e8ab":{"name":"Polymer"},"eb48":{"name":"Pool"},"e0ce":{"name":"Portable Wifi Off"},"e416":{"name":"Portrait"},"e63c":{"name":"Power"},"e336":{"name":"Power Input"},"e8ac":{"name":"Power Settings New"},"e91e":{"name":"Pregnant Woman"},"e0df":{"name":"Present To All"},"e8ad":{"name":"Print"},"e645":{"name":"Priority High"},"e80b":{"name":"Public"},"e255":{"name":"Publish"},"e8ae":{"name":"Query Builder"},"e8af":{"name":"Question Answer"},"e03c":{"name":"Queue"},"e03d":{"name":"Queue Music"},"e066":{"name":"Queue Play Next"},"e03e":{"name":"Radio"},"e837":{"name":"Radio Button Checked"},"e836":{"name":"Radio Button Unchecked"},"e560":{"name":"Rate Review"},"e8b0":{"name":"Receipt"},"e03f":{"name":"Recent Actors"},"e91f":{"name":"Record Voice Over"},"e8b1":{"name":"Redeem"},"e15a":{"name":"Redo"},"e5d5":{"name":"Refresh"},"e15b":{"name":"Remove"},"e15c":{"name":"Remove Circle"},"e15d":{"name":"Remove Circle Outline"},"e067":{"name":"Remove From Queue"},"e417":{"name":"Remove Red Eye"},"e928":{"name":"Remove Shopping Cart"},"e8fe":{"name":"Reorder"},"e040":{"name":"Repeat"},"e041":{"name":"Repeat One"},"e042":{"name":"Replay"},"e059":{"name":"Replay 10"},"e05a":{"name":"Replay 30"},"e05b":{"name":"Replay 5"},"e15e":{"name":"Reply"},"e15f":{"name":"Reply All"},"e160":{"name":"Report"},"e8b2":{"name":"Report Problem"},"e56c":{"name":"Restaurant"},"e561":{"name":"Restaurant Menu"},"e8b3":{"name":"Restore"},"e929":{"name":"Restore Page"},"e0d1":{"name":"Ring Volume"},"e8b4":{"name":"Room"},"eb49":{"name":"Room Service"},"e418":{"name":"Rotate 90 Degrees Ccw"},"e419":{"name":"Rotate Left"},"e41a":{"name":"Rotate Right"},"e920":{"name":"Rounded Corner"},"e328":{"name":"Router"},"e921":{"name":"Rowing"},"e0e5":{"name":"Rss Feed"},"e642":{"name":"Rv Hookup"},"e562":{"name":"Satellite"},"e161":{"name":"Save"},"e329":{"name":"Scanner"},"e8b5":{"name":"Schedule"},"e80c":{"name":"School"},"e1be":{"name":"Screen Lock Landscape"},"e1bf":{"name":"Screen Lock Portrait"},"e1c0":{"name":"Screen Lock Rotation"},"e1c1":{"name":"Screen Rotation"},"e0e2":{"name":"Screen Share"},"e623":{"name":"Sd Card"},"e1c2":{"name":"Sd Storage"},"e8b6":{"name":"Search"},"e32a":{"name":"Security"},"e162":{"name":"Select All"},"e163":{"name":"Send"},"e811":{"name":"Sentiment Dissatisfied"},"e812":{"name":"Sentiment Neutral"},"e813":{"name":"Sentiment Satisfied"},"e814":{"name":"Sentiment Very Dissatisfied"},"e815":{"name":"Sentiment Very Satisfied"},"e8b8":{"name":"Settings"},"e8b9":{"name":"Settings Applications"},"e8ba":{"name":"Settings Backup Restore"},"e8bb":{"name":"Settings Bluetooth"},"e8bd":{"name":"Settings Brightness"},"e8bc":{"name":"Settings Cell"},"e8be":{"name":"Settings Ethernet"},"e8bf":{"name":"Settings Input Antenna"},"e8c0":{"name":"Settings Input Component"},"e8c1":{"name":"Settings Input Composite"},"e8c2":{"name":"Settings Input Hdmi"},"e8c3":{"name":"Settings Input Svideo"},"e8c4":{"name":"Settings Overscan"},"e8c5":{"name":"Settings Phone"},"e8c6":{"name":"Settings Power"},"e8c7":{"name":"Settings Remote"},"e1c3":{"name":"Settings System Daydream"},"e8c8":{"name":"Settings Voice"},"e80d":{"name":"Share"},"e8c9":{"name":"Shop"},"e8ca":{"name":"Shop Two"},"e8cb":{"name":"Shopping Basket"},"e8cc":{"name":"Shopping Cart"},"e261":{"name":"Short Text"},"e6e1":{"name":"Show Chart"},"e043":{"name":"Shuffle"},"e1c8":{"name":"Signal Cellular 4 Bar"},"e1cd":{"name":"Signal Cellular Connected No Internet 4 Bar"},"e1ce":{"name":"Signal Cellular No Sim"},"e1cf":{"name":"Signal Cellular Null"},"e1d0":{"name":"Signal Cellular Off"},"e1d8":{"name":"Signal Wifi 4 Bar"},"e1d9":{"name":"Signal Wifi 4 Bar Lock"},"e1da":{"name":"Signal Wifi Off"},"e32b":{"name":"Sim Card"},"e624":{"name":"Sim Card Alert"},"e044":{"name":"Skip Next"},"e045":{"name":"Skip Previous"},"e41b":{"name":"Slideshow"},"e068":{"name":"Slow Motion Video"},"e32c":{"name":"Smartphone"},"eb4a":{"name":"Smoke Free"},"eb4b":{"name":"Smoking Rooms"},"e625":{"name":"Sms"},"e626":{"name":"Sms Failed"},"e046":{"name":"Snooze"},"e164":{"name":"Sort"},"e053":{"name":"Sort By Alpha"},"eb4c":{"name":"Spa"},"e256":{"name":"Space Bar"},"e32d":{"name":"Speaker"},"e32e":{"name":"Speaker Group"},"e8cd":{"name":"Speaker Notes"},"e92a":{"name":"Speaker Notes Off"},"e0d2":{"name":"Speaker Phone"},"e8ce":{"name":"Spellcheck"},"e838":{"name":"Star"},"e83a":{"name":"Star Border"},"e839":{"name":"Star Half"},"e8d0":{"name":"Stars"},"e0d3":{"name":"Stay Current Landscape"},"e0d4":{"name":"Stay Current Portrait"},"e0d5":{"name":"Stay Primary Landscape"},"e0d6":{"name":"Stay Primary Portrait"},"e047":{"name":"Stop"},"e0e3":{"name":"Stop Screen Share"},"e1db":{"name":"Storage"},"e8d1":{"name":"Store"},"e563":{"name":"Store Mall Directory"},"e41c":{"name":"Straighten"},"e56e":{"name":"Streetview"},"e257":{"name":"Strikethrough S"},"e41d":{"name":"Style"},"e5d9":{"name":"Subdirectory Arrow Left"},"e5da":{"name":"Subdirectory Arrow Right"},"e8d2":{"name":"Subject"},"e064":{"name":"Subscriptions"},"e048":{"name":"Subtitles"},"e56f":{"name":"Subway"},"e8d3":{"name":"Supervisor Account"},"e049":{"name":"Surround Sound"},"e0d7":{"name":"Swap Calls"},"e8d4":{"name":"Swap Horiz"},"e8d5":{"name":"Swap Vert"},"e8d6":{"name":"Swap Vertical Circle"},"e41e":{"name":"Switch Camera"},"e41f":{"name":"Switch Video"},"e627":{"name":"Sync"},"e628":{"name":"Sync Disabled"},"e629":{"name":"Sync Problem"},"e62a":{"name":"System Update"},"e8d7":{"name":"System Update Alt"},"e8d8":{"name":"Tab"},"e8d9":{"name":"Tab Unselected"},"e32f":{"name":"Tablet"},"e330":{"name":"Tablet Android"},"e331":{"name":"Tablet Mac"},"e420":{"name":"Tag Faces"},"e62b":{"name":"Tap And Play"},"e564":{"name":"Terrain"},"e262":{"name":"Text Fields"},"e165":{"name":"Text Format"},"e0d8":{"name":"Textsms"},"e421":{"name":"Texture"},"e8da":{"name":"Theaters"},"e8db":{"name":"Thumb Down"},"e8dc":{"name":"Thumb Up"},"e8dd":{"name":"Thumbs Up Down"},"e62c":{"name":"Time To Leave"},"e422":{"name":"Timelapse"},"e922":{"name":"Timeline"},"e425":{"name":"Timer"},"e423":{"name":"Timer 10"},"e424":{"name":"Timer 3"},"e426":{"name":"Timer Off"},"e264":{"name":"Title"},"e8de":{"name":"Toc"},"e8df":{"name":"Today"},"e8e0":{"name":"Toll"},"e427":{"name":"Tonality"},"e913":{"name":"Touch App"},"e332":{"name":"Toys"},"e8e1":{"name":"Track Changes"},"e565":{"name":"Traffic"},"e570":{"name":"Train"},"e571":{"name":"Tram"},"e572":{"name":"Transfer Within A Station"},"e428":{"name":"Transform"},"e8e2":{"name":"Translate"},"e8e3":{"name":"Trending Down"},"e8e4":{"name":"Trending Flat"},"e8e5":{"name":"Trending Up"},"e429":{"name":"Tune"},"e8e6":{"name":"Turned In"},"e8e7":{"name":"Turned In Not"},"e333":{"name":"Tv"},"e169":{"name":"Unarchive"},"e166":{"name":"Undo"},"e5d6":{"name":"Unfold Less"},"e5d7":{"name":"Unfold More"},"e923":{"name":"Update"},"e1e0":{"name":"Usb"},"e8e8":{"name":"Verified User"},"e258":{"name":"Vertical Align Bottom"},"e259":{"name":"Vertical Align Center"},"e25a":{"name":"Vertical Align Top"},"e62d":{"name":"Vibration"},"e070":{"name":"Video Call"},"e071":{"name":"Video Label"},"e04a":{"name":"Video Library"},"e04b":{"name":"Videocam"},"e04c":{"name":"Videocam Off"},"e338":{"name":"Videogame Asset"},"e8e9":{"name":"View Agenda"},"e8ea":{"name":"View Array"},"e8eb":{"name":"View Carousel"},"e8ec":{"name":"View Column"},"e42a":{"name":"View Comfy"},"e42b":{"name":"View Compact"},"e8ed":{"name":"View Day"},"e8ee":{"name":"View Headline"},"e8ef":{"name":"View List"},"e8f0":{"name":"View Module"},"e8f1":{"name":"View Quilt"},"e8f2":{"name":"View Stream"},"e8f3":{"name":"View Week"},"e435":{"name":"Vignette"},"e8f4":{"name":"Visibility"},"e8f5":{"name":"Visibility Off"},"e62e":{"name":"Voice Chat"},"e0d9":{"name":"Voicemail"},"e04d":{"name":"Volume Down"},"e04e":{"name":"Volume Mute"},"e04f":{"name":"Volume Off"},"e050":{"name":"Volume Up"},"e0da":{"name":"Vpn Key"},"e62f":{"name":"Vpn Lock"},"e1bc":{"name":"Wallpaper"},"e002":{"name":"Warning"},"e334":{"name":"Watch"},"e924":{"name":"Watch Later"},"e42c":{"name":"Wb Auto"},"e42d":{"name":"Wb Cloudy"},"e42e":{"name":"Wb Incandescent"},"e436":{"name":"Wb Iridescent"},"e430":{"name":"Wb Sunny"},"e63d":{"name":"Wc"},"e051":{"name":"Web"},"e069":{"name":"Web Asset"},"e16b":{"name":"Weekend"},"e80e":{"name":"Whatshot"},"e1bd":{"name":"Widgets"},"e63e":{"name":"Wifi"},"e1e1":{"name":"Wifi Lock"},"e1e2":{"name":"Wifi Tethering"},"e8f9":{"name":"Work"},"e25b":{"name":"Wrap Text"},"e8fa":{"name":"Youtube Searched For"},"e8ff":{"name":"Zoom In"},"e900":{"name":"Zoom Out"},"e56b":{"name":"Zoom Out Map"}}} \ No newline at end of file diff --git a/assets/MaterialIcons-Regular.svg b/assets/MaterialIcons-Regular.svg deleted file mode 100755 index a449327..0000000 --- a/assets/MaterialIcons-Regular.svg +++ /dev/null @@ -1,2373 +0,0 @@ - - - - - -Created by FontForge 20151118 at Mon Feb 8 11:58:02 2016 - By shyndman -Copyright 2015 Google, Inc. All Rights Reserved. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/assets/MaterialIcons-Regular.ttf b/assets/MaterialIcons-Regular.ttf deleted file mode 100755 index 7015564..0000000 Binary files a/assets/MaterialIcons-Regular.ttf and /dev/null differ diff --git a/assets/MaterialIcons-Regular.woff b/assets/MaterialIcons-Regular.woff deleted file mode 100755 index b648a3e..0000000 Binary files a/assets/MaterialIcons-Regular.woff and /dev/null differ diff --git a/assets/MaterialIcons-Regular.woff2 b/assets/MaterialIcons-Regular.woff2 deleted file mode 100755 index 9fa2112..0000000 Binary files a/assets/MaterialIcons-Regular.woff2 and /dev/null differ diff --git a/assets/dark.css b/assets/dark.css deleted file mode 100644 index 28ac05f..0000000 --- a/assets/dark.css +++ /dev/null @@ -1 +0,0 @@ -.highlight,pre.highlight{background:#282c34;color:#abb2bf}.highlight pre{background:#282c34}.highlight .ge{font-style:italic}.highlight .gs{font-weight:700}.highlight .ow{font-weight:700}.highlight .n,.highlight .nf,.highlight .nn,.highlight .o,.highlight .p{color:#abb2bf}.highlight .c,.highlight .c1,.highlight .cm,.highlight .cp,.highlight .cs{color:#5c6370;font-style:italic}.highlight .sr,.highlight .ss{color:#56b6c2}.highlight .k,.highlight .kc,.highlight .kd,.highlight .kn,.highlight .kp,.highlight .kr,.highlight .kt{color:#c678dd}.highlight .l,.highlight .ld,.highlight .s,.highlight .s1,.highlight .s2,.highlight .sb,.highlight .sc,.highlight .sd,.highlight .se,.highlight .sh,.highlight .si,.highlight .sx{color:#98c379}.highlight .nt,.highlight .nx,.highlight .vi{color:#e06c75}.highlight .il,.highlight .m,.highlight .mf,.highlight .mh,.highlight .mi,.highlight .mo,.highlight .na{color:#d19a66}.highlight .bp,.highlight .nb,.highlight .nc,.highlight .nd,.highlight .ne,.highlight .ni,.highlight .nl,.highlight .no,.highlight .nv,.highlight .py,.highlight .vc,.highlight .vg{color:#e5c07b}.highlight .err{color:#fff;background-color:#e05252}.highlight .gd{color:#e05252}.highlight .gi{color:#43d08a}.highlight .w{color:#f8f8f2}.highlight .cpf{color:navy}.highlight .gu{color:#75715e}.highlight .lineno{color:#636d83;user-select:none}.highlight .hll{color:#abb2bf;background-color:#2c313a}.highlight .language-json .w+.s2{color:#e06c75}.highlight .language-json .kc{color:#56b6c2} \ No newline at end of file diff --git a/assets/light.css b/assets/light.css deleted file mode 100644 index 7771be0..0000000 --- a/assets/light.css +++ /dev/null @@ -1 +0,0 @@ -.highlight,pre.highlight{background:#fafafa;color:#383a42}.highlight pre{background:#fafafa}.highlight .ge{font-style:italic}.highlight .gs{font-weight:700}.highlight .ow{font-weight:700}.highlight .n,.highlight .nf,.highlight .nn,.highlight .o,.highlight .p{color:#383a42}.highlight .c,.highlight .c1,.highlight .cm,.highlight .cp,.highlight .cs{color:#a0a1a7;font-style:italic}.highlight .sr,.highlight .ss{color:#0184bc}.highlight .k,.highlight .kc,.highlight .kd,.highlight .kn,.highlight .kp,.highlight .kr,.highlight .kt{color:#a626a4}.highlight .l,.highlight .ld,.highlight .s,.highlight .s1,.highlight .s2,.highlight .sb,.highlight .sc,.highlight .sd,.highlight .se,.highlight .sh,.highlight .si,.highlight .sx{color:#50a14f}.highlight .nt,.highlight .nx,.highlight .vi{color:#e45649}.highlight .il,.highlight .m,.highlight .mf,.highlight .mh,.highlight .mi,.highlight .mo,.highlight .na{color:#986801}.highlight .bp,.highlight .nb,.highlight .nc,.highlight .nd,.highlight .ne,.highlight .ni,.highlight .nl,.highlight .no,.highlight .nv,.highlight .py,.highlight .vc,.highlight .vg{color:#c18401}.highlight .err{color:#fff;background-color:#ff1414}.highlight .gd{color:#ff1414}.highlight .gi{color:#2db448}.highlight .w{color:#f8f8f2}.highlight .cpf{color:navy}.highlight .gu{color:#75715e}.highlight .lineno{color:#9d9d9f;user-select:none}.highlight .hll{color:#383a42;background-color:#f2f2f2}.highlight .language-json .w+.s2{color:#e45649}.highlight .language-json .kc{color:#0184bc} \ No newline at end of file diff --git a/assets/main.css b/assets/main.css deleted file mode 100644 index 5dedb71..0000000 --- a/assets/main.css +++ /dev/null @@ -1,56 +0,0 @@ -body { - padding: 20px; -} - -img { - max-width: 100%; - display: block; - margin-left: auto; - margin-right: auto; -} - -h1 { - font-size: 3.5rem; -} - -h2 { - margin-top: 20px; - margin-bottom: 20px; - font-size: 2rem; -} - -.emoji-title { - font-size: 72px; - margin-top: 22px; - color: #A4C639; -} - -.emoji-kotlin { - font-size: 72px; - margin-top: 22px; - color: #3BAFDA; -} - -pre { - background-color: #282c34; - padding: 15px; -} - -.aside { - position: relative; - padding: 16px; - margin: 0 32px; -} -.idea { - background-color: #FFF9C4; -} -.aside p.aside-title { - font-weight: bold; - margin-bottom: 0; -} -.aside p { - font-size: 0.8em; -} -.aside p:last-child { - margin-bottom: 0; -} diff --git a/assets/material-icons.css b/assets/material-icons.css deleted file mode 100755 index 405dcd3..0000000 --- a/assets/material-icons.css +++ /dev/null @@ -1,35 +0,0 @@ -@font-face { - font-family: 'Material Icons'; - font-style: normal; - font-weight: 400; - src: url(MaterialIcons-Regular.eot); /* For IE6-8 */ - src: local('Material Icons'), - local('MaterialIcons-Regular'), - url(MaterialIcons-Regular.woff2) format('woff2'), - url(MaterialIcons-Regular.woff) format('woff'), - url(MaterialIcons-Regular.ttf) format('truetype'); -} - -.material-icons { - font-family: 'Material Icons'; - font-weight: normal; - font-style: normal; - display: inline-block; - line-height: 1; - text-transform: none; - letter-spacing: normal; - word-wrap: normal; - white-space: nowrap; - direction: ltr; - - /* Support for all WebKit browsers. */ - -webkit-font-smoothing: antialiased; - /* Support for Safari and Chrome. */ - text-rendering: optimizeLegibility; - - /* Support for Firefox. */ - -moz-osx-font-smoothing: grayscale; - - /* Support for IE. */ - font-feature-settings: 'liga'; -} diff --git a/assets/pygments.css b/assets/pygments.css deleted file mode 100644 index 6887799..0000000 --- a/assets/pygments.css +++ /dev/null @@ -1,62 +0,0 @@ -.c { color: #667689; font-style: italic } // Comment -.err { color: #a61717; background-color: #e3d2d2 } // Error -.k { font-weight: bold } // Keyword -.o { font-weight: bold } // Operator -.cm { color: #667689; font-style: italic } // Comment.Multiline -.cp { color: #ABB2BF; } // Comment.Preproc -.c1 { color: #667689; font-style: italic } // Comment.Single -.cs { color: #667689; font-weight: bold; font-style: italic } // Comment.Special -.gd { color: #000; background-color: #fdd } // Generic.Deleted -.gd .x { color: #000; background-color: #faa } // Generic.Deleted.Specific -.ge { font-style: italic } // Generic.Emph -.gr { color: #a00 } // Generic.Error -.gh { color: #999 } // Generic.Heading -.gi { color: #000; background-color: #dfd } // Generic.Inserted -.gi .x { color: #000; background-color: #afa } // Generic.Inserted.Specific -.go { color: #888 } // Generic.Output -.gp { color: #555 } // Generic.Prompt -.gs { font-weight: bold } // Generic.Strong -.gu { color: #aaa } // Generic.Subheading -.gt { color: #a00 } // Generic.Traceback -.k {color: #ABB2BF; font-weight: normal;} -.kc { font-weight: bold } // Keyword.Constant -.kd { color: #C678DD; } // Keyword.Declaration -.kp { font-weight: bold } // Keyword.Pseudo -.kr { color: #C678DD; } // Keyword.Reserved -.kt { color: #458; font-weight: bold } // Keyword.Type -.m { color: #64B6C3 } // Literal.Number -.p {color: #ABB2BF;} -.s { color: #98C379 } // Literal.String -.na { color: #D19A66; } // Name.Attribute -.nb { color: #D19A66; } // Name.Builtin -.nc { color: #CD9A61; } // Name.Class -.no { color: #008080 } // Name.Constant -.ni { color: #800080 } // Name.Entity -.ne { color: #6CAFF2; font-weight: bold } // Name.Exception -.nf { color: #6CAFF2; } // Name.Function -.nn { color: #555 } // Name.Namespace -.nt { color: #D86C74 } // Name.Tag -.nv { color: #008080 } // Name.Variable -.nx { color: #D19A66;} -.ow { font-weight: bold } // Operator.Word -.w { color: #bbb } // Text.Whitespace -.mf { color: #099 } // Literal.Number.Float -.mh { color: #099 } // Literal.Number.Hex -.mi { color: #099 } // Literal.Number.Integer -.mo { color: #099 } // Literal.Number.Oct -.sb { color: #d14 } // Literal.String.Backtick -.sc { color: #d14 } // Literal.String.Char -.sd { color: #d14 } // Literal.String.Doc -.s2 { color: #98C379; } // Literal.String.Double -.se { color: #d14 } // Literal.String.Escape -.sh { color: #d14 } // Literal.String.Heredoc -.si { color: #d14 } // Literal.String.Interpol -.sx { color: #d14 } // Literal.String.Other -.sr { color: #009926 } // Literal.String.Regex -.s1 { color: #98C379; } // Literal.String.Single -.ss { color: #990073 } // Literal.String.Symbol -.bp { color: #999 } // Name.Builtin.Pseudo -.vc { color: #008080 } // Name.Variable.Class -.vg { color: #008080 } // Name.Variable.Global -.vi { color: #008080 } // Name.Variable.Instance -.il { color: #099 } // Literal.Number.Integer.Long diff --git a/docs/css/main.css b/docs/css/main.css new file mode 100644 index 0000000..aa724d4 --- /dev/null +++ b/docs/css/main.css @@ -0,0 +1 @@ +a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video{border:0;font:inherit;font-size:100%;margin:0;padding:0;vertical-align:baseline}body{color:#24292e;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol;font-size:16px;line-height:1.5;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;word-wrap:break-word}*{box-sizing:border-box}b,strong{font-weight:600}em,i{font-style:italic}[type=checkbox]{box-sizing:border-box;padding:0}a,a:hover{color:#3ddc84;text-decoration:none}a:active,a:hover{outline-width:0}a:not([href]){color:inherit;text-decoration:none}p{margin-bottom:1em;margin-top:0}h1,h2,h3,h4,h5,h6{color:inherit;font-weight:600;line-height:1.25;margin-bottom:16px;margin-top:1.5em}h1{font-size:32px}h2{font-size:24px}h3{font-size:20px}h4{font-size:16px}h5{font-size:14px}h6{font-size:13.6px}ol,ul{margin-bottom:1em;margin-top:0;padding-left:2em}ol ol,ul ol{list-style-type:lower-roman}ol ol,ol ul,ul ol,ul ul{margin-bottom:0;margin-top:0}ol ol ol,ol ul ol,ul ol ol,ul ul ol{list-style-type:lower-alpha}li{word-wrap:break-all}li>p{margin-top:1em}li+li{margin-top:.25em}img{border-style:none;box-sizing:content-box;max-width:100%}img[align=right]{padding-left:1.25em}img[align=left]{padding-right:1.25em}table{border-collapse:collapse;border-spacing:0;display:block;margin-bottom:16px;margin-top:0;overflow:auto;width:100%}table tr{background-color:transparent;border-top:1px solid #dfe2e5}table tr:nth-child(2n){background-color:#f6f8fa}table td,table th{border:1px solid #dfe2e5;padding:6px 13px}table th{background-color:inherit;font-weight:600}table td,table th{color:inherit}blockquote{color:#6a737d;font-size:16px;margin:0 0 16px;padding:0 1em}blockquote>:first-child{margin-top:0}blockquote>:last-child{margin-bottom:0}code{background-color:rgba(27,31,35,.05);border-radius:3px;color:inherit;font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:85%;margin:0;padding:3.2px 6.4px}pre{margin-bottom:16px}pre code{background-color:transparent;border:0;display:inline;font-size:85%;line-height:inherit;margin:0;max-width:auto;overflow:visible;padding:0;white-space:pre;word-break:normal;word-wrap:normal}kbd{background-color:#fafbfc;border:1px solid #d1d5da;border-bottom-color:#c6cbd1;border-radius:3px;box-shadow:inset 0 -1px 0 #c6cbd1;color:#444d56;display:inline-block;font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:68.75%;line-height:10px;padding:3px 5px;vertical-align:middle}hr{border:1px solid #dfe2e5;box-sizing:content-box;margin:1.5em 0;overflow:hidden;padding:0}hr:after,hr:before{content:"";display:table}hr:after{clear:both}body{background-color:#fff;min-height:100vh;text-rendering:optimizeLegibility}@media only screen and (min-width:736px){body{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column}}article:after,article:before{content:"";display:table}article:after{clear:both}article>:first-child{margin-top:0}article>:last-child{margin-bottom:0}article iframe,article p img{display:block;margin-left:auto;margin-right:auto;max-width:100%}.anchor{display:block;position:relative;top:-80px}.hash-link{line-height:1;margin-left:-20px;opacity:0;padding-right:4px;-webkit-transition:opacity .3s;transition:opacity .3s}.hash-link:hover{opacity:1!important;-webkit-transition:none;transition:none}.hash-link .hash-link-icon{vertical-align:middle}.button{border:1px solid #3ddc84;border-radius:3px;color:#3ddc84;display:inline-block;font-size:14px;font-weight:400;line-height:1.2em;padding:10px;text-decoration:none!important;text-transform:uppercase;-webkit-transition:background .3s,color .3s;transition:background .3s,color .3s}.button:hover{background:#3ddc84;color:#fff}h1:hover .hash-link,h2:hover .hash-link,h3:hover .hash-link,h4:hover .hash-link{opacity:.5;-webkit-transition:none;transition:none}blockquote{background-color:rgba(255,229,100,.3);border-left:8px solid #ffe564;padding:15px 30px 15px 15px}.wrapper{margin:0 auto;max-width:1100px;padding:0 20px}.wrapper blockquote>p:first-child{padding-top:0}.center{display:block}.center,.homeContainer{text-align:center}.homeContainer .homeWrapper{padding:2em 10px}.homeContainer .homeWrapper .wrapper{margin:0 auto;max-width:900px;padding:0 20px}.homeContainer .homeWrapper .projectLogo img{height:100px;margin-bottom:0}.homeContainer .homeWrapper #project_title{font-size:300%;letter-spacing:-.08em;line-height:1em;margin-bottom:80px}.homeContainer .homeWrapper #project_tagline{font-size:200%;letter-spacing:-.04em;line-height:1em}.projectLogo{display:none;pointer-events:none}.projectLogo img{height:100px;margin-bottom:0}.projectIntro{margin:40px 0}.projectTitle{color:#3ddc84;font-size:250%;line-height:1em}.projectTitle>small{display:block;font-weight:400;font-size:50%;line-height:1em;margin:.7em 0 1.3em}@media only screen and (min-width:480px){.projectTitle{font-size:300%;margin:.3em 0}.projectLogo img{height:200px;margin-bottom:10px}.homeContainer .homeWrapper{padding-left:10px;padding-right:10px}}@media only screen and (min-width:736px){.homeContainer .homeWrapper{position:relative}.homeContainer .homeWrapper #inner{max-width:600px;padding-right:40px}}@media only screen and (min-width:1200px){.homeContainer .homeWrapper #inner{max-width:750px}.homeContainer .homeWrapper .projectLogo{-webkit-box-align:center;align-items:center;bottom:0;display:-webkit-box;display:flex;-webkit-box-pack:end;justify-content:flex-end;left:0;padding:2em 100px 4em;position:absolute;right:0;top:0}.homeContainer .homeWrapper .projectLogo img{height:100%;max-height:250px}}@media only screen and (min-width:1500px){.homeContainer .homeWrapper #inner{max-width:1100px;padding-bottom:40px;padding-top:40px}.wrapper{max-width:1400px}}.mainContainer{-webkit-box-flex:1;flex:1 1 0%;max-width:100%;padding:40px 0}.mainContainer .wrapper{text-align:left}.mainContainer .wrapper .allShareBlock{padding:10px 0}.mainContainer .wrapper .allShareBlock .pluginBlock{margin:12px 0;padding:0}.mainContainer .wrapper .post{position:relative}.mainContainer .wrapper .post.basicPost{margin-top:30px}.mainContainer .wrapper .post .postHeader{margin-bottom:16px}.mainContainer .wrapper .post .postHeaderTitle{margin-top:0;padding:0}.mainContainer .wrapper .post .postSocialPlugins{padding-top:1em}.mainContainer .wrapper .post .docPagination{background:#3ddc84;bottom:0;left:0;position:absolute;right:0}.mainContainer .wrapper .post .docPagination .pager{display:inline-block;width:50%}.mainContainer .wrapper .post .docPagination .pagingNext{float:right;text-align:right}.mainContainer .wrapper .post .docPagination a{border:none;color:#fff;display:block;padding:4px 12px}.mainContainer .wrapper .post .docPagination a:hover{background-color:#f9f9f9;color:#393939}.mainContainer .wrapper .post .docPagination a .pagerLabel{display:inline}.mainContainer .wrapper .post .docPagination a .pagerTitle{display:none}@media only screen and (min-width:480px){.mainContainer .wrapper .post .docPagination a .pagerLabel{display:none}.mainContainer .wrapper .post .docPagination a .pagerTitle{display:inline}}@media only screen and (min-width:1024px){.mainContainer .wrapper .post{display:block}.mainContainer .wrapper .posts .post{width:100%}}.fixedHeaderContainer{background:#3ddc84;color:#fff;min-height:50px;padding:8px 0;position:fixed;width:100%;z-index:9999;-webkit-transform:translateZ(0);transform:translateZ(0)}@media only screen and (min-width:1024px){.fixedHeaderContainer{flex-shrink:0}}.fixedHeaderContainer a{-webkit-box-align:center;align-items:center;border:0;color:#fff;display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-flow:row nowrap;height:34px;z-index:10000}.fixedHeaderContainer header{display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-flow:row nowrap;position:relative;text-align:left}.fixedHeaderContainer header img{height:100%;margin-right:10px}.fixedHeaderContainer header .headerTitle{font-size:1.25em;margin:0}.fixedHeaderContainer header .headerTitleWithLogo{display:block;font-size:1.25em;line-height:18px;margin:0;position:relative;z-index:9999}.fixedHeaderContainer header h3{color:#fff;font-size:16px;margin:0 0 0 10px;text-decoration:underline}@media (max-width:480px){.headerTitle{font-size:17px}.headerTitleWithLogo{display:none!important}}.promoSection{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-flow:column wrap;font-size:125%;line-height:1.6em;position:relative;z-index:99}.promoSection .promoRow{padding:10px 0}.promoSection .promoRow .pluginWrapper{display:block}.promoSection .promoRow .pluginWrapper.ghStarWrapper,.promoSection .promoRow .pluginWrapper.ghWatchWrapper{height:28px}.promoSection .promoRow .pluginRowBlock{display:-webkit-box;display:flex;flex-wrap:wrap;-webkit-box-pack:center;justify-content:center;margin:0 -2px}.promoSection .promoRow .pluginRowBlock .pluginWrapper{padding:0 2px}.promoSection .promoRow .pluginRowBlock iframe{margin-left:2px;margin-top:5px}input[type=search]{-moz-appearance:none;-webkit-appearance:none}.navSearchWrapper{-webkit-box-align:center;align-items:center;align-self:center;display:-webkit-box;display:flex;-webkit-box-pack:center;justify-content:center;padding-left:10px;position:absolute;right:10px;top:15px}.navSearchWrapper:before{border:3px solid #e5e5e5;border-radius:50%;content:" ";display:block;height:6px;left:15px;position:absolute;top:50%;-webkit-transform:translateY(-58%);transform:translateY(-58%);width:6px;z-index:1}.navSearchWrapper:after{background:#e5e5e5;content:" ";height:7px;left:24px;position:absolute;top:55%;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);width:3px;z-index:1}.navSearchWrapper .aa-dropdown-menu{background:#f9f9f9;border:3px solid rgba(57,57,57,.25);color:#393939;font-size:14px;left:auto!important;line-height:1.2em;right:0!important}.navSearchWrapper .aa-dropdown-menu .algolia-docsearch-suggestion--category-header{background:#3ddc84;color:#fff;font-size:14px;font-weight:400}.navSearchWrapper .aa-dropdown-menu .algolia-docsearch-suggestion--category-header .algolia-docsearch-suggestion--highlight{background-color:#3ddc84;color:#fff}.navSearchWrapper .aa-dropdown-menu .algolia-docsearch-suggestion--subcategory-column .algolia-docsearch-suggestion--highlight,.navSearchWrapper .aa-dropdown-menu .algolia-docsearch-suggestion--title .algolia-docsearch-suggestion--highlight{color:#3ddc84}.navSearchWrapper .aa-dropdown-menu .algolia-docsearch-suggestion--subcategory-column,.navSearchWrapper .aa-dropdown-menu .algolia-docsearch-suggestion__secondary{border-color:rgba(57,57,57,.3)}input#search_input_react{background-color:rgba(0,0,0,.2);border:none;border-radius:20px;color:#fff;font-size:14px;font-weight:300;line-height:20px;outline:none;padding-left:25px;position:relative;-webkit-transition:width .5s ease;transition:width .5s ease;width:170px}.navSearchWrapper:before{left:24px}.navSearchWrapper:after{left:35px}input#search_input_react:active,input#search_input_react:focus{color:#fff;width:220px}.navigationSlider .slidingNav .navSearchWrapper .algolia-docsearch-footer a{height:auto}@media only screen and (max-width:735px){.navSearchWrapper{width:40%}}input::-webkit-input-placeholder{color:#e5e5e5}input::-moz-placeholder{color:#e5e5e5}input:-ms-input-placeholder{color:#e5e5e5}input::-ms-input-placeholder{color:#e5e5e5}input::placeholder{color:#e5e5e5}.hljs{padding:1.25rem 1.5rem}.gridBlock{padding:0}.gridBlock>*{box-sizing:border-box}.gridBlock .fourByGridBlock img,.gridBlock .threeByGridBlock img,.gridBlock .twoByGridBlock img{max-width:100%}.gridBlock .gridClear{clear:both}@media only screen and (max-width:735px){.gridBlock .fourByGridBlock{-webkit-box-flex:1;flex:1 0 26%}}@media only screen and (min-width:736px){.gridBlock{display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;flex-wrap:wrap}.gridBlock>*{margin:0 12px}.gridBlock>:first-child{margin-left:0}.gridBlock>:last-child{margin-right:0}.gridBlock .twoByGridBlock{-webkit-box-flex:1;flex:1 0 40%}.gridBlock .threeByGridBlock{-webkit-box-flex:1;flex:1 0 26%}.gridBlock .fourByGridBlock{-webkit-box-flex:1;flex:1 0 20%}h2+.gridBlock{padding-top:20px}}@media only screen and (min-width:1400px){.gridBlock{display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row;flex-wrap:wrap}}.alignCenter{text-align:center}.alignRight{text-align:right}.imageAlignSide{display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-flow:row wrap}.blockImage{max-width:730px}.imageAlignSide .blockImage{-webkit-box-flex:0;flex:0 1 500px;max-width:500px}@media only screen and (max-width:735px){.imageAlignSide .blockImage{display:none}}.imageAlignSide .blockContent{-webkit-box-flex:1;flex:1 1}.imageAlignBottom .blockImage{margin:0 auto 20px;max-width:730px}.imageAlignBottom.alignCenter .blockImage{margin-left:auto;margin-right:auto}.imageAlignTop .blockImage{margin-bottom:20px;max-width:80px}.imageAlignTop.alignCenter .blockImage{margin-left:auto;margin-right:auto}.imageAlignRight .blockImage{margin-left:40px}.imageAlignLeft .blockImage{margin-right:40px}.container .gridBlock .blockContent p{padding:0}.container .wrapper .alignCenter h2{text-align:center}.container .wrapper .imageAlignSide h2{text-align:left}.container .wrapper .imageAlignSide p{margin:0 0 40px;max-width:560px}.highlightBackground{background:rgba(153,66,79,.7);color:#fff}.highlightBackground a{font-weight:800}.container.highlightBackground .wrapper h1,.container.highlightBackground .wrapper h2,.container.highlightBackground .wrapper h3,.container.highlightBackground .wrapper h4,.container.highlightBackground .wrapper h5,.highlightBackground a{border-color:#fff;color:#fff}.lightBackground{background:#f7f7f7}.darkBackground{background:grey;color:#fff}.darkBackground a,.darkBackground code{color:#d6b3b8}.container.darkBackground .wrapper h1,.container.darkBackground .wrapper h2,.container.darkBackground .wrapper h3,.container.darkBackground .wrapper h4,.container.darkBackground .wrapper h5{border-color:#fff;color:#fff}.container.paddingAll{padding:40px}.container.paddingBottom{padding-bottom:80px}.container.paddingLeft{padding-left:40px}.container.paddingRight{padding-right:40px}.container.paddingTop{padding-top:80px}@media only screen and (max-width:735px){.container.paddingBottom{padding-bottom:40px}.container.paddingTop{padding-top:20px}}@media only screen and (max-width:1023px){.responsiveList .blockContent{position:relative}.responsiveList .blockContent>div{padding-left:20px}.responsiveList .blockContent:before{content:"\2022";position:absolute}}.navigationSlider .navSlideout{cursor:pointer;padding-top:4px;position:absolute;right:10px;top:0;-webkit-transition:top .3s;transition:top .3s;z-index:101}.navigationSlider .slidingNav{bottom:auto;box-sizing:border-box;left:0;position:fixed;right:0;top:0}.navigationSlider .slidingNav.slidingNavActive{height:auto;padding-top:42px;width:300px}.navigationSlider .slidingNav ul{background:#3f1556;box-sizing:border-box;color:#fff;display:-webkit-box;display:flex;flex-wrap:nowrap;list-style:none;margin-top:50px;padding:0;width:100%}.navigationSlider .slidingNav.slidingNavActive ul{display:block}.navigationSlider .slidingNav ul li{-webkit-box-flex:1;flex:1 1 auto;margin:0;text-align:center;white-space:nowrap}.navigationSlider .slidingNav ul li a{-webkit-box-align:center;align-items:center;box-sizing:border-box;color:#3ddc84;color:inherit;display:-webkit-box;display:flex;font-size:.9em;height:auto;height:50px;-webkit-box-pack:center;justify-content:center;margin:0;padding:10px;-webkit-transition:background-color .3s;transition:background-color .3s}.navigationSlider .slidingNav ul li.siteNavGroupActive>a,.navigationSlider .slidingNav ul li.siteNavItemActive>a,.navigationSlider .slidingNav ul li>a:focus,.navigationSlider .slidingNav ul li>a:hover{background-color:#3ddc84}.languages-icon{width:20px}#languages-dropdown{pointer-events:none;position:absolute;width:100%}#languages-dropdown.visible{display:-webkit-box;display:flex}#languages-dropdown.hide{display:none}#languages-dropdown-items{background-color:#3ddc84;display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;min-width:120px;pointer-events:all}#languages li{display:block}.navPusher{left:0;min-height:100%;padding-top:100px;position:relative;z-index:99}.singleRowMobileNav.navPusher{padding-top:50px}.navPusher:after{background:rgba(0,0,0,.4);content:"";height:0;opacity:0;position:absolute;right:0;top:0;-webkit-transition:opacity .5s,width .1s .5s,height .1s .5s;transition:opacity .5s,width .1s .5s,height .1s .5s;width:0}@media screen and (min-width:1024px){.navPusher{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;min-height:calc(100vh - 50px);padding-top:50px}.navPusher,.navPusher>:first-child{-webkit-box-flex:1;flex-grow:1}}.sliderActive .navPusher:after{height:100%;opacity:1;-webkit-transition:opacity .5s;transition:opacity .5s;width:100%;z-index:100}@media only screen and (max-width:1024px){.reactNavSearchWrapper input#search_input_react{background-color:rgba(242,196,178,.25);border:none;border-radius:20px;box-sizing:border-box;color:#393939;font-size:14px;line-height:20px;outline:none;padding-left:38px;position:relative;-webkit-transition:background-color .2s cubic-bezier(.68,-.55,.265,1.55),width .2s cubic-bezier(.68,-.55,.265,1.55),color .2s ease;transition:background-color .2s cubic-bezier(.68,-.55,.265,1.55),width .2s cubic-bezier(.68,-.55,.265,1.55),color .2s ease;width:100%}.reactNavSearchWrapper input#search_input_react:active,.reactNavSearchWrapper input#search_input_react:focus{background-color:#3ddc84;color:#fff}.reactNavSearchWrapper .algolia-docsearch-suggestion--subcategory-inline{display:none}.reactNavSearchWrapper>span{width:100%}.reactNavSearchWrapper .aa-dropdown-menu{font-size:12px;line-height:2em;padding:0;border-width:1px;min-width:500px}.reactNavSearchWrapper .algolia-docsearch-suggestion__secondary{border-top:none}.aa-suggestions{min-height:140px;max-height:60vh;-webkit-overflow-scrolling:touch;overflow-y:scroll}#languages-dropdown{left:0;top:50px}#languages-dropdown-items{background-color:#3ddc84;display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-direction:row}}@media only screen and (min-width:1024px){.navSearchWrapper{padding-left:10px;position:relative;right:auto;top:auto}.reactNavSearchWrapper input#search_input_react{height:100%;padding-top:8px;padding-bottom:8px;padding-left:38px}.navSearchWrapper .algolia-autocomplete{display:block}.navigationSlider{height:34px;margin-left:auto;position:relative}.navigationSlider .navSlideout{display:none}.navigationSlider nav.slidingNav{background:none;height:auto;position:relative;right:auto;top:auto;width:auto}.navigationSlider .slidingNav ul{background:none;display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-flow:row nowrap;margin:0;padding:0;width:auto}.navigationSlider .slidingNav ul li a{border:0;color:hsla(0,0%,100%,.8);display:-webkit-box;display:flex;font-size:16px;font-size:1em;font-weight:300;height:32px;line-height:1.2em;margin:0;padding:6px 10px}.navigationSlider .slidingNav ul li.siteNavGroupActive a,.navigationSlider .slidingNav ul li.siteNavItemActive a,.navigationSlider .slidingNav ul li a:hover{color:#fff}}@media only screen and (max-width:735px){.navigationSlider .slidingNav ul{overflow-x:auto}.navigationSlider .slidingNav ul::-webkit-scrollbar{display:none}.reactNavSearchWrapper .aa-dropdown-menu{min-width:400px}}@media only screen and (max-width:475px){.reactNavSearchWrapper .aa-dropdown-menu{min-width:300px}}.docMainWrapper .wrapper{padding-left:0;padding-right:0;padding-top:10px}@media only screen and (min-width:1024px){.docMainWrapper{width:100%}.docMainWrapper>*{margin:0 24px}.docMainWrapper>:first-child{margin-left:0}.docMainWrapper>:last-child{margin-right:0}.docMainWrapper .mainContainer{min-width:0}}.edit-page-link{float:right;font-size:10px;font-weight:400;margin-top:3px;text-decoration:none}@media only screen and (max-width:1023px){.edit-page-link{display:none}}.docLastUpdate{font-size:13px;font-style:italic;margin:20px 0;text-align:right}.docs-prevnext{margin:20px 0}.docs-prevnext:after{clear:both;content:" ";display:table}.docs-next{float:right}.docs-prev{float:left}@media only screen and (max-width:735px){.docs-next{clear:both;float:left}.docs-next,.docs-prev{margin:10px 0}.arrow-next{float:right;margin-left:10px}.arrow-prev{float:left;margin-right:10px}.function-name-prevnext{width:200px;display:inline-block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}.hide{display:none}.collapsible{cursor:pointer}.collapsible .arrow{float:right;margin-right:8px;margin-top:-4px;-webkit-transform:rotate(90deg);transform:rotate(90deg);-webkit-transition:-webkit-transform .2s linear;transition:-webkit-transform .2s linear;transition:transform .2s linear;transition:transform .2s linear, -webkit-transform .2s linear}.collapsible .arrow.rotate{-webkit-transform:rotate(180deg);transform:rotate(180deg)}@media only screen and (max-width:1023px){.docsNavContainer{background:#fff;left:0;position:fixed;width:100%;z-index:100}}@media only screen and (min-width:1024px){.docsNavContainer{-webkit-box-flex:0;flex:0 0 240px;height:calc(100vh - 50px);position:-webkit-sticky;position:sticky;overflow-y:auto;top:50px}}.docsSliderActive.docsNavContainer{box-sizing:border-box;height:100%;-webkit-overflow-scrolling:touch;overflow-y:auto;-ms-scroll-chaining:none;overscroll-behavior:contain;padding-bottom:50px}.docsNavContainer .toc .navBreadcrumb{background-color:#f1f1f1;box-sizing:border-box;display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-flow:row nowrap;font-size:12px;height:48px;overflow:hidden;padding:8px 20px}.docsNavContainer .toc .navWrapper{padding:0}@media only screen and (min-width:1024px){.docsNavContainer .toc .navBreadcrumb{display:none}.navBreadcrumb h2{padding:0 10px}.separateOnPageNav .docsNavContainer{-webkit-box-flex:0;flex:0 0 240px}}.navBreadcrumb a,.navBreadcrumb span{border:0;color:#393939}@media only screen and (max-width:735px){.anchor{top:-144px}}@media only screen and (min-width:1024px){.toc{padding:40px 0}}.toc section{padding:0;position:relative}.toc section .navGroups{display:none;padding:48px 20px 60px}.toc .toggleNav{color:#393939;position:relative}.toc .toggleNav .navToggle{cursor:pointer;height:32px;margin-right:10px;position:relative;text-align:left;width:18px}.hamburger-menu{position:absolute;top:6px;width:100%}.line1,.line2,.line3{width:100%;height:3px;background-color:#393939;margin:3px 0;-webkit-transition:.4s;transition:.4s;border-radius:10px}.docsSliderActive .hamburger-menu{top:12px}.docsSliderActive .line1{position:absolute;top:50%;-webkit-transform:rotate(-45deg);transform:rotate(-45deg)}.docsSliderActive .line2{display:none}.docsSliderActive .line3{position:absolute;top:50%;-webkit-transform:rotate(45deg);transform:rotate(45deg)}.toggleNav h2 i{padding:0 4px}.toc .toggleNav .navGroup{margin-bottom:16px}.toc .toggleNav .subNavGroup{margin-bottom:0}.toc .toggleNav .navGroup .navGroupCategoryTitle{color:#393939;font-size:18px;font-weight:500;line-height:1.2em;margin-bottom:8px;margin-top:0}.toc .toggleNav .navGroup .navGroupSubcategoryTitle{color:#393939;font-size:14px;font-weight:500;line-height:1.5;margin-bottom:0;margin-top:0;padding:4px 0}.toc .toggleNav .navGroup .navListItem{margin:0}.toc .toggleNav .navGroup h3 i:not(:empty){box-sizing:border-box;color:rgba(57,57,57,.5);display:inline-block;height:16px;margin-right:10px;text-align:center;-webkit-transition:color .2s;transition:color .2s;width:16px}.toc .toggleNav ul{padding:0 8px}.docsSliderActive .toc .toggleNav ul{padding-left:0}.toc .toggleNav ul li{list-style-type:none;padding:0}.toc .toggleNav ul li a{border:none;color:#717171;display:block;font-size:14px;padding:4px 0;-webkit-transition:color .3s;transition:color .3s}.toc .toggleNav ul li.navListItemActive a,.toc .toggleNav ul li a:focus,.toc .toggleNav ul li a:hover{color:#3ddc84}.docsSliderActive .toc .navBreadcrumb,.tocActive .navBreadcrumb{border-bottom:1px solid #ccc;margin-bottom:20px;position:fixed;width:100%}.toc .toggleNav .navBreadcrumb h2{border:0;-webkit-box-flex:1;flex-grow:1;font-size:16px;font-weight:600;line-height:32px;margin:0;padding:0}.docsSliderActive .toc section .navGroups{display:block;padding-top:60px}.tocToggler{cursor:pointer;height:32px;line-height:32px;margin-right:-10px;padding:0 10px}.icon-toc{box-sizing:border-box;display:inline-block;line-height:normal;position:relative;top:-1px;vertical-align:middle}.icon-toc,.icon-toc:after,.icon-toc:before{background-color:currentColor;border:1px solid;border-radius:50%;box-sizing:border-box;height:4px;width:4px}.icon-toc:after,.icon-toc:before{content:"";position:absolute}.icon-toc:before{left:-1px;top:-7px}.icon-toc:after{left:-1px;top:5px}.tocActive .icon-toc{border-radius:0;height:16px;-webkit-transform:rotate(45deg);transform:rotate(45deg);width:3px}.tocActive .icon-toc:before{border-radius:0;height:3px;left:50%;top:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%);width:16px}.tocActive .icon-toc:after{content:""}@media only screen and (min-width:1024px){.docMainWrapper{display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-flow:row nowrap}.docMainWrapper .wrapper{padding-top:0;padding-left:0;padding-right:0}}.onPageNav{display:none;margin-bottom:40px}.onPageNav::-webkit-scrollbar{width:7px}.onPageNav::-webkit-scrollbar-track{background:#f1f1f1;border-radius:10px}.onPageNav::-webkit-scrollbar-thumb{background:#888;border-radius:10px}.onPageNav::-webkit-scrollbar-thumb:hover{background:#555}.onPageNav a{color:#717171}.onPageNav .toc-headings>li>a.active{font-weight:600;color:#3ddc84}.onPageNav ul{list-style:none}.onPageNav ul li{font-size:12px;line-height:16px;padding-bottom:8px}.onPageNav ul ul{padding:8px 0 0 20px}.onPageNav ul ul li{padding-bottom:5px}@media only screen and (min-width:1024px){.toc section .navGroups{display:block;padding:8px 0 0}.navBreadcrumb h2{padding:0 10px}}@supports ((position: -webkit-sticky) or (position: sticky)){@media only screen and (max-width:1023px){.tocActive .onPageNav{background:#fff;bottom:0;display:block;left:0;overflow-y:auto;-ms-scroll-chaining:none;overscroll-behavior:contain;padding:0 20px;position:fixed;right:0;top:148px;z-index:10;margin-bottom:0}.tocActive .singleRowMobileNav .onPageNav{top:98px}.tocActive .navBreadcrumb h2,.tocActive .navToggle{visibility:hidden}.tocActive .onPageNav>.toc-headings{padding:12px 0}}@media only screen and (min-width:1024px){.separateOnPageNav .headerWrapper.wrapper,.separateOnPageNav .wrapper{max-width:1400px}.separateOnPageNav .toc{width:auto}.separateOnPageNav.sideNavVisible .navPusher .mainContainer{-webkit-box-flex:1;flex:1 auto;max-width:100%;min-width:0}.onPageNav{align-self:flex-start;display:block;-webkit-box-flex:0;flex:0 0 240px;max-height:calc(100vh - 90px);overflow-y:auto;position:-webkit-sticky;position:sticky;top:90px}.onPageNav>.toc-headings{border-left:1px solid #e0e0e0;padding:10px 0 2px 15px}.tocToggler{display:none}}}.blog .wrapper{max-width:1100px}.blogContainer .posts .post{border-bottom:1px solid #e0e0e0;border-radius:3px;margin-bottom:20px;padding-bottom:20px}.blogContainer .postHeader{margin-bottom:10px}.blogContainer .postHeaderTitle{margin-top:0}.blogContainer .postHeader p.post-meta{margin-bottom:10px;padding:0}.blogContainer .postHeader .authorBlock{display:-webkit-box;display:flex}.blogContainer .postHeader .post-authorName{color:rgba(57,57,57,.7);display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;font-size:14px;font-weight:400;-webkit-box-pack:center;justify-content:center;margin-right:10px;margin-top:0;margin-bottom:0;padding:0}.blogContainer .postHeader .authorPhoto{border-radius:50%;height:30px;overflow:hidden;width:30px}.blogContainer .postHeader .authorPhoto.authorPhotoBig{height:50px;width:50px}.blog-recent{margin:20px 0}.blog-recent>a{float:left}@media only screen and (max-width:735px){.blog-recent{height:40px}}.blogSocialSection{display:block;padding:36px 0}.blogSocialSection .blogSocialSectionItem{padding-bottom:5px}.fb-like{display:block;margin-bottom:20px;width:100%}.more-users{margin:0 auto;max-width:560px;text-align:center}.productShowcaseSection{padding:0 20px;text-align:center}.productShowcaseSection.paddingTop{padding-top:20px}.productShowcaseSection.paddingBottom{padding-bottom:80px}.productShowcaseSection h2{color:#3ddc84;font-size:30px;line-height:1em;margin-top:20px;padding:10px 0;text-align:center}.productShowcaseSection p{margin:0 auto;max-width:560px;padding:.8em 0}.productShowcaseSection .logos{-webkit-box-align:center;align-items:center;display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-flow:row wrap;-webkit-box-pack:center;justify-content:center;padding:20px}.productShowcaseSection .logos img{max-height:110px;padding:20px;width:110px}@media only screen and (max-width:735px){.productShowcaseSection .logos img{max-height:64px;padding:20px;width:64px}}.showcaseSection{margin:0 auto;max-width:900px}.showcaseSection,.showcaseSection .prose h1{text-align:center}.showcaseSection .prose{margin:0 auto;max-width:560px;text-align:center}.showcaseSection .logos{-webkit-box-align:center;align-items:center;display:-webkit-box;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;flex-flow:row wrap;-webkit-box-pack:center;justify-content:center}.showcaseSection .logos img{max-height:128px;padding:20px;width:128px}@media only screen and (max-width:735px){.showcaseSection .logos img{max-height:64px;padding:20px;width:64px}}.nav-footer{background:#20232a;border:none;color:#202020;font-size:15px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;line-height:24px;padding-bottom:2em;padding-top:2em;position:relative}@media only screen and (min-width:1024px){.nav-footer{flex-shrink:0}}.nav-footer .sitemap{display:-webkit-box;display:flex;-webkit-box-pack:justify;justify-content:space-between;margin:0 auto 3em;max-width:1080px}.nav-footer .sitemap div{-webkit-box-flex:1;flex:1}.nav-footer .sitemap .nav-home{display:table;height:72px;margin:-12px 20px 0 0;opacity:.4;padding:10px;-webkit-transition:opacity .15s ease-in-out;transition:opacity .15s ease-in-out;width:72px}.nav-footer .sitemap .nav-home:focus,.nav-footer .sitemap .nav-home:hover{opacity:1}@media only screen and (max-width:735px){.nav-footer .sitemap{display:-webkit-box;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;flex-direction:column;margin:0 2em 3em;width:calc(100% - 4em)}.nav-footer .sitemap>div{margin-bottom:18px}}.nav-footer .sitemap a{color:hsla(0,0%,100%,.6);display:block;margin:2px 0;padding:3px 0}.nav-footer .sitemap a:focus,.nav-footer .sitemap a:hover,.nav-footer .sitemap h5>a:focus,.nav-footer .sitemap h5>a:hover{color:#fff;text-decoration:none}.nav-footer .sitemap h5,.nav-footer .sitemap h6{margin:0 0 10px}.nav-footer .sitemap h5,.nav-footer .sitemap h5>a,.nav-footer .sitemap h6,.nav-footer .sitemap h6>a{color:#fff}.nav-footer .sitemap h5>a,.nav-footer .sitemap h6>a{margin:0 -10px}.nav-footer .fbOpenSource{display:block;margin:1em auto;opacity:.4;-webkit-transition:opacity .15s ease-in-out;transition:opacity .15s ease-in-out;width:170px}.nav-footer .fbOpenSource:hover{opacity:1}.nav-footer .copyright{color:hsla(0,0%,100%,.4);text-align:center}.nav-footer .social{padding:5px 0}.tabs{border-top:1px solid #cfcfcf}.nav-tabs{display:-webkit-box;display:flex;border-bottom:4px solid #e0e0e0;width:100%;padding:0;overflow-x:auto;white-space:nowrap;max-height:100%}.nav-tabs::-webkit-scrollbar{display:none}.tabs .tab-pane:focus{outline:none}.tabs .nav-tabs>div{font-size:14px;line-height:1.14286;padding:12px 16px;text-decoration:none;display:block;cursor:pointer}.tabs .nav-tabs>div.active{border-bottom:4px solid #3ddc84}.tab-pane{display:none}.tab-pane.active{display:block}.tab-pane>pre{white-space:pre-wrap}.tab-pane>pre>code{margin-top:0;border-radius:0;box-shadow:none} \ No newline at end of file diff --git a/docs/css/prism.css b/docs/css/prism.css new file mode 100644 index 0000000..d783edb --- /dev/null +++ b/docs/css/prism.css @@ -0,0 +1,115 @@ +/** + * Copyright (c) 2017-present, Facebook, Inc. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + * + * Modified prism.js default theme for JavaScript, CSS and HTML + * Based on dabblet (http://dabblet.com) + * @author Lea Verou + */ + +code[class*='language-'], +pre[class*='language-'] { + font-family: Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace; + text-align: left; + white-space: pre; + word-spacing: normal; + word-break: normal; + word-wrap: normal; + line-height: 1.5; + + -moz-tab-size: 4; + -o-tab-size: 4; + tab-size: 4; + + -webkit-hyphens: none; + -moz-hyphens: none; + -ms-hyphens: none; + hyphens: none; +} + +/* Code blocks */ +pre[class*='language-'] { + padding: 1em; + margin: 0.5em 0; + overflow: auto; +} + +/* Inline code */ +:not(pre) > code[class*='language-'] { + padding: 0.1em; + border-radius: 0.3em; + white-space: normal; +} + +.token.comment, +.token.prolog, +.token.doctype, +.token.cdata { + color: slategray; +} + +.token.punctuation { + color: #999; +} + +.namespace { + opacity: 0.7; +} + +.token.property, +.token.tag, +.token.boolean, +.token.constant, +.token.symbol, +.token.deleted { + color: #905; +} + +.token.selector, +.token.number, +.token.attr-name, +.token.string, +.token.char, +.token.builtin, +.token.inserted { + color: #690; +} + +.token.operator, +.token.entity, +.token.url, +.language-css .token.string, +.style .token.string { + color: #9a6e3a; +} + +.token.atrule, +.token.attr-value, +.token.keyword { + color: #07a; +} + +.token.function, +.token.class-name { + color: #dd4a68; +} + +.token.regex, +.token.important, +.token.variable { + color: #e90; +} + +.token.important, +.token.bold { + font-weight: bold; +} +.token.italic { + font-style: italic; +} + +.token.entity { + cursor: help; +} diff --git a/docs/docs/activity-lifecycle.html b/docs/docs/activity-lifecycle.html new file mode 100644 index 0000000..e3bd7b5 --- /dev/null +++ b/docs/docs/activity-lifecycle.html @@ -0,0 +1,97 @@ +Activity Lifecycle · codebar android tutorials
\ No newline at end of file diff --git a/docs/docs/activity-lifecycle/index.html b/docs/docs/activity-lifecycle/index.html new file mode 100644 index 0000000..e3bd7b5 --- /dev/null +++ b/docs/docs/activity-lifecycle/index.html @@ -0,0 +1,97 @@ +Activity Lifecycle · codebar android tutorials
\ No newline at end of file diff --git a/worksheets/1-introduction/images/1_completed.png b/docs/docs/assets/cookie-clicker-java/1_completed.png similarity index 100% rename from worksheets/1-introduction/images/1_completed.png rename to docs/docs/assets/cookie-clicker-java/1_completed.png diff --git a/worksheets/1-introduction/images/2_new_project.png b/docs/docs/assets/cookie-clicker-java/2_new_project.png similarity index 100% rename from worksheets/1-introduction/images/2_new_project.png rename to docs/docs/assets/cookie-clicker-java/2_new_project.png diff --git a/worksheets/1-introduction/images/3_new_activity.png b/docs/docs/assets/cookie-clicker-java/3_new_activity.png similarity index 100% rename from worksheets/1-introduction/images/3_new_activity.png rename to docs/docs/assets/cookie-clicker-java/3_new_activity.png diff --git a/worksheets/1-introduction/images/4_cookie_finder.png b/docs/docs/assets/cookie-clicker-java/4_cookie_finder.png similarity index 100% rename from worksheets/1-introduction/images/4_cookie_finder.png rename to docs/docs/assets/cookie-clicker-java/4_cookie_finder.png diff --git a/worksheets/1-introduction/images/5_android_studio_layout.png b/docs/docs/assets/cookie-clicker-java/5_android_studio_layout.png similarity index 100% rename from worksheets/1-introduction/images/5_android_studio_layout.png rename to docs/docs/assets/cookie-clicker-java/5_android_studio_layout.png diff --git a/worksheets/1-introduction/images/6_autocomplete.png b/docs/docs/assets/cookie-clicker-java/6_autocomplete.png similarity index 100% rename from worksheets/1-introduction/images/6_autocomplete.png rename to docs/docs/assets/cookie-clicker-java/6_autocomplete.png diff --git a/worksheets/1-introduction/images/7_toast_code.png b/docs/docs/assets/cookie-clicker-java/7_toast_code.png similarity index 100% rename from worksheets/1-introduction/images/7_toast_code.png rename to docs/docs/assets/cookie-clicker-java/7_toast_code.png diff --git a/worksheets/1-introduction/images/8_final_code_alt.png b/docs/docs/assets/cookie-clicker-java/8_final_code_alt.png similarity index 100% rename from worksheets/1-introduction/images/8_final_code_alt.png rename to docs/docs/assets/cookie-clicker-java/8_final_code_alt.png diff --git a/worksheets/espresso-testing/images/all_tests_passing.png b/docs/docs/assets/espresso/all_tests_passing.png similarity index 100% rename from worksheets/espresso-testing/images/all_tests_passing.png rename to docs/docs/assets/espresso/all_tests_passing.png diff --git a/worksheets/espresso-testing/images/test_failing.png b/docs/docs/assets/espresso/test_failing.png similarity index 100% rename from worksheets/espresso-testing/images/test_failing.png rename to docs/docs/assets/espresso/test_failing.png diff --git a/worksheets/espresso-testing/images/test_passing.png b/docs/docs/assets/espresso/test_passing.png similarity index 100% rename from worksheets/espresso-testing/images/test_passing.png rename to docs/docs/assets/espresso/test_passing.png diff --git a/worksheets/0-setup/assets/images/android-device-developer-mode.gif b/docs/docs/assets/setup/android-device-developer-mode.gif similarity index 100% rename from worksheets/0-setup/assets/images/android-device-developer-mode.gif rename to docs/docs/assets/setup/android-device-developer-mode.gif diff --git a/worksheets/0-setup/assets/images/android-studio-welcome.png b/docs/docs/assets/setup/android-studio-welcome.png similarity index 100% rename from worksheets/0-setup/assets/images/android-studio-welcome.png rename to docs/docs/assets/setup/android-studio-welcome.png diff --git a/worksheets/0-setup/assets/images/emulator-1-type.png b/docs/docs/assets/setup/emulator-1-type.png similarity index 100% rename from worksheets/0-setup/assets/images/emulator-1-type.png rename to docs/docs/assets/setup/emulator-1-type.png diff --git a/worksheets/0-setup/assets/images/emulator-2-version.png b/docs/docs/assets/setup/emulator-2-version.png similarity index 100% rename from worksheets/0-setup/assets/images/emulator-2-version.png rename to docs/docs/assets/setup/emulator-2-version.png diff --git a/worksheets/0-setup/assets/images/emulator-3-list.png b/docs/docs/assets/setup/emulator-3-list.png similarity index 100% rename from worksheets/0-setup/assets/images/emulator-3-list.png rename to docs/docs/assets/setup/emulator-3-list.png diff --git a/worksheets/0-setup/assets/images/emulator-4-complete.png b/docs/docs/assets/setup/emulator-4-complete.png similarity index 100% rename from worksheets/0-setup/assets/images/emulator-4-complete.png rename to docs/docs/assets/setup/emulator-4-complete.png diff --git a/worksheets/0-setup/assets/images/first-project-1-name.png b/docs/docs/assets/setup/first-project-1-name.png similarity index 100% rename from worksheets/0-setup/assets/images/first-project-1-name.png rename to docs/docs/assets/setup/first-project-1-name.png diff --git a/worksheets/0-setup/assets/images/first-project-2-version.png b/docs/docs/assets/setup/first-project-2-version.png similarity index 100% rename from worksheets/0-setup/assets/images/first-project-2-version.png rename to docs/docs/assets/setup/first-project-2-version.png diff --git a/worksheets/0-setup/assets/images/first-project-3-activity.png b/docs/docs/assets/setup/first-project-3-activity.png similarity index 100% rename from worksheets/0-setup/assets/images/first-project-3-activity.png rename to docs/docs/assets/setup/first-project-3-activity.png diff --git a/worksheets/0-setup/assets/images/first-project-4-complete.png b/docs/docs/assets/setup/first-project-4-complete.png similarity index 100% rename from worksheets/0-setup/assets/images/first-project-4-complete.png rename to docs/docs/assets/setup/first-project-4-complete.png diff --git a/worksheets/0-setup/assets/images/run-1-chooser.png b/docs/docs/assets/setup/run-1-chooser.png similarity index 100% rename from worksheets/0-setup/assets/images/run-1-chooser.png rename to docs/docs/assets/setup/run-1-chooser.png diff --git a/worksheets/0-setup/assets/images/run-2-running.png b/docs/docs/assets/setup/run-2-running.png similarity index 100% rename from worksheets/0-setup/assets/images/run-2-running.png rename to docs/docs/assets/setup/run-2-running.png diff --git a/docs/docs/cookie-clicker-java.html b/docs/docs/cookie-clicker-java.html new file mode 100644 index 0000000..5a8633d --- /dev/null +++ b/docs/docs/cookie-clicker-java.html @@ -0,0 +1,161 @@ +Cookie Clicker (Java) · codebar android tutorials
\ No newline at end of file diff --git a/docs/docs/cookie-clicker-java/index.html b/docs/docs/cookie-clicker-java/index.html new file mode 100644 index 0000000..5a8633d --- /dev/null +++ b/docs/docs/cookie-clicker-java/index.html @@ -0,0 +1,161 @@ +Cookie Clicker (Java) · codebar android tutorials
\ No newline at end of file diff --git a/docs/docs/espresso.html b/docs/docs/espresso.html new file mode 100644 index 0000000..a6e1255 --- /dev/null +++ b/docs/docs/espresso.html @@ -0,0 +1,228 @@ +Espresso UI Testing · codebar android tutorials
\ No newline at end of file diff --git a/docs/docs/espresso/index.html b/docs/docs/espresso/index.html new file mode 100644 index 0000000..a6e1255 --- /dev/null +++ b/docs/docs/espresso/index.html @@ -0,0 +1,228 @@ +Espresso UI Testing · codebar android tutorials
\ No newline at end of file diff --git a/docs/docs/krumble.html b/docs/docs/krumble.html new file mode 100644 index 0000000..8086b14 --- /dev/null +++ b/docs/docs/krumble.html @@ -0,0 +1,174 @@ +Krumble · codebar android tutorials
\ No newline at end of file diff --git a/docs/docs/krumble/index.html b/docs/docs/krumble/index.html new file mode 100644 index 0000000..8086b14 --- /dev/null +++ b/docs/docs/krumble/index.html @@ -0,0 +1,174 @@ +Krumble · codebar android tutorials
\ No newline at end of file diff --git a/docs/docs/layouts.html b/docs/docs/layouts.html new file mode 100644 index 0000000..77c6ea3 --- /dev/null +++ b/docs/docs/layouts.html @@ -0,0 +1,99 @@ +Android Layouts · codebar android tutorials
\ No newline at end of file diff --git a/docs/docs/layouts/index.html b/docs/docs/layouts/index.html new file mode 100644 index 0000000..77c6ea3 --- /dev/null +++ b/docs/docs/layouts/index.html @@ -0,0 +1,99 @@ +Android Layouts · codebar android tutorials
\ No newline at end of file diff --git a/docs/docs/maps.html b/docs/docs/maps.html new file mode 100644 index 0000000..6c53fdb --- /dev/null +++ b/docs/docs/maps.html @@ -0,0 +1,124 @@ +Google Maps · codebar android tutorials
\ No newline at end of file diff --git a/docs/docs/maps/index.html b/docs/docs/maps/index.html new file mode 100644 index 0000000..6c53fdb --- /dev/null +++ b/docs/docs/maps/index.html @@ -0,0 +1,124 @@ +Google Maps · codebar android tutorials
\ No newline at end of file diff --git a/docs/docs/more-resources.html b/docs/docs/more-resources.html new file mode 100644 index 0000000..8f8635f --- /dev/null +++ b/docs/docs/more-resources.html @@ -0,0 +1,63 @@ +Other Resources · codebar android tutorials
\ No newline at end of file diff --git a/docs/docs/more-resources/index.html b/docs/docs/more-resources/index.html new file mode 100644 index 0000000..8f8635f --- /dev/null +++ b/docs/docs/more-resources/index.html @@ -0,0 +1,63 @@ +Other Resources · codebar android tutorials
\ No newline at end of file diff --git a/docs/docs/setup.html b/docs/docs/setup.html new file mode 100644 index 0000000..d524810 --- /dev/null +++ b/docs/docs/setup.html @@ -0,0 +1,50 @@ +setup · codebar android tutorials
\ No newline at end of file diff --git a/docs/docs/setup/index.html b/docs/docs/setup/index.html new file mode 100644 index 0000000..d524810 --- /dev/null +++ b/docs/docs/setup/index.html @@ -0,0 +1,50 @@ +setup · codebar android tutorials
\ No newline at end of file diff --git a/docs/en/help.html b/docs/en/help.html new file mode 100644 index 0000000..06ce1a0 --- /dev/null +++ b/docs/en/help.html @@ -0,0 +1,7 @@ +codebar android tutorials · A website for the codebar android tutorials
\ No newline at end of file diff --git a/docs/en/help/index.html b/docs/en/help/index.html new file mode 100644 index 0000000..06ce1a0 --- /dev/null +++ b/docs/en/help/index.html @@ -0,0 +1,7 @@ +codebar android tutorials · A website for the codebar android tutorials
\ No newline at end of file diff --git a/docs/en/index.html b/docs/en/index.html new file mode 100644 index 0000000..592e37e --- /dev/null +++ b/docs/en/index.html @@ -0,0 +1,7 @@ +codebar android tutorials · A website for the codebar android tutorials
\ No newline at end of file diff --git a/docs/en/users.html b/docs/en/users.html new file mode 100644 index 0000000..fa4d90f --- /dev/null +++ b/docs/en/users.html @@ -0,0 +1 @@ +codebar android tutorials · A website for the codebar android tutorials
\ No newline at end of file diff --git a/docs/en/users/index.html b/docs/en/users/index.html new file mode 100644 index 0000000..fa4d90f --- /dev/null +++ b/docs/en/users/index.html @@ -0,0 +1 @@ +codebar android tutorials · A website for the codebar android tutorials
\ No newline at end of file diff --git a/docs/help.html b/docs/help.html new file mode 100644 index 0000000..a60dbd4 --- /dev/null +++ b/docs/help.html @@ -0,0 +1,7 @@ +codebar android tutorials · A website for the codebar android tutorials
\ No newline at end of file diff --git a/docs/help/index.html b/docs/help/index.html new file mode 100644 index 0000000..a60dbd4 --- /dev/null +++ b/docs/help/index.html @@ -0,0 +1,7 @@ +codebar android tutorials · A website for the codebar android tutorials
\ No newline at end of file diff --git a/docs/img/codebar-full-white-logo.png b/docs/img/codebar-full-white-logo.png new file mode 100644 index 0000000..8a7006f Binary files /dev/null and b/docs/img/codebar-full-white-logo.png differ diff --git a/docs/img/codebar-website-logo.png b/docs/img/codebar-website-logo.png new file mode 100644 index 0000000..7392318 Binary files /dev/null and b/docs/img/codebar-website-logo.png differ diff --git a/docs/img/coding.png b/docs/img/coding.png new file mode 100644 index 0000000..5b67f8f Binary files /dev/null and b/docs/img/coding.png differ diff --git a/docs/img/cookies.png b/docs/img/cookies.png new file mode 100644 index 0000000..a5e14d3 Binary files /dev/null and b/docs/img/cookies.png differ diff --git a/docs/img/favicon.ico b/docs/img/favicon.ico new file mode 100644 index 0000000..a0d2380 Binary files /dev/null and b/docs/img/favicon.ico differ diff --git a/docs/img/language.svg b/docs/img/language.svg new file mode 100644 index 0000000..6619593 --- /dev/null +++ b/docs/img/language.svg @@ -0,0 +1,3 @@ + + + diff --git a/docs/img/oss_logo.png b/docs/img/oss_logo.png new file mode 100644 index 0000000..8183e28 Binary files /dev/null and b/docs/img/oss_logo.png differ diff --git a/docs/img/smartphone-love.svg b/docs/img/smartphone-love.svg new file mode 100644 index 0000000..564785a --- /dev/null +++ b/docs/img/smartphone-love.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/docs/index.html b/docs/index.html new file mode 100644 index 0000000..c2ab70a --- /dev/null +++ b/docs/index.html @@ -0,0 +1,7 @@ +codebar android tutorials · A website for the codebar android tutorials
\ No newline at end of file diff --git a/docs/js/codetabs.js b/docs/js/codetabs.js new file mode 100644 index 0000000..dd01ebf --- /dev/null +++ b/docs/js/codetabs.js @@ -0,0 +1,31 @@ +/** + * Copyright (c) 2017-present, Facebook, Inc. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + +// Turn off ESLint for this file because it's sent down to users as-is. +/* eslint-disable */ +window.addEventListener('load', function() { + // add event listener for all tab + document.querySelectorAll('.nav-link').forEach(function(el) { + el.addEventListener('click', function(e) { + const groupId = e.target.getAttribute('data-group'); + document + .querySelectorAll(`.nav-link[data-group=${groupId}]`) + .forEach(function(el) { + el.classList.remove('active'); + }); + document + .querySelectorAll(`.tab-pane[data-group=${groupId}]`) + .forEach(function(el) { + el.classList.remove('active'); + }); + e.target.classList.add('active'); + document + .querySelector(`#${e.target.getAttribute('data-tab')}`) + .classList.add('active'); + }); + }); +}); diff --git a/docs/js/scrollSpy.js b/docs/js/scrollSpy.js new file mode 100644 index 0000000..0632e6c --- /dev/null +++ b/docs/js/scrollSpy.js @@ -0,0 +1,76 @@ +/** + * Copyright (c) 2017-present, Facebook, Inc. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + +/* eslint-disable prefer-arrow-callback */ +(function scrollSpy() { + const OFFSET = 10; + let timer; + let headingsCache; + const findHeadings = function findHeadings() { + return headingsCache || document.querySelectorAll('.toc-headings > li > a'); + }; + const onScroll = function onScroll() { + if (timer) { + // throttle + return; + } + timer = setTimeout(function() { + timer = null; + let activeNavFound = false; + const headings = findHeadings(); // toc nav anchors + /** + * On every call, try to find header right after <-- next header + * the one whose content is on the current screen <-- highlight this + */ + for (let i = 0; i < headings.length; i++) { + // headings[i] is current element + // if an element is already active, then current element is not active + // if no element is already active, then current element is active + let currNavActive = !activeNavFound; + /** + * Enter the following check up only when an active nav header is not yet found + * Then, check the bounding rectangle of the next header + * The headers that are scrolled passed will have negative bounding rect top + * So the first one with positive bounding rect top will be the nearest next header + */ + if (currNavActive && i < headings.length - 1) { + const heading = headings[i + 1]; + const next = decodeURIComponent(heading.href.split('#')[1]); + const nextHeader = document.getElementById(next); + + if (nextHeader) { + const top = nextHeader.getBoundingClientRect().top; + currNavActive = top > OFFSET; + } else { + console.error('Can not find header element', { + id: next, + heading, + }); + } + } + /** + * Stop searching once a first such header is found, + * this makes sure the highlighted header is the most current one + */ + if (currNavActive) { + activeNavFound = true; + headings[i].classList.add('active'); + } else { + headings[i].classList.remove('active'); + } + } + }, 100); + }; + + document.addEventListener('scroll', onScroll); + document.addEventListener('resize', onScroll); + document.addEventListener('DOMContentLoaded', function() { + // Cache the headings once the page has fully loaded. + headingsCache = findHeadings(); + onScroll(); + }); +})(); diff --git a/docs/sitemap.xml b/docs/sitemap.xml new file mode 100644 index 0000000..a44deb9 --- /dev/null +++ b/docs/sitemap.xml @@ -0,0 +1 @@ +https://codebar.github.io/helpweekly0.5https://codebar.github.io/indexweekly0.5https://codebar.github.io/usersweekly0.5https://codebar.github.io/android-tutorials/docs/activity-lifecyclehourly1.0https://codebar.github.io/android-tutorials/docs/cookie-clicker-javahourly1.0https://codebar.github.io/android-tutorials/docs/espressohourly1.0https://codebar.github.io/android-tutorials/docs/krumblehourly1.0https://codebar.github.io/android-tutorials/docs/layoutshourly1.0https://codebar.github.io/android-tutorials/docs/mapshourly1.0https://codebar.github.io/android-tutorials/docs/more-resourceshourly1.0https://codebar.github.io/android-tutorials/docs/setuphourly1.0 \ No newline at end of file diff --git a/docs/users.html b/docs/users.html new file mode 100644 index 0000000..cf4d6e1 --- /dev/null +++ b/docs/users.html @@ -0,0 +1 @@ +codebar android tutorials · A website for the codebar android tutorials
\ No newline at end of file diff --git a/docs/users/index.html b/docs/users/index.html new file mode 100644 index 0000000..cf4d6e1 --- /dev/null +++ b/docs/users/index.html @@ -0,0 +1 @@ +codebar android tutorials · A website for the codebar android tutorials
\ No newline at end of file diff --git a/images/java.png b/images/java.png deleted file mode 100644 index 0737cf5..0000000 Binary files a/images/java.png and /dev/null differ diff --git a/images/kotlin.png b/images/kotlin.png deleted file mode 100644 index 52a99f9..0000000 Binary files a/images/kotlin.png and /dev/null differ diff --git a/index.md b/index.md deleted file mode 100644 index 05a38ba..0000000 --- a/index.md +++ /dev/null @@ -1,57 +0,0 @@ ---- -title: Codebar Android Workshop Resources -layout: page -redirect_from: /worksheets/ ---- - -This is the home for the codebar android tutorials! These are designed to be used at the very special codebar Android workshops only. If you're super lucky there may be a coach at regular codebar who can help you through a tutorial, but we can't promise that! - -
-
-

- star - android - star -

-
-

Getting Setup

-

All the things you need to do before attending a codebar android workshop

- Get Set Up -
-
-
- -## Worksheets - -
- -
-
-

- Java -

-
- -

These are where are typical android tutorials go, they use the Java Language

- Java tutorials -
-
-
- -
-
-

- Kotlin -

-
- -

These are our shiny new tutorials which use the Kotlin Language instead.

- Kotlin Tutorials -
-
-
- - - - -
diff --git a/java.md b/java.md deleted file mode 100644 index a1a2d88..0000000 --- a/java.md +++ /dev/null @@ -1,103 +0,0 @@ ---- -title: Codebar Android Workshop Resources -layout: page -redirect_from: /java/ ---- - -This is the home for the codebar android tutorials! These are designed to be used at the very special codebar Android workshops only. If you're super lucky there may be a coach at regular codebar who can help you through a tutorial, but we can't promise that! - -
-
-

- star - android - star -

-
-

Getting Setup

-

All the things you need to do before attending a codebar android workshop

- Get Set Up -
-
-
- -## Worksheets - -
- -
-
-

- phone_android - touch_app - cake -

-
-

Introduction

-

The best starting place to learn Android by building a cookie clicker

- Read Tutorial -
-
-
- -
-
-

- personal_video - touch_app - phone_android -

-
-

Espresso UI Testing

-

Automatically test your cookie clicker app using Espresso

- Read Tutorial -
-
-
- -
-
-

- view_module - person - picture_in_picture_alt -

-
-

Layouts

-

Go further into how the layout system works in Android

- Read Tutorial -
-
-
- -
-
-

- stay_current_portrait - update - stay_current_landscape -

-
-

Activity Lifecycle

-

Learn how the android activity lifecycle works

- Read Tutorial -
-
-
- -
-
-

- place - near_me - my_location -

-
-

Google Maps

-

Learn how to put Google Maps into your own app!

- Read Tutorial -
-
-
- -
diff --git a/kotlin.md b/kotlin.md deleted file mode 100644 index 1054202..0000000 --- a/kotlin.md +++ /dev/null @@ -1,45 +0,0 @@ ---- -title: Codebar Android Kotlin Workshop Resources -layout: page -redirect_from: /kotlin/ ---- - -This is the home for the codebar android (Kotlin) tutorials! - -
-
-

- star - android - star -

-
-

Getting Setup

-

All the things you need to do before attending a codebar android workshop

- Get Set Up -
-
-
- -## Worksheets - -
- -
-
-

- phone_android - touch_app - favorite -

-
-

Introduction

-

The best starting place to learn Android by building a cookie themed tinder app

- Read Tutorial -
-
-
- - - -
diff --git a/src/.dockerignore b/src/.dockerignore new file mode 100644 index 0000000..27d2dae --- /dev/null +++ b/src/.dockerignore @@ -0,0 +1,2 @@ +*/node_modules +*.log diff --git a/src/.gitignore b/src/.gitignore new file mode 100644 index 0000000..5395ea7 --- /dev/null +++ b/src/.gitignore @@ -0,0 +1,12 @@ +.DS_Store + +node_modules + +lib/core/metadata.js +lib/core/MetadataBlog.js + +website/translated_docs +website/build/ +website/yarn.lock +website/node_modules +website/i18n/* diff --git a/worksheets/3-activity-lifecycle/index.md b/src/docs/activity-lifecycle.md similarity index 92% rename from worksheets/3-activity-lifecycle/index.md rename to src/docs/activity-lifecycle.md index 695d97c..317fdf7 100644 --- a/worksheets/3-activity-lifecycle/index.md +++ b/src/docs/activity-lifecycle.md @@ -1,8 +1,10 @@ --- -layout: page -title: Android Dev - Activity Lifecycle +id: activity-lifecycle +title: Activity Lifecycle --- +#Android Dev - Activity Lifecycle + (this is a mini tutorial that can be completed at any time) ## 1. Intro @@ -12,7 +14,7 @@ The aim of this tutorial is to look at how the activity lifecycle works which lo ![](https://d2mxuefqeaa7sj.cloudfront.net/s_E25ED0FC0DF5A9B6B084CB936BAE886D8F9B2E37A2183F438D75F8F9BC39F410_1487708990139_file.png) -> for more information take a look at (https://developer.android.com/guide/components/activities/activity-lifecycle.html)[] There's also a really great video by Kristin Marsicano (https://realm.io/news/activities-in-the-wild-exploring-the-activity-lifecycle-android/)[] +> for more information take a look at (https://developer.android.com/guide/components/activities/activity-lifecycle.html) There's also a really great video by Kristin Marsicano (https://realm.io/news/activities-in-the-wild-exploring-the-activity-lifecycle-android/) ## 2. Logging diff --git a/src/docs/assets/cookie-clicker-java/1_completed.png b/src/docs/assets/cookie-clicker-java/1_completed.png new file mode 100644 index 0000000..ab76c17 Binary files /dev/null and b/src/docs/assets/cookie-clicker-java/1_completed.png differ diff --git a/src/docs/assets/cookie-clicker-java/2_new_project.png b/src/docs/assets/cookie-clicker-java/2_new_project.png new file mode 100644 index 0000000..ceb5906 Binary files /dev/null and b/src/docs/assets/cookie-clicker-java/2_new_project.png differ diff --git a/src/docs/assets/cookie-clicker-java/3_new_activity.png b/src/docs/assets/cookie-clicker-java/3_new_activity.png new file mode 100644 index 0000000..4525b58 Binary files /dev/null and b/src/docs/assets/cookie-clicker-java/3_new_activity.png differ diff --git a/src/docs/assets/cookie-clicker-java/4_cookie_finder.png b/src/docs/assets/cookie-clicker-java/4_cookie_finder.png new file mode 100644 index 0000000..21037f4 Binary files /dev/null and b/src/docs/assets/cookie-clicker-java/4_cookie_finder.png differ diff --git a/src/docs/assets/cookie-clicker-java/5_android_studio_layout.png b/src/docs/assets/cookie-clicker-java/5_android_studio_layout.png new file mode 100644 index 0000000..0ca62ce Binary files /dev/null and b/src/docs/assets/cookie-clicker-java/5_android_studio_layout.png differ diff --git a/src/docs/assets/cookie-clicker-java/6_autocomplete.png b/src/docs/assets/cookie-clicker-java/6_autocomplete.png new file mode 100644 index 0000000..736a480 Binary files /dev/null and b/src/docs/assets/cookie-clicker-java/6_autocomplete.png differ diff --git a/src/docs/assets/cookie-clicker-java/7_toast_code.png b/src/docs/assets/cookie-clicker-java/7_toast_code.png new file mode 100644 index 0000000..afbd081 Binary files /dev/null and b/src/docs/assets/cookie-clicker-java/7_toast_code.png differ diff --git a/src/docs/assets/cookie-clicker-java/8_final_code_alt.png b/src/docs/assets/cookie-clicker-java/8_final_code_alt.png new file mode 100644 index 0000000..2f6d0c7 Binary files /dev/null and b/src/docs/assets/cookie-clicker-java/8_final_code_alt.png differ diff --git a/src/docs/assets/espresso/all_tests_passing.png b/src/docs/assets/espresso/all_tests_passing.png new file mode 100644 index 0000000..a52a550 Binary files /dev/null and b/src/docs/assets/espresso/all_tests_passing.png differ diff --git a/src/docs/assets/espresso/test_failing.png b/src/docs/assets/espresso/test_failing.png new file mode 100644 index 0000000..da794b7 Binary files /dev/null and b/src/docs/assets/espresso/test_failing.png differ diff --git a/src/docs/assets/espresso/test_passing.png b/src/docs/assets/espresso/test_passing.png new file mode 100644 index 0000000..ed8a126 Binary files /dev/null and b/src/docs/assets/espresso/test_passing.png differ diff --git a/src/docs/assets/setup/android-device-developer-mode.gif b/src/docs/assets/setup/android-device-developer-mode.gif new file mode 100644 index 0000000..2c1a8fd Binary files /dev/null and b/src/docs/assets/setup/android-device-developer-mode.gif differ diff --git a/src/docs/assets/setup/android-studio-welcome.png b/src/docs/assets/setup/android-studio-welcome.png new file mode 100644 index 0000000..d13c6fb Binary files /dev/null and b/src/docs/assets/setup/android-studio-welcome.png differ diff --git a/src/docs/assets/setup/emulator-1-type.png b/src/docs/assets/setup/emulator-1-type.png new file mode 100644 index 0000000..3591de6 Binary files /dev/null and b/src/docs/assets/setup/emulator-1-type.png differ diff --git a/src/docs/assets/setup/emulator-2-version.png b/src/docs/assets/setup/emulator-2-version.png new file mode 100644 index 0000000..34fa02f Binary files /dev/null and b/src/docs/assets/setup/emulator-2-version.png differ diff --git a/src/docs/assets/setup/emulator-3-list.png b/src/docs/assets/setup/emulator-3-list.png new file mode 100644 index 0000000..e112915 Binary files /dev/null and b/src/docs/assets/setup/emulator-3-list.png differ diff --git a/src/docs/assets/setup/emulator-4-complete.png b/src/docs/assets/setup/emulator-4-complete.png new file mode 100644 index 0000000..458a85a Binary files /dev/null and b/src/docs/assets/setup/emulator-4-complete.png differ diff --git a/src/docs/assets/setup/first-project-1-name.png b/src/docs/assets/setup/first-project-1-name.png new file mode 100644 index 0000000..1092340 Binary files /dev/null and b/src/docs/assets/setup/first-project-1-name.png differ diff --git a/src/docs/assets/setup/first-project-2-version.png b/src/docs/assets/setup/first-project-2-version.png new file mode 100644 index 0000000..3a71b13 Binary files /dev/null and b/src/docs/assets/setup/first-project-2-version.png differ diff --git a/src/docs/assets/setup/first-project-3-activity.png b/src/docs/assets/setup/first-project-3-activity.png new file mode 100644 index 0000000..a297768 Binary files /dev/null and b/src/docs/assets/setup/first-project-3-activity.png differ diff --git a/src/docs/assets/setup/first-project-4-complete.png b/src/docs/assets/setup/first-project-4-complete.png new file mode 100644 index 0000000..6fa702d Binary files /dev/null and b/src/docs/assets/setup/first-project-4-complete.png differ diff --git a/src/docs/assets/setup/run-1-chooser.png b/src/docs/assets/setup/run-1-chooser.png new file mode 100644 index 0000000..e3dc1b6 Binary files /dev/null and b/src/docs/assets/setup/run-1-chooser.png differ diff --git a/src/docs/assets/setup/run-2-running.png b/src/docs/assets/setup/run-2-running.png new file mode 100644 index 0000000..a5e8a0a Binary files /dev/null and b/src/docs/assets/setup/run-2-running.png differ diff --git a/src/docs/attributions b/src/docs/attributions new file mode 100644 index 0000000..7cea656 --- /dev/null +++ b/src/docs/attributions @@ -0,0 +1,7 @@ +--- +id: attributions +title: Attributions +--- + +
Icons made by Freepik from www.flaticon.com
diff --git a/worksheets/1-introduction/index.md b/src/docs/cookie-clicker-java.md similarity index 92% rename from worksheets/1-introduction/index.md rename to src/docs/cookie-clicker-java.md index 8765bdb..e2ec9b4 100644 --- a/worksheets/1-introduction/index.md +++ b/src/docs/cookie-clicker-java.md @@ -1,8 +1,10 @@ --- -layout: page -title: Introduction to Android Development +id: cookie-clicker-java +title: Cookie Clicker (Java) --- +# Introduction to Android Development + ## 1. Intro The aim of this worksheet is to create a [cookie clicker game](http://orteil.dashnet.org/cookieclicker/), with a cookie image that can be tapped to increase the score. @@ -11,11 +13,11 @@ To follow this tutorial, you will need to [get set up for Android development]({ Feel free to chose a different topic other than cookies, we really like the popular pokémon Goomy Clicker - what things do you like? -![The completed application](images/1_completed.png) +![The completed application](assets/cookie-clicker-java/1_completed.png) ## 2. Create New Project -![Creating a new project in Android Studio](images/2_new_project.png) +![Creating a new project in Android Studio](assets/cookie-clicker-java/2_new_project.png) > Set the name of your app, this is what people will see when they install your app. The company name, and the resulting package name, is how Google keeps track of apps - it needs to be unique, so maybe use something with your name? @@ -23,7 +25,7 @@ Next, we set the SDK level to `14` - It'll give you a helpful guide for how many Finally, we want to create an `Empty Activity` -![Creating a new activity in Android Studio](images/3_new_activity.png) +![Creating a new activity in Android Studio](assets/cookie-clicker-java/3_new_activity.png) > We are going to keep the default of MainActivity.java and activity_main.xml :smile: @@ -68,7 +70,7 @@ Next, we want to save the following cookie image into our project. You can eithe Because android has different density devices, we usually need to provide different resolution images for all those different devices. If we only provide it in one folder, Android will scale the image for other devices, but this might cause make the image look bad! -![Where to place the cookie image file](images/4_cookie_finder.png) +![Where to place the cookie image file](assets/cookie-clicker-java/4_cookie_finder.png) If we want to then use that image in our Android app we can use an attribute `android:src="@drawable/cookie"` - autocomplete will be your friend here! @@ -78,7 +80,7 @@ Next, we want to look at having a TextView for to keep track of how many cookies Another neat feature of using a RelativeLayout is how we can position things **in relation** to other things. So we can say that this TextView should `appearAbove` the image's id. In order for this to work, the TextView needs to know where the ImageView is, so the code for the TextView needs to go below the ImageView. -![The cookie clicker layout file in Android Studio](images/5_android_studio_layout.png) +![The cookie clicker layout file in Android Studio](assets/cookie-clicker-java/5_android_studio_layout.png) > this is how our layout code finally looked :smile: @@ -104,11 +106,11 @@ protected void onCreate(Bundle savedInstanceState) { After, we can set an onClickListener, which is again similar to the JavaScript element.click() method. The trick with Android Studio is to let it write as much code as possible, it has an extremely powerful auto completer! When you start typing onClickListener, you should see a suggestion with curly brackets on it. If you press tab at this point, it'll auto complete the entire code that you need! -![Autocomplete in Android Studio](images/6_autocomplete.png) +![Autocomplete in Android Studio](assets/cookie-clicker-java/6_autocomplete.png) Inside our method we're going to put a Toast. These are those little messages at the bottom of the phone that show for a short period of time. They're really good! -![Our Android toast code](images/7_toast_code.png) +![Our Android toast code](assets/cookie-clicker-java/7_toast_code.png) Run your app now, and see what happens when you tap on the cookie! diff --git a/worksheets/espresso-testing/index.md b/src/docs/espresso.md similarity index 95% rename from worksheets/espresso-testing/index.md rename to src/docs/espresso.md index 674daee..ced5a0c 100644 --- a/worksheets/espresso-testing/index.md +++ b/src/docs/espresso.md @@ -1,12 +1,12 @@ --- -layout: page +id: espresso title: Espresso UI Testing --- -## Introduction -This tutorial follows on from the [first one where you built a cookie clicker]({{ site.baseurl }}/worksheets/1-introduction/). If you worked on that tutorial already, follow along using the code you wrote previously. +# Espresso UI Testing -If you didn't work on that tutorial, or you don't have the code anymore, you can download a completed project to follow along with [here](downloads/cookie-clicker.zip). Download the file, unzip it and then open it with Android Studio using the *Open an existing Android Studio project* button on the welcome screen. +## Introduction +This tutorial follows on from the [first one where you built a cookie clicker](cookie-clicker-java). If you worked on that tutorial already, follow along using the code you wrote previously. ## What is UI testing? To make sure your software works properly you need to test it whenever you make a change that you want to release to your users. To do this manually for even a small app this is a boring, repetitive, and time-consuming job. That's precisely the sort of thing which we use computers for! Automated tests are pieces of code which test that your software is working correctly. You can set them up to run regularly and on many devices so you don't have to manually test your app every time you make a change. Plus they're usually simple and fun to create! @@ -162,11 +162,11 @@ public class CookieClickerTest { Let's run our test to make sure the app is working correctly. Press the "play" button to the left of the method and pick your Android device or emulator to run the tests on. This might take a short amount of time but the app should appear and then quickly disappear, and Android Studio should show a "Tests passed" message. This might even be too quick to see, and that's the advantage of using automated tests! Run it a few times if you want to test it is working all the time. -![Test passing](images/test_passing.png) +![Test passing](assets/espresso/test_passing.png) Just to see what happens when a test fails, change the check to look for `"1"` and run the test again. You should see an error message saying what happened and some hints on how to fix it. There's a lot of information there, but there's normally enough to know what went wrong. -![Test failing](images/test_failing.png) +![Test failing](assets/espresso/test_failing.png) Change you test back to check for `"0"` so that it passes again. @@ -238,7 +238,7 @@ If you run this test it should take long enough that you can see what's going on As well as running the tests one by one, you can run all your apps tests by pressing on the "double play" icon next to the `public class CookieClickerTest` line. This will run all the tests in this file one by one and let you know which ones pass and fail. -![All tests passing](images/all_tests_passing.png) +![All tests passing](assets/espresso/all_tests_passing.png) ## Further information You have now tested your cookie clicker app! diff --git a/worksheets/kotlin/1-krumble/index.md b/src/docs/krumble.md similarity index 99% rename from worksheets/kotlin/1-krumble/index.md rename to src/docs/krumble.md index 21fe1b2..aac6a18 100644 --- a/worksheets/kotlin/1-krumble/index.md +++ b/src/docs/krumble.md @@ -1,8 +1,10 @@ --- -layout: page -title: Introduction to Kotlin by building a cookie themed tinder +id: krumble +title: Krumble --- +# Introduction to Kotlin by building a cookie themed tinder + The aim of this tutorial is to build a dating like app for cookies! We'll have a list of cookies to either like or dislike! ![Imgur](https://i.imgur.com/3u9ATGZ.png) diff --git a/worksheets/2-layouts/index.md b/src/docs/layouts.md similarity index 98% rename from worksheets/2-layouts/index.md rename to src/docs/layouts.md index 99c9157..93590c6 100644 --- a/worksheets/2-layouts/index.md +++ b/src/docs/layouts.md @@ -1,8 +1,10 @@ --- -layout: page -title: Android Dev - Layouts +id: layouts +title: Android Layouts --- +# Android Dev - Layouts + (this is a mini tutorial that can be completed at any time) ## 1. Intro diff --git a/worksheets/4-maps/index.md b/src/docs/maps.md similarity index 99% rename from worksheets/4-maps/index.md rename to src/docs/maps.md index cfa9dc5..be83a41 100644 --- a/worksheets/4-maps/index.md +++ b/src/docs/maps.md @@ -1,8 +1,9 @@ --- -title: Android Dev - Google Maps -layout: page +id: maps +title: Google Maps --- +# Android Dev - Google Maps ## Introduction diff --git a/worksheets/0-resources.md b/src/docs/more-resources.md similarity index 94% rename from worksheets/0-resources.md rename to src/docs/more-resources.md index af80c14..b169cb2 100644 --- a/worksheets/0-resources.md +++ b/src/docs/more-resources.md @@ -1,7 +1,8 @@ --- layout: page -title: Resources for Android Development +title: Other Resources --- +# Resources for Android Development Everyone will need **Android Studio** - https://developer.android.com/studio/index.html diff --git a/worksheets/0-setup/index.md b/src/docs/setup.md similarity index 88% rename from worksheets/0-setup/index.md rename to src/docs/setup.md index a5132e5..ec0e795 100644 --- a/worksheets/0-setup/index.md +++ b/src/docs/setup.md @@ -1,7 +1,7 @@ --- -layout: page -title: Getting set up for Android development +id: setup --- +# Setting up Android Studio *This tutorial will guide you through the process of setting up Android Studio, a phone or emulator, and then making sure it is all working by running an app on it. If you are attending an Android workshop at Codebar, we encourage you to work through this tutorial before you come along. If you get stuck, don't worry, just stop where you are, and a coach can help you on the day. It is very useful, however, if you can at least download Android Studio before you arrive as it is a big download and the internet can become a problem if too many people try and download it at once.* @@ -12,7 +12,7 @@ You first need to [download the installer from this page](https://developer.andr Once you have finished the installation, you will be greeted with this lovely welcome screen! -![Android Studio Welcome Screen](assets/images/android-studio-welcome.png) +![Android Studio Welcome Screen](assets/setup/android-studio-welcome.png) ## 2. Creating your first Android project We are now going to create an Android project within Android Studio. On the welcome screen, press *Start a new Android Studio project*. This will open a window which will ask you for a few things about your new application. Give it a name such as *My First App* and then fill in the company domain box. If you have your own website (such as `adalovelace.co.uk`) you can use that. If not, use something like `yourname.codebar.com`. It doesn't matter if this is a real website, this is just a way for Android to give your app a unique identifier. @@ -21,21 +21,21 @@ We are now going to create an Android project within Android Studio. On the welc You should also choose a location for the project which is where the files will be stored. When you're done, press the next button. -![Setting the Android project name](assets/images/first-project-1-name.png) +![Setting the Android project name](assets/setup/first-project-1-name.png) On the next screen, you are asked which Android phones you want to support. You can leave that at the default (which in my case is Android 4.4, KitKat). If you are interested, you can click on the *Help me choose* link to see what percentage of users run each version of Android. Make sure only *Phone & tablets* is checked and press *Next*. > Did you notice that different versions of Android have different names? The third version of Android was called *Cupcake*. The fourth version was called *Doughnut*. Every version since has carried on with a "sweet treat" starting with the next letter of the alphabet. You can see a list of all the names [here](https://en.wikipedia.org/wiki/Android_version_history). -![Choosing which version of Android to support](assets/images/first-project-2-version.png) +![Choosing which version of Android to support](assets/setup/first-project-2-version.png) Once the downloads have completed, press *Next* again and then choose the type of *Activity* you want your app to use. An Activity is how Android refers to a screen within apps. Your app can have multiple activities, and you can move between them to see different parts of the app. For now, we want to create an app with a *Empty activity*. Make sure that is selected and then press *Next*. -![Selected the type of activity for our Android app](assets/images/first-project-3-activity.png) +![Selected the type of activity for our Android app](assets/setup/first-project-3-activity.png) Leave the next screen with all the default options (these are the names of the files Android Studio will create for you) and press *Finish*. In a few seconds, the main Android Studio window will open. For now, it will look blank, but we will be able to build and run our app from here in a minute. -![The Android Studio IDE when the project is created](assets/images/first-project-4-complete.png) +![The Android Studio IDE when the project is created](assets/setup/first-project-4-complete.png) First, we need to set up a phone for it to run on. @@ -47,7 +47,7 @@ Grab you Android phone and plug it into your computer with a USB cable. If you a Now, on your Android phone you need to make sure *USB debugging* is turned on. Go to the phone settings and then scroll down to *About phone*. On this screen, continue to tap on the *Build number* section until it shows a message saying *You are now a developer* (if only it were always that easy!). -![Android Device Developer Mode](assets/images/android-device-developer-mode.gif) +![Android Device Developer Mode](assets/setup/android-device-developer-mode.gif) Now you are in developer mode, press back and you should see a new *Developer options* menu. Tap into there and make sure the switch at the top of the screen is turned on. Then scroll down and make sure *USB Debugging* is also turned on. @@ -58,29 +58,29 @@ First, in Android Studio with your project open, Launch the Android Virtual Devi On this screen, you need to pick which type of device you want to create. Feel free to browse around, but we are going to choose the *Phone* category and then the *Pixel* device. Press *Next*. -![Selecting the emulator device type](assets/images/emulator-1-type.png) +![Selecting the emulator device type](assets/setup/emulator-1-type.png) We are now asked to choose which version of Android we want to use. Make sure the recommended tab is selected and then select any of the options by pressing the *Download* link. You might be asked to accept some terms to continue. Once the download is complete you can press *Finish* to go back to the screen and select that version of Android and press *Next* again. -![Selecting the emulator device type](assets/images/emulator-2-version.png) +![Selecting the emulator device type](assets/setup/emulator-2-version.png) On the next screen leave everything as it is and press *Finish*. This will finish creating the emulator and add it to the list with a name like *Pixel API 23* (your name might be slightly different if you chose a different Android version). -![The list of emulators](assets/images/emulator-3-list.png) +![The list of emulators](assets/setup/emulator-3-list.png) You can now start the emulator by pressing the play button next to your newly created emulator. It will take a few minutes to start but will eventually show an Android phone in a window on your computer. -![The android emulator running](assets/images/emulator-4-complete.png) +![The android emulator running](assets/setup/emulator-4-complete.png) Having troubles setting up the emulator? Check out this [troubleshooting guide](https://developer.android.com/studio/run/emulator-troubleshooting). ## 4. Running the app on your phone/emulator We are now going to run your first application to make sure everything is working. All you need to do is press the run button in the toolbar of your Android Studio project window and then make sure your phone or emulator is selected in the window which pops up. -![Choosing the Android device to run the app on](assets/images/run-1-chooser.png) +![Choosing the Android device to run the app on](assets/setup/run-1-chooser.png) After a short time, the app will be built and run on your phone or emulator. It should look like this: -![Our app running on the Android emulator](assets/images/run-2-running.png) +![Our app running on the Android emulator](assets/setup/run-2-running.png) That's it! You're all set up and ready for the [first tutorial]({{ site.baseurl }}/worksheets/1-introduction/)! You can also view some more links over on the [resources page]({{ site.baseurl }}/worksheets/0-resources.html). diff --git a/src/website/README.md b/src/website/README.md new file mode 100644 index 0000000..7391779 --- /dev/null +++ b/src/website/README.md @@ -0,0 +1,193 @@ +This website was created with [Docusaurus](https://docusaurus.io/). + +# What's In This Document + +* [Get Started in 5 Minutes](#get-started-in-5-minutes) +* [Directory Structure](#directory-structure) +* [Editing Content](#editing-content) +* [Adding Content](#adding-content) +* [Full Documentation](#full-documentation) + +# Get Started in 5 Minutes + +1. Make sure all the dependencies for the website are installed: + +```sh +# Install dependencies +$ yarn +``` +2. Run your dev server: + +```sh +# Start the site +$ yarn start +``` + +## Directory Structure + +Your project file structure should look something like this + +``` +my-docusaurus/ + docs/ + doc-1.md + doc-2.md + doc-3.md + website/ + blog/ + 2016-3-11-oldest-post.md + 2017-10-24-newest-post.md + core/ + node_modules/ + pages/ + static/ + css/ + img/ + package.json + sidebar.json + siteConfig.js +``` + +# Editing Content + +## Editing an existing docs page + +Edit docs by navigating to `docs/` and editing the corresponding document: + +`docs/doc-to-be-edited.md` + +```markdown +--- +id: page-needs-edit +title: This Doc Needs To Be Edited +--- + +Edit me... +``` + +For more information about docs, click [here](https://docusaurus.io/docs/en/navigation) + +## Editing an existing blog post + +Edit blog posts by navigating to `website/blog` and editing the corresponding post: + +`website/blog/post-to-be-edited.md` +```markdown +--- +id: post-needs-edit +title: This Blog Post Needs To Be Edited +--- + +Edit me... +``` + +For more information about blog posts, click [here](https://docusaurus.io/docs/en/adding-blog) + +# Adding Content + +## Adding a new docs page to an existing sidebar + +1. Create the doc as a new markdown file in `/docs`, example `docs/newly-created-doc.md`: + +```md +--- +id: newly-created-doc +title: This Doc Needs To Be Edited +--- + +My new content here.. +``` + +1. Refer to that doc's ID in an existing sidebar in `website/sidebar.json`: + +```javascript +// Add newly-created-doc to the Getting Started category of docs +{ + "docs": { + "Getting Started": [ + "quick-start", + "newly-created-doc" // new doc here + ], + ... + }, + ... +} +``` + +For more information about adding new docs, click [here](https://docusaurus.io/docs/en/navigation) + +## Adding a new blog post + +1. Make sure there is a header link to your blog in `website/siteConfig.js`: + +`website/siteConfig.js` +```javascript +headerLinks: [ + ... + { blog: true, label: 'Blog' }, + ... +] +``` + +2. Create the blog post with the format `YYYY-MM-DD-My-Blog-Post-Title.md` in `website/blog`: + +`website/blog/2018-05-21-New-Blog-Post.md` + +```markdown +--- +author: Frank Li +authorURL: https://twitter.com/foobarbaz +authorFBID: 503283835 +title: New Blog Post +--- + +Lorem Ipsum... +``` + +For more information about blog posts, click [here](https://docusaurus.io/docs/en/adding-blog) + +## Adding items to your site's top navigation bar + +1. Add links to docs, custom pages or external links by editing the headerLinks field of `website/siteConfig.js`: + +`website/siteConfig.js` +```javascript +{ + headerLinks: [ + ... + /* you can add docs */ + { doc: 'my-examples', label: 'Examples' }, + /* you can add custom pages */ + { page: 'help', label: 'Help' }, + /* you can add external links */ + { href: 'https://github.com/facebook/docusaurus', label: 'GitHub' }, + ... + ], + ... +} +``` + +For more information about the navigation bar, click [here](https://docusaurus.io/docs/en/navigation) + +## Adding custom pages + +1. Docusaurus uses React components to build pages. The components are saved as .js files in `website/pages/en`: +1. If you want your page to show up in your navigation header, you will need to update `website/siteConfig.js` to add to the `headerLinks` element: + +`website/siteConfig.js` +```javascript +{ + headerLinks: [ + ... + { page: 'my-new-custom-page', label: 'My New Custom Page' }, + ... + ], + ... +} +``` + +For more information about custom pages, click [here](https://docusaurus.io/docs/en/custom-pages). + +# Full Documentation + +Full documentation can be found on the [website](https://docusaurus.io/). diff --git a/src/website/core/Footer.js b/src/website/core/Footer.js new file mode 100644 index 0000000..497af51 --- /dev/null +++ b/src/website/core/Footer.js @@ -0,0 +1,49 @@ +/** + * Copyright (c) 2017-present, Facebook, Inc. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + +const React = require('react'); + +class Footer extends React.Component { + docUrl(doc, language) { + const baseUrl = this.props.config.baseUrl; + const docsUrl = this.props.config.docsUrl; + const docsPart = `${docsUrl ? `${docsUrl}/` : ''}`; + const langPart = `${language ? `${language}/` : ''}`; + return `${baseUrl}${docsPart}${langPart}${doc}`; + } + + pageUrl(doc, language) { + const baseUrl = this.props.config.baseUrl; + return baseUrl + (language ? `${language}/` : '') + doc; + } + + render() { + return ( + + ); + } +} + +module.exports = Footer; diff --git a/src/website/package.json b/src/website/package.json new file mode 100644 index 0000000..b012923 --- /dev/null +++ b/src/website/package.json @@ -0,0 +1,14 @@ +{ + "scripts": { + "examples": "docusaurus-examples", + "start": "docusaurus-start", + "build": "docusaurus-build", + "publish-gh-pages": "docusaurus-publish", + "write-translations": "docusaurus-write-translations", + "version": "docusaurus-version", + "rename-version": "docusaurus-rename-version" + }, + "devDependencies": { + "docusaurus": "^1.14.0" + } +} diff --git a/src/website/pages/en/help.js b/src/website/pages/en/help.js new file mode 100644 index 0000000..2b790e4 --- /dev/null +++ b/src/website/pages/en/help.js @@ -0,0 +1,54 @@ +/** + * Copyright (c) 2017-present, Facebook, Inc. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + +const React = require('react'); + +const CompLibrary = require('../../core/CompLibrary.js'); + +const Container = CompLibrary.Container; +const GridBlock = CompLibrary.GridBlock; + +function Help(props) { + const {config: siteConfig, language = ''} = props; + const {baseUrl, docsUrl} = siteConfig; + const docsPart = `${docsUrl ? `${docsUrl}/` : ''}`; + const langPart = `${language ? `${language}/` : ''}`; + const docUrl = doc => `${baseUrl}${docsPart}${langPart}${doc}`; + + const supportLinks = [ + { + content: `Learn more using the [documentation on this site.](${docUrl( + 'doc1.html', + )})`, + title: 'Browse Docs', + }, + { + content: 'Ask questions about the documentation and project', + title: 'Join the community', + }, + { + content: "Find out what's new with this project", + title: 'Stay up to date', + }, + ]; + + return ( +
+ +
+
+

Need help?

+
+

This project is maintained by a dedicated group of people.

+ +
+
+
+ ); +} + +module.exports = Help; diff --git a/src/website/pages/en/index.js b/src/website/pages/en/index.js new file mode 100644 index 0000000..60ddb09 --- /dev/null +++ b/src/website/pages/en/index.js @@ -0,0 +1,124 @@ +/** + * Copyright (c) 2017-present, Facebook, Inc. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + +const React = require('react'); + +const CompLibrary = require('../../core/CompLibrary.js'); + +const MarkdownBlock = CompLibrary.MarkdownBlock; /* Used to read markdown */ +const Container = CompLibrary.Container; +const GridBlock = CompLibrary.GridBlock; + +class HomeSplash extends React.Component { + render() { + const {siteConfig, language = ''} = this.props; + const {baseUrl, docsUrl} = siteConfig; + const docsPart = `${docsUrl ? `${docsUrl}/` : ''}`; + const langPart = `${language ? `${language}/` : ''}`; + const docUrl = doc => `${baseUrl}${docsPart}${langPart}${doc}`; + + const SplashContainer = props => ( +
+
+
{props.children}
+
+
+ ); + + const Logo = props => ( +
+
+ ); + + const ProjectTitle = () => ( +

+ {siteConfig.title} + {siteConfig.tagline} +

+ ); + + const PromoSection = props => ( +
+
+
{props.children}
+
+
+ ); + + const Button = props => ( +
+ + {props.children} + +
+ ); + + return ( + + +
+ +
+
+ ); + } +} + +class Index extends React.Component { + render() { + const {config: siteConfig, language = ''} = this.props; + const {baseUrl} = siteConfig; + + const Block = props => ( + + + + ); + + const Features = () => ( + + {[ + { + content: 'How to make your computer ready for making Android apps.', + image: `${baseUrl}img/coding.png`, + imageAlign: 'top', + title: '[Getting Set Up](docs/setup)', + }, + { + content: 'Learn how to build a cookie clicker app using java', + image: `${baseUrl}img/cookies.png`, + imageAlign: 'top', + title: '[Cookie Clicker (Java)](docs/cookie-clicker-java)', + }, + { + content: 'Learn how to build a cookie themed tinder using Kotlin', + image: `${baseUrl}img/smartphone-love.svg`, + imageAlign: 'top', + title: '[Cookie Themed Tinder](docs/krumble)', + } + ]} + + ); + + + return ( +
+ + +
+ ); + } +} + +module.exports = Index; diff --git a/src/website/pages/en/users.js b/src/website/pages/en/users.js new file mode 100644 index 0000000..039dc39 --- /dev/null +++ b/src/website/pages/en/users.js @@ -0,0 +1,48 @@ +/** + * Copyright (c) 2017-present, Facebook, Inc. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + +const React = require('react'); + +const CompLibrary = require('../../core/CompLibrary.js'); + +const Container = CompLibrary.Container; + +class Users extends React.Component { + render() { + const {config: siteConfig} = this.props; + if ((siteConfig.users || []).length === 0) { + return null; + } + + const editUrl = `${siteConfig.repoUrl}/edit/master/website/siteConfig.js`; + const showcase = siteConfig.users.map(user => ( + + {user.caption} + + )); + + return ( +
+ +
+
+

Who is Using This?

+

This project is used by many folks

+
+
{showcase}
+

Are you using this project?

+ + Add your company + +
+
+
+ ); + } +} + +module.exports = Users; diff --git a/src/website/sidebars.json b/src/website/sidebars.json new file mode 100644 index 0000000..11f82af --- /dev/null +++ b/src/website/sidebars.json @@ -0,0 +1,9 @@ +{ + "docs": { + "Kotlin Tutorials": ["krumble"], + "Java Tutorials (deprecated)" : ["cookie-clicker-java", "layouts", "maps", + "activity-lifecycle", "espresso" ], + "Other Resources": ["more-resources"] + } + +} diff --git a/src/website/siteConfig.js b/src/website/siteConfig.js new file mode 100644 index 0000000..6587557 --- /dev/null +++ b/src/website/siteConfig.js @@ -0,0 +1,109 @@ +/** + * Copyright (c) 2017-present, Facebook, Inc. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ + +// See https://docusaurus.io/docs/site-config for all the possible +// site configuration options. + +// List of projects/orgs using your project for the users page. +const users = [ + { + caption: 'User1', + // You will need to prepend the image path with your baseUrl + // if it is not '/', like: '/test-site/img/image.jpg'. + image: '/img/undraw_open_source.svg', + infoLink: 'https://www.facebook.com', + pinned: true, + }, +]; + +const siteConfig = { + title: 'codebar android tutorials', // Title for your website. + tagline: 'A website for the codebar android tutorials', + url: 'https://codebar.github.io', // Your website URL + baseUrl: '/android-tutorials/', // Base URL for your project */ + // For github.io type URLs, you would set the url and baseUrl like: + // url: 'https://facebook.github.io', + // baseUrl: '/test-site/', + + // Used for publishing and more + projectName: 'android-tutorials', + organizationName: 'codebar', + // For top-level user or org sites, the organization is still the same. + // e.g., for the https://JoelMarcey.github.io site, it would be set like... + // organizationName: 'JoelMarcey' + + // For no header links in the top nav bar -> headerLinks: [], + headerLinks: [ + {doc: 'setup', label: 'Getting Setup'}, + {doc: 'cookie-clicker-java', label: 'Kotlin Tutorials'}, + {blog: true, label: 'Blog'}, + ], + + // If you have users set above, you add it here: + users, + + /* path to images for header/footer */ + headerIcon: 'img/codebar-full-white-logo.png', + footerIcon: 'img/codebar-full-white-logo.png', + favicon: 'img/favicon.ico', + + /* Colors for website */ + colors: { + primaryColor: '#3ddc84', + secondaryColor: '#3f1556', + }, + + /* Custom fonts for website */ + /* + fonts: { + myFont: [ + "Times New Roman", + "Serif" + ], + myOtherFont: [ + "-apple-system", + "system-ui" + ] + }, + */ + + // This copyright info is used in /core/Footer.js and blog RSS/Atom feeds. + copyright: `Copyright © ${new Date().getFullYear()} Your Name or Your Company Name`, + + highlight: { + // Highlight.js theme to use for syntax highlighting in code blocks. + theme: 'default', + }, + + // Add custom scripts here that would be placed in