From 210fca3a77b9043e0f2c608e1eaff6f2ec37cdf3 Mon Sep 17 00:00:00 2001 From: Navan Chauhan Date: Fri, 24 Jul 2020 11:57:23 +0530 Subject: added landing page --- docs/Gemfile | 2 + docs/LICENSE | 20 + docs/README.md | 113 +++ docs/_config.yml | 141 ++++ docs/_includes/appstoreimages.html | 67 ++ docs/_includes/features.html | 26 + docs/_includes/footer.html | 52 ++ docs/_includes/head.html | 21 + docs/_includes/header.html | 32 + docs/_includes/screencontent.html | 47 ++ docs/_layouts/default.html | 67 ++ docs/_layouts/page.html | 22 + docs/_pages/changelog.md | 65 ++ docs/_pages/privacypolicy.md | 60 ++ docs/_sass/base.scss | 65 ++ docs/_sass/github-markdown.scss | 981 ++++++++++++++++++++++++++ docs/_sass/layout.scss | 687 ++++++++++++++++++ docs/assets/appstore.png | Bin 0 -> 12996 bytes docs/assets/black.png | Bin 0 -> 62851 bytes docs/assets/blue.png | Bin 0 -> 76710 bytes docs/assets/coral.png | Bin 0 -> 77700 bytes docs/assets/headerimage.png | Bin 0 -> 264257 bytes docs/assets/playstore.png | Bin 0 -> 17149 bytes docs/assets/screenshot/yourscreenshot.png | Bin 0 -> 67132 bytes docs/assets/squircle.svg | 10 + docs/assets/squircle120.svg | 10 + docs/assets/videos/Place-video-files-here.txt | 14 + docs/assets/white.png | Bin 0 -> 61614 bytes docs/assets/yellow.png | Bin 0 -> 77153 bytes docs/index.html | 3 + docs/main.scss | 36 + 31 files changed, 2541 insertions(+) create mode 100644 docs/Gemfile create mode 100755 docs/LICENSE create mode 100644 docs/README.md create mode 100644 docs/_config.yml create mode 100644 docs/_includes/appstoreimages.html create mode 100644 docs/_includes/features.html create mode 100644 docs/_includes/footer.html create mode 100644 docs/_includes/head.html create mode 100644 docs/_includes/header.html create mode 100644 docs/_includes/screencontent.html create mode 100644 docs/_layouts/default.html create mode 100644 docs/_layouts/page.html create mode 100644 docs/_pages/changelog.md create mode 100644 docs/_pages/privacypolicy.md create mode 100644 docs/_sass/base.scss create mode 100644 docs/_sass/github-markdown.scss create mode 100644 docs/_sass/layout.scss create mode 100644 docs/assets/appstore.png create mode 100644 docs/assets/black.png create mode 100644 docs/assets/blue.png create mode 100644 docs/assets/coral.png create mode 100644 docs/assets/headerimage.png create mode 100644 docs/assets/playstore.png create mode 100644 docs/assets/screenshot/yourscreenshot.png create mode 100644 docs/assets/squircle.svg create mode 100644 docs/assets/squircle120.svg create mode 100644 docs/assets/videos/Place-video-files-here.txt create mode 100644 docs/assets/white.png create mode 100644 docs/assets/yellow.png create mode 100644 docs/index.html create mode 100644 docs/main.scss (limited to 'docs') diff --git a/docs/Gemfile b/docs/Gemfile new file mode 100644 index 0000000..bce2436 --- /dev/null +++ b/docs/Gemfile @@ -0,0 +1,2 @@ +source "https://rubygems.org" +gem 'github-pages' \ No newline at end of file diff --git a/docs/LICENSE b/docs/LICENSE new file mode 100755 index 0000000..cf4da3a --- /dev/null +++ b/docs/LICENSE @@ -0,0 +1,20 @@ +The MIT License (MIT) + +Copyright (c) 2019 Emil Baehr + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS +FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR +COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER +IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. \ No newline at end of file diff --git a/docs/README.md b/docs/README.md new file mode 100644 index 0000000..ced860f --- /dev/null +++ b/docs/README.md @@ -0,0 +1,113 @@ +# Automatic App Landing Page +**Create and deploy an iOS app landing page on GitHub Pages in only five minutes.** + +Designed for GitHub Pages for super easy set up. + +๐Ÿ”ง Fork this repo + +๐Ÿ— Enter iOS App ID in `_config.yml` + +๐Ÿ“ฒ Upload video preview or screenshot + +๐ŸŽจ Customise site in `_config.yml` (no HTML/CSS) + +๐Ÿ“ Write Privacy Policy as markdown in `privacypolicy.md` + +๐Ÿ•’ Keep a changelog in `CHANGELOG.md` + +โœ… Site becomes live at GitHub Pages repository URL, e.g. `https://your-username.github.io/your-repo-name/`. + + + + + + +## Quick Start + +### Step 1: Fork this repo. +After forking the repo, your site will be live immediately on your personal Github Pages account, e.g. `https://yourusername.github.io/your-repo-name/`. + +*Make sure GitHub Pages is enabled for your repo. It might take some time for the site to propagate entirely.* + + + +### Step 2: Enter iOS App ID in `_config.yml` +Enter your iOS app ID in the `ios_app_id` field and commit your changes. Your site will automatically rebuild with your app icon, name, price and link to App Store. + +You can go on with customising almost anything in the `_config.yml` file. + +Things you can customise in `_config.yml`: +- App Name +- App Icon +- App Description +- App Price +- App Store Link +- Play Store Link +- Press Kit Download Link +- Cover Image +- Cover Overlay Color +- Background Color +- Text Colors +- iPhone Device Color +- Your Name / Company Name +- Link to Website +- Social Links and Contact Info +- Feature List (Title, text, icon) + + + +### Step 3: Add screenshot or video + +#### Adding a screenshot +Upload a `.png` or `.jpg` of your app to the folder `assets/screenshot/`. The name does not matter. Be sure to delete the placeholder `yourscreenshot.png`. + +#### Adding video +Upload your video to the folder `assets/videos/`. To have support for most browsers, you need to upload two files โ€“ one for Safari and one for Chrome/Firefox. + +Video formats supported by Chrome and Firefox: +- `.webm` +- `.ogg` + +Video formats supported by Safari: +- `.mp4` +- `.mov` + +#### Resolutions +The videos and screenshots must have one of the following resolutions: +- 828x1792 +- 1125x2436 +- 1242x2688 + + + +### Step 4: Edit (or remove) Privacy Policy and Changelog +Your site automatically includes pages for a Privacy Policy and a Changelog. Change the content of these pages by editing the `privacypolicy.md` and `CHANGELOG.md` files in the `_pages` directory. + +In each of the markdown files, you can set the `include_in_header:` value to either `true` or `false`. This determines if the page is included in the top navigation. +By default, only the Changelog is included in the top navigation. The title of the navigation item can also be edited, by editing the `title:` in each markdown file. + +If you need to, you can create additional markdown based pages just by creating an `.md` file like the `privacypolicy.md` and `CHANGELOG.md` files in the `_pages` directory. + +**Please note:** The Privacy Policy and Changelog provided are written using dummy text, so please adapt each of them for your own app. +You can also choose not to include these pages, by simple deleting the `privacypolicy.md` and `CHANGELOG.md` files. + + + + +## Feedback +If you have feedback regarding bugs or improvements, open an issue, @ me on Twitter or write me an email. You can find my contact info on my website. + +I'd love to see the sites you create using this little tool. + +## Credits +- [Jekyll](https://github.com/jekyll/jekyll) +- [FontAwesome](https://fontawesome.github.io/Font-Awesome/) + +## Donations +[Donations are welcome](https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=S8ZZT3JXJPN92¤cy_code=USD&source=url) + +## Author +[Emil Baehr](https://emilbaehr.com/) + +## License +[MIT License](LICENSE) diff --git a/docs/_config.yml b/docs/_config.yml new file mode 100644 index 0000000..b9ad756 --- /dev/null +++ b/docs/_config.yml @@ -0,0 +1,141 @@ +#page title +page_title : # Automatically populates with app name if not set and if iOS app ID is set. Otherwise enter manually. + +# App Info +ios_app_id : 1234793120 # Required. Enter iOS app ID to automatically populate name, price and icons (e.g. 718043190). + +appstore_link : # Automatically populates if not set and if iOS app ID is set. Otherwise enter manually. +playstore_link : # Enter Google Play Store URL. +presskit_download_link : https://emilbaehr.com # Enter a link to downloadable file or (e.g. public Dropbox link to a .zip file). + # Or upload your press kit file to assets and set path accordingly (e.g. "assets/your_press_kit.zip"). + +app_icon : # assets/appicon.png # Automatically populates if not set and if iOS app ID is set. Otherwise enter path to icon file manually. +app_name : # Automatically populates if not set and if iOS app ID is set. Otherwise enter manually. +app_price : # Automatically populates if not set and if iOS app ID is set. Otherwise enter manually. +app_description : Write a short tagline for your app. + +enable_smart_app_banner : true # Set to true to show a smart app banner at top of page on mobile devices. + + + +# Information About Yourself +your_name : Emil Baehr +your_link : https://emilbaehr.com +your_city : Copenhagen +email_address : emil.baehr@gmail.com +facebook_username : +instagram_username : ebaehr +twitter_username : ebaehr +github_username : emilbaehr +youtube_username : + + + +# Feature List Edit, add or remove features to be presented. +features : + + - title : GitHub Pages Jekyll Theme + description : Designed for GitHub Pages. Fork. Edit _config.yml. Upload screenshot/video. Push to gh-pages branch. Voilรก! + fontawesome_icon_name : magic + + - title : iPhone Device Preview + description : Preview your app in the context of an iPhone device. Five different device colors included. + fontawesome_icon_name : mobile + + - title : Video Support + description : Preview app video on the iPhone device simply by placing your video files in the videos folder. + fontawesome_icon_name : play-circle + + - title : Automatic Icon and Metadata + description : Enter iOS app ID in the _config.yml file to automatically fetch app icon, price and App Store Link. + fontawesome_icon_name : sync + + - title : Easy to Tweak + description : Tweak accent color, images, icons and transparency via the _config.yml file. No HTML/CSS needed. + fontawesome_icon_name : adjust + + - title : Feature List + description : Add features (like this one) to your site via the _config.yml file. No HTML/CSS needed. + fontawesome_icon_name : star + + - title : Smart App Banner + description : Display a smart app banner on iOS devices. + fontawesome_icon_name : arrow-alt-circle-down + + - title : Social Links + description : Easily add social media accounts and contact info in the footer via the _config.yml file. No HTML/CSS needed. + fontawesome_icon_name : link + + - title : FontAwesome Support + description : Pick custom Font Awesome icons for the feature list via the _config.yml file. No HTML/CSS needed. + fontawesome_icon_name : info-circle + + - title : # New Feature Title + description : # New Feature Description + fontawesome_icon_name : # Enter Font Awesome icon name (e.g. star). Find icons on fontawesome.com/icons. + + + +# Theme Settings +topbar_color : "#000000" +topbar_transparency : 0.1 +topbar_title_color : "#ffffff" + +cover_image : assets/headerimage.png # Replace with alternative image path or image URL. +cover_overlay_color : "#363b3d" +cover_overlay_transparency : 0.8 + +device_color : black # Set to: blue, black, yellow, coral or white. + +body_background_color : "#ffffff" + +link_color : "#1d63ea" + +app_title_color : "#ffffff" +app_price_color : "#ffffff" +app_description_color : "#ffffff" + +feature_title_color : "#000000" +feature_text_color : "#666666" + +feature_icons_foreground_color : "#1d63ea" +feature_icons_background_color : "#e6e6e6" + +social_icons_foreground_color : "#666666" +social_icons_background_color : "#e6e6e6" + +footer_text_color : "#666666" + + + + + + + + + + + + + +#################################################### +### Jekyll Configuration. No need to touch this. ### +#################################################### + +# Set the Sass partials directory, as we're using @imports +sass: + style: :compressed # You might prefer to minify using :compressed + +# Exclude these files from your production _site +exclude: + - LICENSE + - README.md + - CNAME + +collections: + pages: + output: true + permalink: /:path/ + +# Markdown rendering +markdown: kramdown \ No newline at end of file diff --git a/docs/_includes/appstoreimages.html b/docs/_includes/appstoreimages.html new file mode 100644 index 0000000..7fac822 --- /dev/null +++ b/docs/_includes/appstoreimages.html @@ -0,0 +1,67 @@ + + +{% if site.ios_app_id %} + + + +{% endif %} \ No newline at end of file diff --git a/docs/_includes/features.html b/docs/_includes/features.html new file mode 100644 index 0000000..df75eec --- /dev/null +++ b/docs/_includes/features.html @@ -0,0 +1,26 @@ +
+ + {% for feature in site.features %} + + {% if feature.title %} +
+
+ + + + +
+
+

+ {{ feature.title }} +

+

+ {{ feature.description }} +

+
+
+ {% endif %} + + {% endfor %} + +
\ No newline at end of file diff --git a/docs/_includes/footer.html b/docs/_includes/footer.html new file mode 100644 index 0000000..291a15d --- /dev/null +++ b/docs/_includes/footer.html @@ -0,0 +1,52 @@ + \ No newline at end of file diff --git a/docs/_includes/head.html b/docs/_includes/head.html new file mode 100644 index 0000000..667196b --- /dev/null +++ b/docs/_includes/head.html @@ -0,0 +1,21 @@ + + + + + + + {{ site.page_title }} + + + + + + {% if site.enable_smart_app_banner %} + + {% endif %} + + + + + + \ No newline at end of file diff --git a/docs/_includes/header.html b/docs/_includes/header.html new file mode 100644 index 0000000..31e96e1 --- /dev/null +++ b/docs/_includes/header.html @@ -0,0 +1,32 @@ +
+ + +
\ No newline at end of file diff --git a/docs/_includes/screencontent.html b/docs/_includes/screencontent.html new file mode 100644 index 0000000..01da5dc --- /dev/null +++ b/docs/_includes/screencontent.html @@ -0,0 +1,47 @@ + + +{% for file in site.static_files %} + {% if file.path contains 'assets/screenshot/' %} + + {% elsif file.path contains 'assets/videos/' %} + {% unless file.path contains 'assets/videos/Place-video-files-here.txt' %} + + {% endunless %} + {% if file.extname == ".mov" or file.extname == ".mp4" %} + + {% elsif file.extname == ".ogg" %} + + {% elsif file.extname == ".webm" %} + + {% endif %} + {% endif %} +{% endfor %} \ No newline at end of file diff --git a/docs/_layouts/default.html b/docs/_layouts/default.html new file mode 100644 index 0000000..cd94d4a --- /dev/null +++ b/docs/_layouts/default.html @@ -0,0 +1,67 @@ + + + +{% include head.html %} + + +
+
+
+ {% include header.html %} +
+ + + + + + + + + + + + {% include screencontent.html %} + +
+
+
+ + + + + + + + +
+
+

+ {{ site.app_name }} +

+

+ {{ site.app_price }} +

+
+
+

+ {{ site.app_description }} +

+
+
+ {% if site.playstore_link %} + + {% endif %} + +
+
+ {% include features.html %} + {% include footer.html %} + {% include appstoreimages.html %} +
+
+
+ + \ No newline at end of file diff --git a/docs/_layouts/page.html b/docs/_layouts/page.html new file mode 100644 index 0000000..0fffa23 --- /dev/null +++ b/docs/_layouts/page.html @@ -0,0 +1,22 @@ +--- +# Front matter comment to ensure Jekyll properly reads file. +--- + + + + +{% include head.html %} + + +
+
+ {% include header.html %} +
+ {{ content }} +
+
+ {% include appstoreimages.html %} +
+ + + \ No newline at end of file diff --git a/docs/_pages/changelog.md b/docs/_pages/changelog.md new file mode 100644 index 0000000..8f91d9d --- /dev/null +++ b/docs/_pages/changelog.md @@ -0,0 +1,65 @@ +--- +layout: page +title: What's New +include_in_header: true +--- + +# Changelog +Here you can keep a changelog for your app. Edit the markdown based CHANGELOG.md which is located in the _pages directory. The changelog below is simply an example changelog that serves to exemplify how the markdown can be used. You can be as creative as you want with the markdown. + +
+ +### `Latest` +# **Version 2.0** +This is the first update to our app. Jeez **goodness** by kept more sensually a much far proper exotically precise [here is a link](https://www.google.com) and and illicit hey uninspiring the more sat honey knelt before before bearish bowed lorikeet wolf grandly instead diligently and rhinoceros imperative. + +#### What's New +- Much far proper exotically precise unaccountable. +- [Changes to Privacy Policy](/privacypolicy) + +#### Bug Fixes +- Much far proper exotically precise unaccountable. +- [Changes to Privacy Policy](/privacypolicy) + +
+ +### **Version 2.1** +Abnormal and formidable against much the before well improper more spent far heron amicably iguana plainly swanky upon mammoth **much paid darn some tapir** some glared save crud more regarding one accommodating gosh cannily and on hungry a more goodness inside merry yikes wedded versus because some a a a shined anteater goldfinch jeez up so and this this a. + +#### What's New +- Much far proper exotically precise unaccountable. +- Much far proper exotically precise unaccountable. + +
+ +________ +
+ +### `Initial Release` +# **Version 1.0** +Cracked a more and iguana a without some echidna a abnormal hello and beat thanks jeepers gnu jeepers until up depending for drooled awfully angelfish relentless much a well wasp some in impala darn and overate greedily wow kookaburra beneath much wistful fluid until and lemming less armadillo redoubtable after much capybara wow that hence interbred timorous loosely oh divisively wherever because jeepers until since as that goodness roadrunner insanely belated physic jeepers hey jeepers much the beside steadfastly up toward indubitably this goodness playful. + +
+ +## **Version 1.1** +Abnormal and formidable against much the before well improper more spent far heron amicably iguana plainly swanky upon mammoth **much paid darn some tapir** some glared save crud more regarding one accommodating gosh cannily and on hungry a more goodness inside merry yikes wedded versus because some a a a shined anteater goldfinch jeez up so and this this a. + +#### What's New +- Much far proper exotically precise unaccountable. +- Much far proper exotically precise unaccountable. + +
+ +## Version 1.0.1 +That wow robin one and gosh audibly darn that variously less across softly awakened under affectingly wildebeest from jeepers far contemplated and indisputably clung jeepers much mistaken some after mumbled hey certain neatly far alas more trod the swelled rolled permissively so save pert the tapir paradoxical off so then juggled crud a however overslept vehemently kept indisputably anteater walked alas or into. + +#### What's New +- Much far proper exotically precise unaccountable. +- Much far proper exotically precise unaccountable. +- Much far proper exotically precise unaccountable. + +#### Bug Fixes +- Improved user sign up experience. +- Unlike deliberately zebra hen oh jeez understandable. Alas and quit oh snooty unlike deliberately. + +
\ No newline at end of file diff --git a/docs/_pages/privacypolicy.md b/docs/_pages/privacypolicy.md new file mode 100644 index 0000000..fe753f3 --- /dev/null +++ b/docs/_pages/privacypolicy.md @@ -0,0 +1,60 @@ +--- +layout: page +title: Privacy Policy +include_in_header: false +--- + +**Last updated** +August 1 2019 + +# Privacy Policy +Submissive a when owing much far bawdy thanks impolitely alas overlaid one and this one chuckled darn on more due much misheard amused far far the much purposeful that wildebeest dalmatian and piranha bluebird this and much despite however much sincere nonsensical this paradoxically more. + +**Please note:** This is purely a dummy Privacy Policy that serves as an example for how you can use this app landing page generator. Please replace the contents with your own privacy policy. + +
+ +## 1.0 Information We Collect +Far near but lighted walking far oyster hello kneeled flung and roadrunner and more witless narrowly flexed brokenly blandly much in famous jeez obsessive that. + +### 1.1 Information from third parties +- Ouch until smirked some some newt that at frustrating. +- Nimbly handsomely fabulously python. +- Alas informally taped when a dear some. + +### 1.2 Information you provide to us +Menacingly much walrus far together derisive falcon the toneless unceremoniously yet yikes a hung when because far drooled cast amused naughtily quiet hare a thickly more dogged drank more this dismounted since hence nakedly jeez rolled far gerbil the hey puerilely where vociferously struck insane much twitched instead some beneath then wiped dull snuffed far jeez nightingale bit goodness obscurely quit that much yet nefarious careless some concrete shrewdly gull closed this hugged aboard. + +
+ +## 2.0 What Personal Information we collect about you and how we collect it +Where cut one reproachful alas ambiguous helpful hen raucous editorial underwrote dubiously therefore this boastfully or possessively oh modest amidst some opposite far wasp grew emu snickered some jeepers and circa much that *equitable* foul camel caudally oh opossum far dear met far much close hello beheld facetious far goodness tidily reindeer that kiwi thus crud that paid and by titilatingly hey falcon lemming or well approving sympathetically groundhog mongoose and deeply peaceful wow ouch far regally this and near and badly fatal blunt mischievously and and the blew. + +### 2.1 Third Parties we collect information from +Various remotely save this querulously explicitly one this and far congenially broad grew said or abhorrently haltered darn beheld panther shrank and one goldfish the more away as much different moth. + +| Third Party | What is it used for? | +| :--- | :--- | +| Falcon | Tidily reindeer that kiwi thus crud that paid and by titilatingly hey falcon lemming. | +| Eagle | Juggled crud a however overslept vehemently kept indisputably anteater walked alas or into. | + +
+ +## 3.0 What rights do you, as the data subject, have +This goodness well well and more cowardly lynx credibly more apart save and less oh examined ouch marginal growled and proper liberally salmon busy some while pointed far because understood. + +1. Boastfully or possessively oh modest amidst. +2. Far far the much purposeful that wildebeest dalmatian. +3. Adamant or pushed less far overthrew. + +All the Lorem Ipsum generators on the Internet tend to repeat predefined chunks as necessary, making this the first true generator on the Internet. It uses a dictionary of over 200 Latin words, combined with a handful of model sentence structures, to generate Lorem Ipsum which looks reasonable. The generated Lorem Ipsum is therefore always free from repetition, injected humour, or non-characteristic words etc. + +
+ +## 4.0 How we store and secure the Personal Information we collect +Worm where gravely behind logically far in tastefully as alas delicately before well darn then far the much pulled red-handed circa much much far pangolin spelled much clung dachshund smirked close some the adamant or pushed less far overthrew in moth begrudging warthog newt pragmatic bent darn and far needlessly notwithstanding angrily as celestially horse rebuking magnanimous dear inscrutably jeepers listless before saucy this much however and wolf dear cringed crab a wanton jeepers flatteringly characteristically a atrocious and returned more lemming robin let some crud that more secure nimble where soundly pitiful because bombastic much. + +
+ +## 5.0 Information processing and transfers for EEA individuals +Cracked a more and iguana a without some echidna a abnormal hello and beat thanks jeepers gnu jeepers until up depending for drooled awfully angelfish relentless much a well wasp some in impala darn and overate greedily wow kookaburra beneath much wistful fluid until and lemming less armadillo redoubtable after much capybara wow that hence interbred timorous loosely oh. \ No newline at end of file diff --git a/docs/_sass/base.scss b/docs/_sass/base.scss new file mode 100644 index 0000000..75306fc --- /dev/null +++ b/docs/_sass/base.scss @@ -0,0 +1,65 @@ +// Layout and grids +$content-width: 1170px; + +// Fonts and sizes +$font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"; +$primary-text-color: #000000; + +html { + font-size: 62.5%; + font-family: $font; + line-height: 1; +} + +body { + font-size: 2rem; + background-color: $body-color; +} + +.subPageBody { + background-color: #fff; +} + +h1 { + font-size: 3rem; +} + +h2 { + font-size: 2rem; +} + +h3 { + font-size: 2rem; +} + +// Better font rendering +body { + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + background-color: $body-color; +} + +a:link, +a:hover, +a:visited, +a:active { + color: $accent-color; + text-decoration: none; +} + +// Shadows +$drop-shadow: drop-shadow(0px 5px 10px rgba(#000, 0.1)) + drop-shadow(0px 1px 1px rgba(#000, 0.2) + ); + +// Various resets +*, +*::before, +*::after { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; + + margin: 0; + padding: 0; +} \ No newline at end of file diff --git a/docs/_sass/github-markdown.scss b/docs/_sass/github-markdown.scss new file mode 100644 index 0000000..348b158 --- /dev/null +++ b/docs/_sass/github-markdown.scss @@ -0,0 +1,981 @@ +/* +MIT License + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +Markdown CSS adopted from https://github.com/sindresorhus/github-markdown-css +*/ + +@font-face { + font-family: octicons-link; + src: url(data:font/woff;charset=utf-8;base64,d09GRgABAAAAAAZwABAAAAAACFQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABEU0lHAAAGaAAAAAgAAAAIAAAAAUdTVUIAAAZcAAAACgAAAAoAAQAAT1MvMgAAAyQAAABJAAAAYFYEU3RjbWFwAAADcAAAAEUAAACAAJThvmN2dCAAAATkAAAABAAAAAQAAAAAZnBnbQAAA7gAAACyAAABCUM+8IhnYXNwAAAGTAAAABAAAAAQABoAI2dseWYAAAFsAAABPAAAAZwcEq9taGVhZAAAAsgAAAA0AAAANgh4a91oaGVhAAADCAAAABoAAAAkCA8DRGhtdHgAAAL8AAAADAAAAAwGAACfbG9jYQAAAsAAAAAIAAAACABiATBtYXhwAAACqAAAABgAAAAgAA8ASm5hbWUAAAToAAABQgAAAlXu73sOcG9zdAAABiwAAAAeAAAAME3QpOBwcmVwAAAEbAAAAHYAAAB/aFGpk3jaTY6xa8JAGMW/O62BDi0tJLYQincXEypYIiGJjSgHniQ6umTsUEyLm5BV6NDBP8Tpts6F0v+k/0an2i+itHDw3v2+9+DBKTzsJNnWJNTgHEy4BgG3EMI9DCEDOGEXzDADU5hBKMIgNPZqoD3SilVaXZCER3/I7AtxEJLtzzuZfI+VVkprxTlXShWKb3TBecG11rwoNlmmn1P2WYcJczl32etSpKnziC7lQyWe1smVPy/Lt7Kc+0vWY/gAgIIEqAN9we0pwKXreiMasxvabDQMM4riO+qxM2ogwDGOZTXxwxDiycQIcoYFBLj5K3EIaSctAq2kTYiw+ymhce7vwM9jSqO8JyVd5RH9gyTt2+J/yUmYlIR0s04n6+7Vm1ozezUeLEaUjhaDSuXHwVRgvLJn1tQ7xiuVv/ocTRF42mNgZGBgYGbwZOBiAAFGJBIMAAizAFoAAABiAGIAznjaY2BkYGAA4in8zwXi+W2+MjCzMIDApSwvXzC97Z4Ig8N/BxYGZgcgl52BCSQKAA3jCV8CAABfAAAAAAQAAEB42mNgZGBg4f3vACQZQABIMjKgAmYAKEgBXgAAeNpjYGY6wTiBgZWBg2kmUxoDA4MPhGZMYzBi1AHygVLYQUCaawqDA4PChxhmh/8ODDEsvAwHgMKMIDnGL0x7gJQCAwMAJd4MFwAAAHjaY2BgYGaA4DAGRgYQkAHyGMF8NgYrIM3JIAGVYYDT+AEjAwuDFpBmA9KMDEwMCh9i/v8H8sH0/4dQc1iAmAkALaUKLgAAAHjaTY9LDsIgEIbtgqHUPpDi3gPoBVyRTmTddOmqTXThEXqrob2gQ1FjwpDvfwCBdmdXC5AVKFu3e5MfNFJ29KTQT48Ob9/lqYwOGZxeUelN2U2R6+cArgtCJpauW7UQBqnFkUsjAY/kOU1cP+DAgvxwn1chZDwUbd6CFimGXwzwF6tPbFIcjEl+vvmM/byA48e6tWrKArm4ZJlCbdsrxksL1AwWn/yBSJKpYbq8AXaaTb8AAHja28jAwOC00ZrBeQNDQOWO//sdBBgYGRiYWYAEELEwMTE4uzo5Zzo5b2BxdnFOcALxNjA6b2ByTswC8jYwg0VlNuoCTWAMqNzMzsoK1rEhNqByEyerg5PMJlYuVueETKcd/89uBpnpvIEVomeHLoMsAAe1Id4AAAAAAAB42oWQT07CQBTGv0JBhagk7HQzKxca2sJCE1hDt4QF+9JOS0nbaaYDCQfwCJ7Au3AHj+LO13FMmm6cl7785vven0kBjHCBhfpYuNa5Ph1c0e2Xu3jEvWG7UdPDLZ4N92nOm+EBXuAbHmIMSRMs+4aUEd4Nd3CHD8NdvOLTsA2GL8M9PODbcL+hD7C1xoaHeLJSEao0FEW14ckxC+TU8TxvsY6X0eLPmRhry2WVioLpkrbp84LLQPGI7c6sOiUzpWIWS5GzlSgUzzLBSikOPFTOXqly7rqx0Z1Q5BAIoZBSFihQYQOOBEdkCOgXTOHA07HAGjGWiIjaPZNW13/+lm6S9FT7rLHFJ6fQbkATOG1j2OFMucKJJsxIVfQORl+9Jyda6Sl1dUYhSCm1dyClfoeDve4qMYdLEbfqHf3O/AdDumsjAAB42mNgYoAAZQYjBmyAGYQZmdhL8zLdDEydARfoAqIAAAABAAMABwAKABMAB///AA8AAQAAAAAAAAAAAAAAAAABAAAAAA==) format('woff'); +} + +.markdown-body .octicon { + display: inline-block; + fill: currentColor; + vertical-align: text-bottom; +} + +.markdown-body .anchor { + float: left; + line-height: 1; + margin-left: -20px; + padding-right: 4px; +} + +.markdown-body .anchor:focus { + outline: none; +} + +.markdown-body h1 .octicon-link, +.markdown-body h2 .octicon-link, +.markdown-body h3 .octicon-link, +.markdown-body h4 .octicon-link, +.markdown-body h5 .octicon-link, +.markdown-body h6 .octicon-link { + color: rgba(#000000, 1); // Differs from default GitHub markdown styling + vertical-align: middle; + visibility: hidden; +} + +// Differs from default GitHub markdown styling +.markdown-body h1, +.markdown-body h2, +.markdown-body h3, +.markdown-body h4, +.markdown-body h5, +.markdown-body h6 { + color: rgba(#000000, 1); +} + +.markdown-body h1:hover .anchor, +.markdown-body h2:hover .anchor, +.markdown-body h3:hover .anchor, +.markdown-body h4:hover .anchor, +.markdown-body h5:hover .anchor, +.markdown-body h6:hover .anchor { + text-decoration: none; +} + +.markdown-body h1:hover .anchor .octicon-link, +.markdown-body h2:hover .anchor .octicon-link, +.markdown-body h3:hover .anchor .octicon-link, +.markdown-body h4:hover .anchor .octicon-link, +.markdown-body h5:hover .anchor .octicon-link, +.markdown-body h6:hover .anchor .octicon-link { + visibility: visible; +} + +.markdown-body { + -ms-text-size-adjust: 100%; + -webkit-text-size-adjust: 100%; + color: rgba(#000000, 0.8); // Differs from default GitHub markdown styling + line-height: 1.5; + font-family: $font; // Use sitewide font stack instead of hardcoded font-stack + font-size: 16px; + line-height: 1.5; + word-wrap: break-word; +} + +.markdown-body .pl-c { + color: #6a737d; +} + +.markdown-body .pl-c1, +.markdown-body .pl-s .pl-v { + color: #005cc5; +} + +.markdown-body .pl-e, +.markdown-body .pl-en { + color: #6f42c1; +} + +.markdown-body .pl-s .pl-s1, +.markdown-body .pl-smi { + color: #24292e; +} + +.markdown-body .pl-ent { + color: #22863a; +} + +.markdown-body .pl-k { + color: #d73a49; +} + +.markdown-body .pl-pds, +.markdown-body .pl-s, +.markdown-body .pl-s .pl-pse .pl-s1, +.markdown-body .pl-sr, +.markdown-body .pl-sr .pl-cce, +.markdown-body .pl-sr .pl-sra, +.markdown-body .pl-sr .pl-sre { + color: #032f62; +} + +.markdown-body .pl-smw, +.markdown-body .pl-v { + color: #e36209; +} + +.markdown-body .pl-bu { + color: #b31d28; +} + +.markdown-body .pl-ii { + background-color: #b31d28; + color: #fafbfc; +} + +.markdown-body .pl-c2 { + background-color: #d73a49; + color: #fafbfc; +} + +.markdown-body .pl-c2:before { + content: "^M"; +} + +.markdown-body .pl-sr .pl-cce { + color: #22863a; + font-weight: 700; +} + +.markdown-body .pl-ml { + color: #735c0f; +} + +.markdown-body .pl-mh, +.markdown-body .pl-mh .pl-en, +.markdown-body .pl-ms { + color: #005cc5; + font-weight: 700; +} + +.markdown-body .pl-mi { + color: #24292e; + font-style: italic; +} + +.markdown-body .pl-mb { + color: #24292e; + font-weight: 700; +} + +.markdown-body .pl-md { + background-color: #ffeef0; + color: #b31d28; +} + +.markdown-body .pl-mi1 { + background-color: #f0fff4; + color: #22863a; +} + +.markdown-body .pl-mc { + background-color: #ffebda; + color: #e36209; +} + +.markdown-body .pl-mi2 { + background-color: #005cc5; + color: #f6f8fa; +} + +.markdown-body .pl-mdr { + color: #6f42c1; + font-weight: 700; +} + +.markdown-body .pl-ba { + color: #586069; +} + +.markdown-body .pl-sg { + color: #959da5; +} + +.markdown-body .pl-corl { + color: #032f62; + text-decoration: underline; +} + +.markdown-body details { + display: block; +} + +.markdown-body summary { + display: list-item; +} + +.markdown-body a { + background-color: transparent; +} + +.markdown-body a:active, +.markdown-body a:hover { + outline-width: 0; +} + +.markdown-body strong { + font-weight: inherit; + font-weight: bolder; +} + +.markdown-body h1 { + font-size: 2em; + margin: .67em 0; +} + +.markdown-body img { + border-style: none; +} + +.markdown-body code, +.markdown-body kbd, +.markdown-body pre { + font-family: monospace,monospace; + font-size: 1em; +} + +.markdown-body hr { + box-sizing: content-box; + height: 0; + overflow: visible; +} + +.markdown-body input { + font: inherit; + margin: 0; +} + +.markdown-body input { + overflow: visible; +} + +.markdown-body [type=checkbox] { + box-sizing: border-box; + padding: 0; +} + +.markdown-body * { + box-sizing: border-box; +} + +.markdown-body input { + font-family: inherit; + font-size: inherit; + line-height: inherit; +} + +.markdown-body a { + color: $accent-color; + text-decoration: none; +} + +.markdown-body a:hover { + text-decoration: underline; +} + +.markdown-body strong { + font-weight: 600; +} + +.markdown-body hr { + background: transparent; + border: 0; + border-bottom: 1px solid #dfe2e5; + height: 0; + margin: 15px 0; + overflow: hidden; +} + +.markdown-body hr:before { + content: ""; + display: table; +} + +.markdown-body hr:after { + clear: both; + content: ""; + display: table; +} + +.markdown-body table { + border-collapse: collapse; + border-spacing: 0; +} + +.markdown-body td, +.markdown-body th { + padding: 0; +} + +.markdown-body details summary { + cursor: pointer; +} + +.markdown-body h1, +.markdown-body h2, +.markdown-body h3, +.markdown-body h4, +.markdown-body h5, +.markdown-body h6 { + margin-bottom: 0; + margin-top: 0; +} + +.markdown-body h1 { + font-size: 32px; +} + +.markdown-body h1, +.markdown-body h2 { + font-weight: 600; +} + +.markdown-body h2 { + font-size: 24px; +} + +.markdown-body h3 { + font-size: 20px; +} + +.markdown-body h3, +.markdown-body h4 { + font-weight: 600; +} + +.markdown-body h4 { + font-size: 16px; +} + +.markdown-body h5 { + font-size: 14px; +} + +.markdown-body h5, +.markdown-body h6 { + font-weight: 600; +} + +.markdown-body h6 { + font-size: 12px; +} + +.markdown-body p { + margin-bottom: 10px; + margin-top: 0; +} + +.markdown-body blockquote { + margin: 0; +} + +.markdown-body ol, +.markdown-body ul { + margin-bottom: 0; + margin-top: 0; + padding-left: 0; +} + +.markdown-body ol ol, +.markdown-body ul ol { + list-style-type: lower-roman; +} + +.markdown-body ol ol ol, +.markdown-body ol ul ol, +.markdown-body ul ol ol, +.markdown-body ul ul ol { + list-style-type: lower-alpha; +} + +.markdown-body dd { + margin-left: 0; +} + +.markdown-body code, +.markdown-body pre { + font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace; + font-size: 12px; +} + +.markdown-body pre { + margin-bottom: 0; + margin-top: 0; +} + +.markdown-body input::-webkit-inner-spin-button, +.markdown-body input::-webkit-outer-spin-button { + -webkit-appearance: none; + appearance: none; + margin: 0; +} + +.markdown-body .border { + border: 1px solid #e1e4e8!important; +} + +.markdown-body .border-0 { + border: 0!important; +} + +.markdown-body .border-bottom { + border-bottom: 1px solid #e1e4e8!important; +} + +.markdown-body .rounded-1 { + border-radius: 3px!important; +} + +.markdown-body .bg-white { + background-color: #fff!important; +} + +.markdown-body .bg-gray-light { + background-color: #fafbfc!important; +} + +.markdown-body .text-gray-light { + color: #6a737d!important; +} + +.markdown-body .mb-0 { + margin-bottom: 0!important; +} + +.markdown-body .my-2 { + margin-bottom: 8px!important; + margin-top: 8px!important; +} + +.markdown-body .pl-0 { + padding-left: 0!important; +} + +.markdown-body .py-0 { + padding-bottom: 0!important; + padding-top: 0!important; +} + +.markdown-body .pl-1 { + padding-left: 4px!important; +} + +.markdown-body .pl-2 { + padding-left: 8px!important; +} + +.markdown-body .py-2 { + padding-bottom: 8px!important; + padding-top: 8px!important; +} + +.markdown-body .pl-3, +.markdown-body .px-3 { + padding-left: 16px!important; +} + +.markdown-body .px-3 { + padding-right: 16px!important; +} + +.markdown-body .pl-4 { + padding-left: 24px!important; +} + +.markdown-body .pl-5 { + padding-left: 32px!important; +} + +.markdown-body .pl-6 { + padding-left: 40px!important; +} + +.markdown-body .f6 { + font-size: 12px!important; +} + +.markdown-body .lh-condensed { + line-height: 1.25!important; +} + +.markdown-body .text-bold { + font-weight: 600!important; +} + +.markdown-body:before { + content: ""; + display: table; +} + +.markdown-body:after { + clear: both; + content: ""; + display: table; +} + +.markdown-body>:first-child { + margin-top: 0!important; +} + +.markdown-body>:last-child { + margin-bottom: 0!important; +} + +.markdown-body a:not([href]) { + color: inherit; + text-decoration: none; +} + +.markdown-body blockquote, +.markdown-body dl, +.markdown-body ol, +.markdown-body p, +.markdown-body pre, +.markdown-body table, +.markdown-body ul { + margin-bottom: 16px; + margin-top: 0; +} + +.markdown-body hr { + background-color: #e1e4e8; + border: 0; + height: .25em; + margin: 24px 0; + padding: 0; +} + +.markdown-body blockquote { + border-left: .25em solid #dfe2e5; + color: #6a737d; + padding: 0 1em; +} + +.markdown-body blockquote>:first-child { + margin-top: 0; +} + +.markdown-body blockquote>:last-child { + margin-bottom: 0; +} + +.markdown-body kbd { + background-color: #fafbfc; + border: 1px solid #c6cbd1; + border-bottom-color: #959da5; + border-radius: 3px; + box-shadow: inset 0 -1px 0 #959da5; + color: #444d56; + display: inline-block; + font-size: 11px; + line-height: 10px; + padding: 3px 5px; + vertical-align: middle; +} + +.markdown-body h1, +.markdown-body h2, +.markdown-body h3, +.markdown-body h4, +.markdown-body h5, +.markdown-body h6 { + font-weight: 600; + line-height: 1.25; + margin-bottom: 16px; + margin-top: 24px; +} + +.markdown-body h1 { + font-size: 2em; +} + +.markdown-body h1, +.markdown-body h2 { + border-bottom: 1px solid #eaecef; + padding-bottom: .3em; +} + +.markdown-body h2 { + font-size: 1.5em; +} + +.markdown-body h3 { + font-size: 1.25em; +} + +.markdown-body h4 { + font-size: 1em; +} + +.markdown-body h5 { + font-size: .875em; +} + +.markdown-body h6 { + color: #6a737d; + font-size: .85em; +} + +.markdown-body ol, +.markdown-body ul { + padding-left: 2em; +} + +.markdown-body ol ol, +.markdown-body ol ul, +.markdown-body ul ol, +.markdown-body ul ul { + margin-bottom: 0; + margin-top: 0; +} + +.markdown-body li { + word-wrap: break-all; +} + +.markdown-body li>p { + margin-top: 16px; +} + +.markdown-body li+li { + margin-top: .25em; +} + +.markdown-body dl { + padding: 0; +} + +.markdown-body dl dt { + font-size: 1em; + font-style: italic; + font-weight: 600; + margin-top: 16px; + padding: 0; +} + +.markdown-body dl dd { + margin-bottom: 16px; + padding: 0 16px; +} + +.markdown-body table { + display: block; + overflow: auto; + width: 100%; +} + +.markdown-body table th { + font-weight: 600; +} + +.markdown-body table td, +.markdown-body table th { + border: 1px solid #dfe2e5; + padding: 6px 13px; +} + +.markdown-body table tr { + background-color: #fff; + border-top: 1px solid #c6cbd1; +} + +.markdown-body table tr:nth-child(2n) { + background-color: #f6f8fa; +} + +.markdown-body img { + background-color: #fff; + box-sizing: content-box; + max-width: 100%; +} + +.markdown-body img[align=right] { + padding-left: 20px; +} + +.markdown-body img[align=left] { + padding-right: 20px; +} + +.markdown-body code { + background-color: rgba(27,31,35,.05); + border-radius: 3px; + font-size: 85%; + margin: 0; + padding: .2em .4em; +} + +.markdown-body pre { + word-wrap: normal; +} + +.markdown-body pre>code { + background: transparent; + border: 0; + font-size: 100%; + margin: 0; + padding: 0; + white-space: pre; + word-break: normal; +} + +.markdown-body .highlight { + margin-bottom: 16px; +} + +.markdown-body .highlight pre { + margin-bottom: 0; + word-break: normal; +} + +.markdown-body .highlight pre, +.markdown-body pre { + background-color: #f6f8fa; + border-radius: 3px; + font-size: 85%; + line-height: 1.45; + overflow: auto; + padding: 16px; +} + +.markdown-body pre code { + background-color: transparent; + border: 0; + display: inline; + line-height: inherit; + margin: 0; + max-width: auto; + overflow: visible; + padding: 0; + word-wrap: normal; +} + +.markdown-body .commit-tease-sha { + color: #444d56; + display: inline-block; + font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace; + font-size: 90%; +} + +.markdown-body .blob-wrapper { + border-bottom-left-radius: 3px; + border-bottom-right-radius: 3px; + overflow-x: auto; + overflow-y: hidden; +} + +.markdown-body .blob-wrapper-embedded { + max-height: 240px; + overflow-y: auto; +} + +.markdown-body .blob-num { + -moz-user-select: none; + -ms-user-select: none; + -webkit-user-select: none; + color: rgba(27,31,35,.3); + cursor: pointer; + font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace; + font-size: 12px; + line-height: 20px; + min-width: 50px; + padding-left: 10px; + padding-right: 10px; + text-align: right; + user-select: none; + vertical-align: top; + white-space: nowrap; + width: 1%; +} + +.markdown-body .blob-num:hover { + color: rgba(27,31,35,.6); +} + +.markdown-body .blob-num:before { + content: attr(data-line-number); +} + +.markdown-body .blob-code { + line-height: 20px; + padding-left: 10px; + padding-right: 10px; + position: relative; + vertical-align: top; +} + +.markdown-body .blob-code-inner { + color: #24292e; + font-family: SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace; + font-size: 12px; + overflow: visible; + white-space: pre; + word-wrap: normal; +} + +.markdown-body .pl-token.active, +.markdown-body .pl-token:hover { + background: #ffea7f; + cursor: pointer; +} + +.markdown-body 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: 11px SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace; + line-height: 10px; + padding: 3px 5px; + vertical-align: middle; +} + +.markdown-body :checked+.radio-label { + border-color: #0366d6; + position: relative; + z-index: 1; +} + +.markdown-body .tab-size[data-tab-size="1"] { + -moz-tab-size: 1; + tab-size: 1; +} + +.markdown-body .tab-size[data-tab-size="2"] { + -moz-tab-size: 2; + tab-size: 2; +} + +.markdown-body .tab-size[data-tab-size="3"] { + -moz-tab-size: 3; + tab-size: 3; +} + +.markdown-body .tab-size[data-tab-size="4"] { + -moz-tab-size: 4; + tab-size: 4; +} + +.markdown-body .tab-size[data-tab-size="5"] { + -moz-tab-size: 5; + tab-size: 5; +} + +.markdown-body .tab-size[data-tab-size="6"] { + -moz-tab-size: 6; + tab-size: 6; +} + +.markdown-body .tab-size[data-tab-size="7"] { + -moz-tab-size: 7; + tab-size: 7; +} + +.markdown-body .tab-size[data-tab-size="8"] { + -moz-tab-size: 8; + tab-size: 8; +} + +.markdown-body .tab-size[data-tab-size="9"] { + -moz-tab-size: 9; + tab-size: 9; +} + +.markdown-body .tab-size[data-tab-size="10"] { + -moz-tab-size: 10; + tab-size: 10; +} + +.markdown-body .tab-size[data-tab-size="11"] { + -moz-tab-size: 11; + tab-size: 11; +} + +.markdown-body .tab-size[data-tab-size="12"] { + -moz-tab-size: 12; + tab-size: 12; +} + +.markdown-body .task-list-item { + list-style-type: none; +} + +.markdown-body .task-list-item+.task-list-item { + margin-top: 3px; +} + +.markdown-body .task-list-item input { + margin: 0 .2em .25em -1.6em; + vertical-align: middle; +} + +.markdown-body hr { + border-bottom-color: #eee; +} + +.markdown-body .pl-0 { + padding-left: 0!important; +} + +.markdown-body .pl-1 { + padding-left: 4px!important; +} + +.markdown-body .pl-2 { + padding-left: 8px!important; +} + +.markdown-body .pl-3 { + padding-left: 16px!important; +} + +.markdown-body .pl-4 { + padding-left: 24px!important; +} + +.markdown-body .pl-5 { + padding-left: 32px!important; +} + +.markdown-body .pl-6 { + padding-left: 40px!important; +} + +.markdown-body .pl-7 { + padding-left: 48px!important; +} + +.markdown-body .pl-8 { + padding-left: 64px!important; +} + +.markdown-body .pl-9 { + padding-left: 80px!important; +} + +.markdown-body .pl-10 { + padding-left: 96px!important; +} + +.markdown-body .pl-11 { + padding-left: 112px!important; +} + +.markdown-body .pl-12 { + padding-left: 128px!important; +} \ No newline at end of file diff --git a/docs/_sass/layout.scss b/docs/_sass/layout.scss new file mode 100644 index 0000000..18fe94b --- /dev/null +++ b/docs/_sass/layout.scss @@ -0,0 +1,687 @@ +.imageWrapper { // Sets the background image in the header area + height: 714px; + background: + linear-gradient( + rgba($image-overlay-color, $image-overlay-transparency), + rgba($image-overlay-color, $image-overlay-transparency) + ), + + url($header-image); + + background-repeat: no-repeat; + background-size: cover; + background-position: top; + border-radius: 0px 0px 40px 40px; + +} + +.headerBackground { + height: 115px; + background-color: rgba($header-color, $header-transparency); +} + +@media only screen and (max-width: 768px) { + + .headerBackground { + height: 80px; + } + +} + +.subPageHeaderBackground { + background-color: #fff; +} + +.container { // Set up the container for the site content + display: grid; + margin: auto; + max-width: $content-width; + padding-left: 15px; + padding-right: 15px; + grid-template-columns: repeat(12, 1fr); + grid-template-rows: 115px 876px auto auto; + grid-column-gap: 30px; + grid-template-areas: + "h h h h h h h h h h h h" + "p p p p p i i i i i i i" + "c c c c c c c c c c c c" + "f f f f f f f f f f f f"; +} + +.subPageContainer { + grid-template-rows: 115px auto auto auto; + background-color: #fff; +} + +@media only screen and (max-width: 768px) { + + .container { // Set up the container for the site content + grid-template-rows: 80px 811px auto auto; + } +} + +@media only screen and (max-width: 992px) { + + .container { + grid-column-gap: 0px; + grid-template-columns: 1; + grid-template-rows: 115px auto auto auto auto; + grid-template-areas: + "h h h h h h h h h h h h" + "i i i i i i i i i i i i" + "p p p p p p p p p p p p" + "c c c c c c c c c c c c" + "f f f f f f f f f f f f"; + } +} + +.page { + margin-top: 30px; + margin-bottom: 70px; + grid-column: 3/11; +} + +@media only screen and (max-width: 768px) { + + .page { + margin-top: 30px; + margin-bottom: 70px; + grid-column: 1/-1; + } + +} + +header { + grid-area: h; + display: flex; + margin-right: -15px; +} + +.logo { + display: flex; + justify-content: flex-start; + align-items: center; + height: 115px; + margin-right: 30px; +} + +.logo > p { + color: $header-title-color; + white-space: nowrap; + display: flex; + font-weight: bold; + margin-left: 15px; +} + +@media only screen and (max-width: 768px) { + + .logo { + height: 80px; + margin-right: 0px; + } + + .logo > p { + display: none; + } + +} + +.headerIcon { + width: 50px; + height: 50px; + -webkit-clip-path: url(#shape); + clip-path: url(#shape); +} + +@media only screen and (max-width: 768px) { + + .divider { + position: relative; + min-width: 1px; + max-width: 1px; + background-color:rgba(127, 127, 127, 0.2); + display: inline-block; + margin-left: 15px; + } + +} + + +// Navigation Links +.scroll { + display: flex; + width: 100%; + align-items: center; + justify-content: flex-end; + + height: 115px; + //margin-left: 15px; + + white-space: nowrap; + overflow-x: auto; + overflow-y: hidden; + -webkit-overflow-scrolling: touch; + -ms-overflow-style: -ms-autohiding-scrollbar; +} + +@media only screen and (max-width: 768px) { + + .scroll { + height: 80px; + padding-top: 100px; + padding-bottom: 100px; + margin-top: -60px; + justify-content: flex-start; + } + +} + +.scroll::-webkit-scrollbar { + display: none; +} + + +nav > ul { + color: #fff; + display: flex; + list-style-type: none; + +} + +nav > ul li { + padding-left: 30px; +} + +@media only screen and (max-width: 768px) { + + nav > ul li { + padding-left: 20px; + } + +} + +nav > ul li:first-child { + padding-left: 0px; + padding-left: 15px; +} + +nav > ul li:last-child { + padding-right: 15px; +} + +nav > ul li a:link, +nav > ul li a:visited { + text-decoration: none; + color: rgba($header-title-color, 0.6); +} + +nav > ul li a:hover, +nav > ul li a:active { + text-decoration: none; + color: rgba($header-title-color, 1); +} + + + +// Sub Page Header Styling +.subPageHeaderBackground .logo > p { + color: #000; +} + +.subPageHeaderBackground nav > ul li a:link, +.subPageHeaderBackground nav > ul li a:visited { + color: rgba(#000, 0.6); +} + +.subPageHeaderBackground nav > ul li a:hover, +.subPageHeaderBackground nav > ul li a:active { + color: rgba(#000, 1); +} + + + +// App Title, Price, Description and Links + +.appInfo { + grid-area: i; + display: flex; + flex-wrap: wrap; + padding-top: 140px; + align-content: flex-start; +} + +@media only screen and (max-width: 992px) { + + .appInfo { + padding-top: 50px; + justify-content: center; + } + +} + +.appIconShadow { + display: flex; + filter: $drop-shadow; +} + +.appIconLarge { + width: 120px; + height: 120px; + -webkit-clip-path: url(#shape120); + clip-path: url(#shape120); +} + +.appNamePriceContainer { + display: flex; + flex: 0 1 auto; + flex-direction: column; + align-items: start; + justify-content: center; + margin-left: 30px; +} + +.appName { + color: $app-title-color; +} + +.appPrice { + color: $app-price-color; + font-weight: normal; + margin-top: 13px; +} + +@media only screen and (max-width: 768px) { + + .appNamePriceContainer { + width: 100%; + margin-left: 0px; + align-items: center; + justify-content: center; + } + + .appName { + margin-top: 30px; + text-align: center; + } + + .appPrice { + margin-top: 13px; + text-align: center; + } + +} + +.appDescriptionContainer { + font-size: 2.5rem; + font-weight: normal; + width: 100%; + align-items: flex-start; + margin-top: 45px; + flex: 0 1 auto; + line-height: 1.5; +} + +.appDescription { + color: $app-description-color; +} + +@media only screen and (max-width: 992px) { + + .appDescription { + text-align: center; + } + +} + +.downloadButtonsContainer { + display: inline-block; + margin-top: 42px; + filter: $drop-shadow; +} + +@media only screen and (max-width: 992px) { + + .downloadButtonsContainer { + text-align: center; + } + +} + +.playStore { + height: 75px; + margin-right: 24px; +} + +@media only screen and (max-width: 992px) { + + .playStore { + margin-right: 24px; + margin-bottom: 0px; + } + +} + +@media only screen and (max-width: 528px) { + + .playStore { + margin-right: 0px; + margin-bottom: 24px; + } + +} + +.appStore { + height: 75px; +} + + + +// iPhone Device Preview + +.iphonePreview { + grid-area: p; + background-image: url($device-color); + background-size: 400px auto; + background-repeat: no-repeat; + margin-top: 68px; +} + +.iphoneScreen { + width: 349px; + -webkit-clip-path: url(#screenMask); + clip-path: url(#screenMask); + margin-left: 26px; + margin-top: 23px; +} + +.videoContainer { + width: 349px; + height: 755px; + -webkit-clip-path: url(#screenMask); + clip-path: url(#screenMask); + margin-left: 26px; + margin-top: 23px; +} + +.videoContainer > video { + width: 349px; + height: 755px; +} + +@media only screen and (max-width: 1070px) { + + .iphonePreview { + background-size: 370px auto; + } + + .iphoneScreen { + width: 322px; + margin-left: 24px; + margin-top: 22px; + } + + .videoContainer { + width: 322px; + height: 698px; + margin-left: 24px; + margin-top: 22px; + } + + .videoContainer > video { + width: 322px; + height: 698px; + } + +} + +@media only screen and (max-width: 992px) { + + .iphonePreview { + display: flex; + background-size: 260px auto; + background-position: center 0; + margin-top: 47px; + justify-content: center; + padding-bottom: 75px; + } + + .iphoneScreen { + width: 226px; + height: 488px; + -webkit-clip-path: url(#screenMask); + clip-path: url(#screenMask); + margin: 0px; + margin-top: 17px; + } + + .videoContainer { + width: 226px; + height: 488px; + margin-left: 0px; + margin-top: 17px; + } + + .videoContainer > video { + width: 226px; + height: 488px; + } + +} + + +// Feature List + +.features { + grid-area: c; + display: flex; + flex: 0 1 auto; + align-content: flex-start; + justify-content: flex-start; + flex-grow: 1; + flex-wrap: wrap; + margin-top: 93px; +} + +.feature { + display: flex; + padding-top: 63px; + padding-left: 15px; + padding-right: 15px; + width: calc(100%/3); +} + +.feature:nth-child(-n+3) { + padding-top: 0px; +} + +.feature:nth-child(3n) { + padding-right: 0px; +} + +.feature:nth-child(3n+1) { + padding-left: 0px; +} + +.iconBack { + color: $feature-icons-background-color; +} + +.iconTop { + color: $feature-icons-foreground-color; +} + +.socialIconBack { + color: $social-icons-background-color; +} + +.socialIconTop { + color: $social-icons-foreground-color; +} + +.featureText { + margin-left: 18px; +} + +.featureText > h3 { + color: $feature-title-color; +} + +.featureText > p { + color: $feature-text-color; + margin-top: 8px; + line-height: 1.5; +} + +@media only screen and (max-width: 992px) { + + .features { + flex-grow: 1; + flex-direction: row; + flex-wrap: wrap; + margin-top: 11px; + } + + .feature { + display: flex; + padding-top: 41px; + padding-left: 15px; + padding-right: 15px; + width: 100%; + } + + .feature:nth-child(-n+3) { + padding-top: 41px; + } + + .feature:nth-child(1) { + padding-top: 0px; + } + + .feature:nth-child(3n) { + padding-right: 15px; + } + + .feature:nth-child(3n+1) { + padding-left: 15px; + } + +} + +@media only screen and (max-width: 375px) { + + .features { + flex-grow: 1; + flex-direction: row; + flex-wrap: wrap; + margin-top: 11px; + } + + .feature { + display: flex; + padding-top: 41px; + padding-left: 0px; + padding-right: 0px; + width: 100%; + } + + .feature:nth-child(-n+3) { + padding-top: 41px; + } + + .feature:nth-child(1) { + padding-top: 0px; + } + + .feature:nth-child(3n) { + padding-right: 0px; + } + + .feature:nth-child(3n+1) { + padding-left: 0px; + } + +} + + + +// Footer + +footer { + grid-area: f; + display: flex; + flex-wrap: wrap; + justify-content: center; +} + +.footerText { + color: $footer-text-color; + display: block; + line-height: 1.5; + width: 100%; + text-align: center; + padding-top: 70px; + padding-bottom: 70px; +} + +.footerIcons { + padding-bottom: 70px; + display: flex; + flex: 0 0 100%; + justify-content: center; +} + +.footerLinks { + display: flex; + text-align: center; + padding-bottom: 70px; +} + +.footerLinks a { + margin-right: 30px; +} + +.footerLinks a:last-child { + margin-right: 0px; +} + + +@media only screen and (max-width: 768px) { + + .footerLinks { + flex-direction: column; + } + + .footerLinks a { + justify-content: stretch; + margin-right: 0px; + margin-top: 20px; + } + + .footerLinks a:first-child { + margin-top: 0px; + } + +} + +@media only screen and (max-width: 992px) { + + .footerText { + color: $footer-text-color; + display: block; + line-height: 1.5; + width: 100%; + text-align: center; + padding-top: 54px; + padding-bottom: 61px; + } + + .footerIcons { + padding-bottom: 70px; + display: flex; + } + +} + +.hidden { + display: none; +} \ No newline at end of file diff --git a/docs/assets/appstore.png b/docs/assets/appstore.png new file mode 100644 index 0000000..a9b9462 Binary files /dev/null and b/docs/assets/appstore.png differ diff --git a/docs/assets/black.png b/docs/assets/black.png new file mode 100644 index 0000000..dbee4cb Binary files /dev/null and b/docs/assets/black.png differ diff --git a/docs/assets/blue.png b/docs/assets/blue.png new file mode 100644 index 0000000..3b50d69 Binary files /dev/null and b/docs/assets/blue.png differ diff --git a/docs/assets/coral.png b/docs/assets/coral.png new file mode 100644 index 0000000..ebe0e54 Binary files /dev/null and b/docs/assets/coral.png differ diff --git a/docs/assets/headerimage.png b/docs/assets/headerimage.png new file mode 100644 index 0000000..ec25801 Binary files /dev/null and b/docs/assets/headerimage.png differ diff --git a/docs/assets/playstore.png b/docs/assets/playstore.png new file mode 100644 index 0000000..6307d36 Binary files /dev/null and b/docs/assets/playstore.png differ diff --git a/docs/assets/screenshot/yourscreenshot.png b/docs/assets/screenshot/yourscreenshot.png new file mode 100644 index 0000000..1f71756 Binary files /dev/null and b/docs/assets/screenshot/yourscreenshot.png differ diff --git a/docs/assets/squircle.svg b/docs/assets/squircle.svg new file mode 100644 index 0000000..80225d7 --- /dev/null +++ b/docs/assets/squircle.svg @@ -0,0 +1,10 @@ + + + + + + diff --git a/docs/assets/squircle120.svg b/docs/assets/squircle120.svg new file mode 100644 index 0000000..1ef9a90 --- /dev/null +++ b/docs/assets/squircle120.svg @@ -0,0 +1,10 @@ + + + + + + diff --git a/docs/assets/videos/Place-video-files-here.txt b/docs/assets/videos/Place-video-files-here.txt new file mode 100644 index 0000000..ce29447 --- /dev/null +++ b/docs/assets/videos/Place-video-files-here.txt @@ -0,0 +1,14 @@ +Place video files in this folder. + +Formats for Chrome & Firefox: +.webm +.ogg + +Formats for Safari: +.mp4 +.mov + +Optimal video resolutions: +828x1792 +1125x2436 +1242x2688 diff --git a/docs/assets/white.png b/docs/assets/white.png new file mode 100644 index 0000000..fccd2c1 Binary files /dev/null and b/docs/assets/white.png differ diff --git a/docs/assets/yellow.png b/docs/assets/yellow.png new file mode 100644 index 0000000..338a86a Binary files /dev/null and b/docs/assets/yellow.png differ diff --git a/docs/index.html b/docs/index.html new file mode 100644 index 0000000..036c436 --- /dev/null +++ b/docs/index.html @@ -0,0 +1,3 @@ +--- +layout: default +--- \ No newline at end of file diff --git a/docs/main.scss b/docs/main.scss new file mode 100644 index 0000000..be72329 --- /dev/null +++ b/docs/main.scss @@ -0,0 +1,36 @@ +--- +# Front matter comment to ensure Jekyll properly reads file. +--- + +$body-color: {{ site.body_background_color }}; + +$header-image: "{{ site.cover_image }}"; +$device-color: "assets/{{ site.device_color }}.png"; + +$accent-color: {{ site.link_color }}; + +$header-title-color: {{ site.topbar_title_color }}; +$app-title-color: {{ site.app_title_color }}; +$app-price-color: {{ site.app_price_color }}; +$app-description-color: {{ site.app_description_color }}; + +$feature-title-color: {{ site.feature_title_color }}; +$feature-text-color: {{ site.feature_text_color }}; +$footer-text-color: {{ site.footer_text_color }}; + +$header_color: {{ site.topbar_color }}; +$header_transparency: {{ site.topbar_transparency }}; + +$image-overlay-color: {{ site.cover_overlay_color }}; +$image-overlay-transparency: {{ site.cover_overlay_transparency }}; + +$feature-icons-foreground-color: {{ site.feature_icons_foreground_color }}; +$feature-icons-background-color: {{ site.feature_icons_background_color }}; + +$social-icons-foreground-color: {{ site.social_icons_foreground_color }}; +$social-icons-background-color: {{ site.social_icons_background_color }}; + +@import + "base", + "layout", + "github-markdown" \ No newline at end of file -- cgit v1.2.3