Parcourir la source

MiKee customisation

maxep il y a 7 ans
Parent
commit
b3dc206d9c
46 fichiers modifiés avec 593 ajouts et 305 suppressions
  1. 0 1
      CNAME
  2. 7 0
      Dockerfile
  3. 3 0
      Gemfile
  4. 63 0
      Gemfile.lock
  5. 14 0
      Jenkinsfile
  6. 1 1
      LICENSE
  7. 3 105
      README.md
  8. 56 47
      _config.yml
  9. 2 2
      _includes/head.html
  10. 100 0
      _layouts/home.html
  11. 2 2
      _layouts/page.html
  12. 39 57
      _sass/_devices.scss
  13. BIN
      apple-icon-precomposed.png
  14. BIN
      assets/img/app-icon-512.png
  15. BIN
      assets/img/favicon.png
  16. BIN
      assets/img/iphonex.png
  17. BIN
      assets/img/mikee-all-screenshot.png
  18. 24 2
      css/styles.scss
  19. 16 0
      docker-compose.yml
  20. 48 0
      eula.md
  21. BIN
      favicon.ico
  22. BIN
      images/app-icon-512.jpg
  23. BIN
      images/app-screen-640x1136.jpg
  24. BIN
      images/awesome-app-landing-page-screenshot.png
  25. BIN
      images/backgrounds/31-usersthink-stock-image-web.jpg
  26. BIN
      images/backgrounds/37-usersthink-stock-image-web.jpg
  27. BIN
      images/backgrounds/58-usersthink-stock-image-web.jpg
  28. BIN
      images/backgrounds/71-usersthink-stock-image-web.jpg
  29. BIN
      images/backgrounds/73-usersthink-stock-image-web.jpg
  30. BIN
      images/backgrounds/75-usersthink-stock-image-web.jpg
  31. BIN
      images/backgrounds/81-usersthink-stock-image-web.jpg
  32. BIN
      images/backgrounds/91-usersthink-stock-image-web.jpg
  33. BIN
      images/backgrounds/95-usersthink-stock-image-web.jpg
  34. BIN
      images/config.png
  35. BIN
      images/devices/iphone-se-silver-vertical.png
  36. BIN
      images/devices/iphone-se-space-gray-vertical.png
  37. BIN
      images/devices/ipod-touch-blue-vertical.png
  38. BIN
      images/fork.png
  39. 0 5
      index.html
  40. 17 0
      index.md
  41. 3 0
      keeweb-plugin/.gitignore
  42. 21 0
      keeweb-plugin/manifest.json
  43. 66 0
      keeweb-plugin/plugin.css
  44. 43 0
      privacy.md
  45. 65 0
      terms.md
  46. 0 83
      themes/default/index.html

+ 0 - 1
CNAME

@@ -1 +0,0 @@
-

+ 7 - 0
Dockerfile

@@ -0,0 +1,7 @@
+FROM nginx:alpine
+MAINTAINER Maxime Epain "me@maxep.me"
+
+EXPOSE 80
+
+# Copy site
+COPY _site/ /usr/share/nginx/html

+ 3 - 0
Gemfile

@@ -0,0 +1,3 @@
+source 'https://rubygems.org'
+
+gem 'jekyll'

+ 63 - 0
Gemfile.lock

@@ -0,0 +1,63 @@
+GEM
+  remote: https://rubygems.org/
+  specs:
+    addressable (2.7.0)
+      public_suffix (>= 2.0.2, < 5.0)
+    colorator (1.1.0)
+    concurrent-ruby (1.1.5)
+    em-websocket (0.5.1)
+      eventmachine (>= 0.12.9)
+      http_parser.rb (~> 0.6.0)
+    eventmachine (1.2.7)
+    ffi (1.11.1)
+    forwardable-extended (2.6.0)
+    http_parser.rb (0.6.0)
+    i18n (0.9.5)
+      concurrent-ruby (~> 1.0)
+    jekyll (3.8.6)
+      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-sass-converter (1.5.2)
+      sass (~> 3.4)
+    jekyll-watch (2.2.1)
+      listen (~> 3.0)
+    kramdown (1.17.0)
+    liquid (4.0.3)
+    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.2)
+      forwardable-extended (~> 2.6)
+    public_suffix (4.0.1)
+    rb-fsevent (0.10.3)
+    rb-inotify (0.10.0)
+      ffi (~> 1.0)
+    rouge (3.11.0)
+    ruby_dep (1.5.0)
+    safe_yaml (1.0.5)
+    sass (3.7.4)
+      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
+
+BUNDLED WITH
+   2.0.1

+ 14 - 0
Jenkinsfile

@@ -0,0 +1,14 @@
+node (label: 'docker') {
+	def app
+
+	stage('Build') {
+		checkout scm
+		sh 'mkdir -p _site && docker run --rm --volume="$PWD":/srv/jekyll jekyll/builder jekyll build'
+        app = docker.build("maxep/mikee")
+    }
+
+    stage('Deploy') {
+        sh 'docker-compose up -d'
+		sh 'docker image prune -a -f'
+    }
+}

+ 1 - 1
LICENSE

@@ -1,6 +1,6 @@
 The MIT License (MIT)
 
-Copyright (c) 2016 Josh Buchea
+Copyright (c) 2019 Maxime Epain
 
 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

+ 3 - 105
README.md

@@ -1,109 +1,7 @@
-# Awesome App Landing Page
+# MiKee Landing Page
 
-**Get an awesome landing page for your iOS app in less than 30 seconds (seriously)**
-
-It's easy to try out, you can just delete your forked repository if you don't like it
-
-In less than 30 seconds you'll be set up with an awesome app landing page like the one below giving you more time to spend making awesome apps! All without leaving your browser.
-
-![Awesome App Landing Page Theme Screenshot](/images/awesome-app-landing-page-screenshot.png "Awesome App Landing Page Theme Screenshot")
-
-## Features
-
-✓ Command-line free _fork-first workflow_, using GitHub.com to create and customize your awesome app landing page
-✓ Free & Automatic Hosting with GitHub Pages
-✓ Fully Responsive Base Theme (**<a href="http://joshbuchea.github.io/awesome-app-landing-page">Demo</a>**)
-✓ Apple Devices for Screenshots
-✓ Apple Smart App Banner
-✓ Google Analytics Integration
-✓ Social Icons
-✓ Sass Support
-✓ Bootstrap
-✓ Font Awesome
-
-✘ No installing dependencies
-✘ No need to set up local development
-✘ No configuring plugins
-✘ No need to spend time on theming
-✘ More time to code other things ... wait ✓!
-
-## Quick Start
-
-### Step 1) Fork this repo
-
-![Step 1](/images/fork.png "Step 1")
-
-Your Awesome App Landing Page will often be viewable immediately at `http://username.github.io/awesome-app-landing-page` (if it's not, you can often force it to build by completing step 2)
-
-**IMPORTANT**: Don't forget to replace **username** with the GitHub **user name** or **organization name** you forked the repo to.
-
-### Step 2) Edit `_config.yml` to customize
-
-Enter required information:
-- **App Name**
-- **iOS App ID** (10 Digit Numeric App ID)
-
-Optionally enter additional information:
-- Android App ID (e.g. com.example.appname)
-- App Icon (will auto-magically load if left blank)
-- App Screenshot (will auto-magically load if left blank)
-- App Preview (if you want this instead of a screenshot)
-- App and Creator Twitter handles
-- Image for sharing on Social Media
-- Your own Favicon
-- Marketing Header
-- Marketing Description
-- Social Links
-- Hide/Show App Icon
-- Hide/Show Smart App Banner
-- Full Screen Background Image (optional)
-- Site Title & Description
-- Google Analytics Site ID
-
-Making a change to `_config.yml` (or any file in your repository) will force GitHub Pages to rebuild your site with jekyll. Your rebuilt site will be viewable a few seconds later at `http://username.github.io/repository-name` - if not, give it ten minutes as GitHub suggests and it'll appear soon
-
-> There are 2 different ways that you can make changes to your page's files:
-
-> 1. Edit files within your repository in the browser at GitHub.com (shown below).
-> 2. Clone down your repository and make updates locally, then push them to your GitHub repository.
-
-![_config.yml](/images/config.png "_config.yml")
-
-## Local Development (Optional)
-
-1. Install Jekyll and plug-ins in one fell swoop. `gem install github-pages` This mirrors the plug-ins used by GitHub Pages on your local machine including Jekyll, Sass, etc.
-2. Clone down your fork `git clone https://github.com/yourusername/repository-name.git`
-3. Serve the site and watch for markup/sass changes `jekyll serve`
-4. View your website at http://127.0.0.1:4000/
-5. Commit any changes and push everything to the `gh-pages` branch of your repository. GitHub Pages will then rebuild and serve your website.
-
-## Credits
-
-- [GitHub Pages](https://pages.github.com/)
-- [Jekyll Now](https://github.com/barryclark/jekyll-now)
-- [Jekyll](https://github.com/jekyll/jekyll)
-- [Bootstrap](https://github.com/mdo/bootstrap)
-- [FontAwesome](https://fortawesome.github.io/Font-Awesome/)
-
-## Awesome App Landing Pages
-
-Once you setup your **Awesome App Landing Page**, please open a pull request and add your site!
-
-- [Icon Babel](http://iconbabel.com/ "Transcend language barriers using icons")
-- [FeedShare](http://feedshare.org/ "Find & Share Free Food")
-- [My Playparks](https://myplayparks.com/ "Browse near by playgrounds")
-
-## Questions?
-
-[Open an Issue](https://github.com/joshbuchea/awesome-app-landing-page/issues/new) and let's chat!
-
-## Contributing
-
-Open an issue or a pull request to suggest changes or additions.
-
-## Author
-
-**[Josh Buchea](http://joshbuchea.com/)**
+MiKee landing page based on [Awesome App Landing Page](https://github.com/joshbuchea/awesome-app-landing-page).
+Build using https://jekyllrb.com/
 
 ## License
 

+ 56 - 47
_config.yml

@@ -1,28 +1,44 @@
-#
-# Awesome App Landing Page Config
-#
+# 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: MiKee
+description: # Optional - Enter your site description
 
-# Be sure all REQUIRED fields are filled out!
+favicon: assets/img/favicon.png # uncomment if uploading own favicon
+  # To update use path relative to project root with no leading slash:
+  # e.g. images/app-favicon.png - can be .ico or .png
+  # 16px or greater, square
 
-#
-# General App Info
-#
 app:
-  name: Awesome App # REQUIRED - Enter your app name
-  ios_id: 912209541 # REQUIRED - 10 Digit Numeric App ID (lookup in iTunes Connect)
+  name: MiKee # REQUIRED - Enter your app name
+  ios_id: 1348470981 # REQUIRED - 10 Digit Numeric App ID (lookup in iTunes Connect)
   android_id: # Optional - Enter Android app id like: com.example.app
 
-  icon: # Leave blank to auto-magically populate
+  ios_beta: https://testflight.apple.com/join/0Y5rP4jN
+
+  icon: assets/img/app-icon-512.png # Leave blank to auto-magically populate
   # To update use path relative to project root with no leading slash:
   # e.g. images/app-icon-512.png
   # 512px or greater, square
 
-  #favicon: # uncomment if uploading own favicon
+  favicon: assets/img/favicon.png # uncomment if uploading own favicon
   # To update use path relative to project root with no leading slash:
   # e.g. images/app-favicon.png - can be .ico or .png
   # 16px or greater, square
 
-  screenshot: # Leave blank to auto-magically populate
+  screenshot: assets/img/mikee-all-screenshot.png # Leave blank to auto-magically populate
   # To update use path relative to project root with no leading slash:
   # e.g. images/app-screen-640x1136.png
   # 640x1136px
@@ -39,11 +55,18 @@ app:
   # To update use path relative to project root with no leading slash:
   # e.g. images/app-social_image.png
   # 512px or greater, square or width = 2X height
+  appetize_key: # 5mr4fvxmmrpea13dj8hbc8ark4
+
 #
-# Marketing
+# Theme Settings
 #
-marketing_header: Does Awesome Stuff # Optional
-marketing_desc: Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
+background_color: white # Optional
+background_image: # Optional - Use Relative path e.g. images/backgrounds/image.jpg
+text_color: black # Optional
+link_color: "#7576FC"
+social_link_color: white # Optional
+download_button_background_color: "#7576FC" # Optional
+download_button_text_color: white; # Optional
 
 #
 # Social Links
@@ -68,51 +91,37 @@ enable:
   smart_app_banner: true
 
 #
-# Device
-#
-# Available devices:
-# * iphone-se-silver-vertical
-# * iphone-se-space-gray-vertical
-# * ipod-touch-blue-vertical
-#
-device: iphone-se-silver-vertical # REQUIRED
-
-#
-# Theme Settings
+# Enable/Disable Features & Page Elements
 #
-background_color: "#989898" # Optional
-background_image: /images/backgrounds/58-usersthink-stock-image-web.jpg # Optional - Use Relative path e.g. images/backgrounds/image.jpg
-text_color: white # Optional
-link_color: # Optional
-social_link_color: white # Optional
-download_button_background_color: "#0191FF" # Optional
-download_button_text_color: white; # Optional
+footers:
+  - title: Terms & Conditions
+    url: /terms
 
-#
-# Site Info
-#
-# If you want specific meta info for your <head></head> tags
-#
-title: # Optional - Enter your site title
-description: # Optional - Enter your site description
+  - title: Privacy Policy
+    url: /privacy
 
 #
 # Google Analytics
 #
 google_analytics: # Enter your tracking code (e.g. UA-2110908-2) to activate tracking
 
-#
-# !! You don't need to change any of the configuration flags below !!
-#
-
-# The release of Awesome App Landing Page that you're using
-version: v1.0
+# Build settings
+markdown: kramdown
 
 # Set the Sass partials directory, as we're using @imports
 sass:
   style: :compressed
 
-# Exclude these files from your production _site
+permalink: /:title/
+
+# Exclude from processing.
+# The following items will not be processed, by default. Create a custom list
+# to override the default setting.
 exclude:
   - LICENSE
   - README.md
+  - Dockerfile
+  - Jenkinsfile
+  - docker-compose.yml
+  - Gemfile
+  - Gemfile.lock

+ 2 - 2
_includes/head.html

@@ -8,7 +8,7 @@
 
   <!-- Favicon -->
   {% if site.app.favicon %}
-  <link rel="shortcut icon" href="{{ site.app.favicon }}">
+  <link rel="shortcut icon" href="{{ site.favicon }}">
   {% endif %}
   <link rel="apple-touch-icon-precomposed" href="apple-icon-precomposed.png">
 
@@ -26,7 +26,7 @@
   <!-- Styles -->
   <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css">
   <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css">
-  <link rel="stylesheet" href="themes/default/styles.css">
+  <link rel="stylesheet" href="{{ "/css/styles.css" | prepend: site.baseurl }}">
 
   <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
   <!-- WARNING: Respond.js doesn't work if you view the page via file:// -->

+ 100 - 0
_layouts/home.html

@@ -0,0 +1,100 @@
+---
+layout: default
+---
+
+<div class="main" role="main">
+    <div class="container">
+  
+      <div class="row">
+        <div class="col-sm-6">
+  
+          <!-- Marketing -->
+          <div class="marketing">
+            <div class="app-meta">
+              {% if site.enable.app_icon %}
+                <img
+                  class="app-icon"
+                  style="min-width: 92px;"
+                  height="auto"
+                  {% if site.app.icon %} src="{{ site.app.icon }}"{% endif %}
+                />
+              {% endif %}
+              <span class="app-name">{{ site.title }}</span>
+            </div>
+  
+            <h2 class="marketing-header">{{ page.title }}</h2>
+            {{ content }}
+  
+            <div class="download-buttons">
+              {% if site.app.ios_beta %}
+              <a
+                class="download-btn btn btn-lg"
+                href="{{ site.app.ios_beta }}">
+                <i class="fa fa-apple fa-lg" aria-hidden="true"></i> Beta Program
+              </a>
+              {% elsif site.app.ios_id %}
+              <a
+                class="download-btn btn btn-lg"
+                href="https://itunes.apple.com/app/id{{ site.app.ios_id }}?mt=8">
+                <i class="fa fa-apple fa-lg" aria-hidden="true"></i> App Store
+              </a>
+              {% endif %}
+  
+              {% if site.app.android_id %}
+              <a
+                class="download-btn btn btn-lg"
+                href="https://play.google.com/store/apps/details?id={{ site.app.android_id }}">
+                <i class="fa fa-android fa-lg" aria-hidden="true"></i> Google Play
+              </a>
+              {% endif %}
+            </div>
+          </div>
+        </div>
+  
+  
+        <div class="col-sm-6">
+  
+          <!-- App Preview or Screenshot(s) -->
+          {% if site.app.appetize_key %}
+          <div class="device appetize">
+            <div class="frame"></div>
+            <iframe src="https://appetize.io/embed/{{ site.app.appetize_key }}?autoplay=true&useLastFrame=true&orientation=portrait&deviceColor=black&screenOnly=true&disableHome=true&device=iphonex&scale=100" frameborder="0" scrolling="no"></iframe>
+          </div>
+          {% elsif site.app.video %}
+          <div class="device appetize">
+            <div class="frame"></div>
+            <div class="video-container">
+              <iframe src="{{ site.app.video }}" height="426.66" width="240" allowfullscreen="" frameborder="0"></iframe>
+            </div>
+          </div>
+          {% else %}
+          <div class="device screenshot">
+            <div class="frame"></div>
+            <img class="app-screenshot" {% if site.app.screenshot %}src="{{ site.app.screenshot }}"{% endif %}/>
+          </div>
+          {% endif %}
+        </div>
+      </div>
+  
+    </div>
+  </div>
+  
+  <div class="social">
+    <div class="container">
+      <div class="row">
+        <div class="col-sm-12">
+          {% include social.html %}
+        </div>
+      </div>
+    </div>
+  </div>
+  
+  
+  <div class="footer">
+    <div class="container">
+      {% for footer in site.footers %}
+        <a target="_self" href="{{ footer.url }}" style="margin: 12px; font-size: 14px;">{{ footer.title }}</a>
+      {% endfor %}
+    </div>
+  </div>
+  

+ 2 - 2
_layouts/page.html

@@ -2,10 +2,10 @@
 layout: default
 ---
 
-<div class="page">
-  <h1>{{ page.title }}</h1>
+<div class="container">
 
   <div class="entry">
     {{ content }}
   </div>
+
 </div>

+ 39 - 57
_sass/_devices.scss

@@ -8,72 +8,54 @@
   background-size: cover;
 }
 
-.device .app-screenshot {
-  position: absolute;
-  width: 240px;
-  height: auto;
+//
+// iPhone X White
+//
+
+.device.appetize {
+  width: 426px;
+  height: 859px;
 }
 
-.device .video-container {
+.device.appetize .frame {
   position: absolute;
-  width: 240px;
-  height: 426.66px;
-  padding-bottom: 0;
-    margin-left: 24px;
-    margin-top: 90.67px;
-    overflow: hidden;
+  width: 100%;
+  height: 100%; 
+  z-index:1;
+  pointer-events: none;
+  background-image: url(/assets/img/iphonex.png);
+  background-size: 100%;
 }
-// Video
 
-.video-container iframe {
-    position: absolute;
-    top:0;
-    left: 0;
-    width: 100%;
-    height: 100%;
+.device.appetize iframe {
+  position: absolute;
+  width: 375px;
+  height: 812px;
+  margin-left: 24px;
+  margin-top: 31px;
+  z-index:0;
 }
 
-//
-// iPhone SE Silver Vertical
-//
-
-.device.iphone-se-silver-vertical {
-  width: 288px;
-  height: 608px;
-  background-image: url(../../images/devices/iphone-se-silver-vertical.png);
-}
-.device.iphone-se-silver-vertical .app-screenshot {
-  top: 91px;
-  left: 25px;
-  width: 240px;
+.device.screenshot {
+  width: 341px;
+  height: 688px;
 }
 
-//
-// iPhone SE Space Gray Vertical
-//
-
-.device.iphone-se-space-gray-vertical {
-  width: 288px;
-  height: 608px;
-  background-image: url(../../images/devices/iphone-se-space-gray-vertical.png);
-}
-.device.iphone-se-space-gray-vertical .app-screenshot {
-  top: 91px;
-  left: 25px;
-  width: 240px;
+.device.screenshot .frame {
+  position: absolute;
+  width: 100%;
+  height: 100%; 
+  z-index:1;
+  pointer-events: none;
+  background-image: url(/assets/img/iphonex.png);
+  background-size: 100%;
 }
 
-//
-// iPod Touch Blue Vertical
-//
-
-.device.ipod-touch-blue-vertical {
-  width: 291px;
-  height: 614px;
-  background-image: url(../../images/devices/ipod-touch-blue-vertical.png);
-}
-.device.ipod-touch-blue-vertical .app-screenshot {
-  top: 87px;
-  left: 23px;
-  width: 246px;
+.device.screenshot img {
+  position: absolute;
+  width: 300px;
+  height: 650px;
+  margin-left: 19px;
+  margin-top: 25px;
+  z-index:0;
 }

BIN
apple-icon-precomposed.png


BIN
assets/img/app-icon-512.png


BIN
assets/img/favicon.png


BIN
assets/img/iphonex.png


BIN
assets/img/mikee-all-screenshot.png


+ 24 - 2
themes/default/styles.scss → css/styles.scss

@@ -38,7 +38,12 @@ a {
   transition: all .3s;
 }
 
+ul {
+  list-style-type: disc;
+}
+
 {% if site.link_color %}
+
 a {
   color: {{ site.link_color }};
 }
@@ -47,6 +52,15 @@ a:focus,
 a:hover {
   color: darken({{ site.link_color }}, 20%);
 }
+
+ul > li {
+  color: {{ site.link_color }};
+}
+
+ul > li > span {
+  color: black;
+}
+
 {% endif %}
 
 //
@@ -95,6 +109,13 @@ a:hover {
   font-weight: 500;
 }
 
+.marketing-features {
+  margin: 0 auto 20px;
+  max-width: 450px;
+  white-space: pre-wrap;
+  font-weight: 500;
+}
+
 //
 // Download Buttons
 //
@@ -104,6 +125,7 @@ a:hover {
 }
 
 .download-btn {
+  margin-top: 20px;
   margin-right: 20px;
   margin-bottom: 20px;
   border: none;
@@ -121,11 +143,11 @@ a:hover {
 
 .download-btn:focus,
 .download-btn:hover {
-  background-color: darken(#0191FF, 20%);
+  background-color: darken(#0191FF, 5%);
   color: #fff;
 
   {% if site.download_button_background_color %}
-  background-color: darken({{ site.download_button_background_color }}, 20%);
+  background-color: darken({{ site.download_button_background_color }}, 5%);
   {% endif %}
 
   {% if site.download_button_text_color %}

+ 16 - 0
docker-compose.yml

@@ -0,0 +1,16 @@
+version: '3'
+
+services:
+  owncloud:
+    image: maxep/mikee
+    container_name: mikee
+    restart: unless-stopped
+    environment:
+      - VIRTUAL_HOST=mikee.maxep.me
+      - LETSENCRYPT_HOST=mikee.maxep.me
+      - LETSENCRYPT_EMAIL=maxime.epain@gmail.com
+
+networks:
+  default:
+    external:
+      name: proxy

+ 48 - 0
eula.md

@@ -0,0 +1,48 @@
+---
+layout: page
+title: EULA
+permalink: /eula
+---
+
+## End-User License Agreement (EULA) of MiKee
+
+This End-User License Agreement ("EULA") is a legal agreement between you and Maxime Epain
+
+This EULA agreement governs your acquisition and use of our MiKee software ("Software") directly from Maxime Epain or indirectly through a Maxime Epain authorized reseller or distributor (a "Reseller").
+
+Please read this EULA agreement carefully before completing the installation process and using the MiKee software. It provides a license to use the MiKee software and contains warranty information and liability disclaimers.
+
+If you register for a free trial of the MiKee software, this EULA agreement will also govern that trial. By clicking "accept" or installing and/or using the MiKee software, you are confirming your acceptance of the Software and agreeing to become bound by the terms of this EULA agreement.
+
+If you are entering into this EULA agreement on behalf of a company or other legal entity, you represent that you have the authority to bind such entity and its affiliates to these terms and conditions. If you do not have such authority or if you do not agree with the terms and conditions of this EULA agreement, do not install or use the Software, and you must not accept this EULA agreement.
+
+This EULA agreement shall apply only to the Software supplied by Maxime Epain herewith regardless of whether other software is referred to or described herein. The terms also apply to any Maxime Epain updates, supplements, Internet-based services, and support services for the Software, unless other terms accompany those items on delivery. If so, those terms apply. This EULA was created by EULA Template for MiKee.
+
+**License Grant**
+
+Maxime Epain hereby grants you a personal, non-transferable, non-exclusive licence to use the MiKee software on your devices in accordance with the terms of this EULA agreement.
+
+You are permitted to load the MiKee software (for example a PC, laptop, mobile or tablet) under your control. You are responsible for ensuring your device meets the minimum requirements of the MiKee software.
+
+You are not permitted to:
+
+Edit, alter, modify, adapt, translate or otherwise change the whole or any part of the Software nor permit the whole or any part of the Software to be combined with or become incorporated in any other software, nor decompile, disassemble or reverse engineer the Software or attempt to do any such things
+Reproduce, copy, distribute, resell or otherwise use the Software for any commercial purpose
+Allow any third party to use the Software on behalf of or for the benefit of any third party
+Use the Software in any way which breaches any applicable local, national or international law
+use the Software for any purpose that Maxime Epain considers is a breach of this EULA agreement
+
+**Intellectual Property and Ownership**
+
+Maxime Epain shall at all times retain ownership of the Software as originally downloaded by you and all subsequent downloads of the Software by you. The Software (and the copyright, and other intellectual property rights of whatever nature in the Software, including any modifications made thereto) are and shall remain the property of Maxime Epain.
+
+Maxime Epain reserves the right to grant licences to use the Software to third parties.
+Termination
+
+This EULA agreement is effective from the date you first use the Software and shall continue until terminated. You may terminate it at any time upon written notice to Maxime Epain.
+
+It will also terminate immediately if you fail to comply with any term of this EULA agreement. Upon such termination, the licenses granted by this EULA agreement will immediately terminate and you agree to stop all access and use of the Software. The provisions that by their nature continue and survive will survive any termination of this EULA agreement.
+
+**Governing Law**
+
+This EULA agreement, and any dispute arising out of or in connection with this EULA agreement, shall be governed by and construed in accordance with the laws of France.

BIN
favicon.ico


BIN
images/app-icon-512.jpg


BIN
images/app-screen-640x1136.jpg


BIN
images/awesome-app-landing-page-screenshot.png


BIN
images/backgrounds/31-usersthink-stock-image-web.jpg


BIN
images/backgrounds/37-usersthink-stock-image-web.jpg


BIN
images/backgrounds/58-usersthink-stock-image-web.jpg


BIN
images/backgrounds/71-usersthink-stock-image-web.jpg


BIN
images/backgrounds/73-usersthink-stock-image-web.jpg


BIN
images/backgrounds/75-usersthink-stock-image-web.jpg


BIN
images/backgrounds/81-usersthink-stock-image-web.jpg


BIN
images/backgrounds/91-usersthink-stock-image-web.jpg


BIN
images/backgrounds/95-usersthink-stock-image-web.jpg


BIN
images/config.png


BIN
images/devices/iphone-se-silver-vertical.png


BIN
images/devices/iphone-se-space-gray-vertical.png


BIN
images/devices/ipod-touch-blue-vertical.png


BIN
images/fork.png


+ 0 - 5
index.html

@@ -1,5 +0,0 @@
----
-layout: default
----
-
-{% include_relative themes/default/index.html %}

+ 17 - 0
index.md

@@ -0,0 +1,17 @@
+---
+# Feel free to add content and custom Front Matter to this file.
+# To modify the layout, see https://jekyllrb.com/docs/themes/#overriding-theme-defaults
+
+layout: home
+---
+
+## Password Safe
+
+MiKee safely stores passwords and other sensitive data on your iOS device. Compatible with [KeePass](https://keepass.info/), MiKee synchronizes your Password Database from the cloud and auto-fill your credentials in other apps and webpages.
+
+### Features
+- <span>Create/Import Password Database.</span>
+- <span>Synchronize Password Database with Document apps (iCloud, Dropbox, Nextcloud, etc ...)</span>
+- <span>Compatible with iOS AutoFill feature.</span>
+- <span>Unlock using Touch ID or Face ID.</span>
+- <span>Support Time-based One-Time Password (TOTP).</span>

+ 3 - 0
keeweb-plugin/.gitignore

@@ -0,0 +1,3 @@
+.DS_Store
+*.log
+*.pem

+ 21 - 0
keeweb-plugin/manifest.json

@@ -0,0 +1,21 @@
+{
+  "version": "0.0.1",
+  "manifestVersion": "0.1.0",
+  "name": "mikee",
+  "description": "MiKee Theme",
+  "author": {
+    "name": "Maxime Epain",
+    "email": "maxime.epain@gmail.com",
+    "url": "http://maxep.me"
+  },
+  "resources": {
+    "css": "BmDkYqTxm3t5ypMeyofAyK1kKn5asxQGQR2rWjzeJ3Veop1pUHacAHihCxe18njAgFJzsB6WvXZFxm7+Yr1/IHF5CiB+V1iukrxTroMt/b8cKuaBHs2Ynd3bz/l5tVue75wmgqRx6oAVaaRPqekQWzvCXwabrzw/FPM5H3U4HfNNK49lffXb464wq6XTilVncoA1Gx9lW8Ny4O+zt1+ILQ88FxcYycXnGWnWFPXAuh3v42l3O6qJzqNTyQgz9RiHxqrEA46aNAOS21yjJPIhgoWCPDoZ+0bJ7pLPxnlZqBVgN6EumKmrJO/dMjTenthKhR/SCC2fOWNEajLPuGKicA=="
+  },
+  "licence": "MIT",
+  "url": "https://mikee.maxep.me",
+  "publicKey": "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAqzHpNuqI9eWeE7wjcMNCCiM0ymm/tgE2ODHMBfrUgWSUGsC43r/e+EXGKrjssZCy6bZb5JkAEIuqpNJpFzUwydm30/16C5MAfHLT0tZWVCYGoVP5WatRHf9/5xSzhoJgA+mBKA+igrRru+HdnBBkT0lFvsULiFtRf3Edt4wyTFpL12vnTQFIk9OjIsfn5MYuEM2pUGmuHO8mmlhkDYBfi4jnxsXO6soagWg3Qka032o8iVDKxlElmtK+xiZ0jvQ3P7UKijcMmzArnkaGXh456+vcKPbBQM3UMjY6rpz8sTJlxALdEjFbhsqH3DruX95Vl9W4o9uMp+adwtT+fOL6uwIDAQAB",
+  "theme": {
+    "name": "mikee",
+    "title": "MiKee"
+  }
+}

+ 66 - 0
keeweb-plugin/plugin.css

@@ -0,0 +1,66 @@
+/* 
+  Purple: #7576FD
+  Black: #030303
+  Grey: #89929E
+  Light Grey: #E3E3E3
+  Background: #F3F4F5
+  Red: #FF2600
+*/
+
+.th-mikee {
+  --mute-percent: 60%;
+  --background-color: white;
+  --medium-color: #89929E;
+  
+  --action-color: #7576FD;
+  --error-color: #FF2600;
+
+  --text-color: #030303;
+  --text-selection-bg-color: #7575fd4D;
+  --text-selection-bg-color-error: #FF26004D;
+  --text-semi-muted-color: #89929E80;
+  --text-contrast-action-color: white;
+  --text-contrast-error-color: white;
+
+  --base-border-color: #E3E3E3;
+  --accent-border-color: #7576FD;
+  --light-border-color: #E3E3E3;
+
+  --form-box-border-focus: #7576FD;
+  --form-box-shadow-color-focus: #7576FD;
+  --form-box-shadow-color-focus-error: #FF2600;
+
+  --dropdown-box-shadow-color: #E3E3E3;
+
+  --secondary-background-color: #F3F4F5;
+  --intermediate-background-color: #F3F4F5;
+}
+
+.th-mikee button {
+  border-radius: 9px;
+  color: #7576FD;
+}
+
+.th-mikee input {
+  border-radius: 9px;
+}
+
+.th-mikee select {
+  border-radius: 9px;
+}
+
+.th-mikee h1 {
+  color: #7576FD;
+}
+
+.th-mikee div[class*='__btn'] {
+  color: #7576FD;
+}
+
+.th-mikee div[class*='__db']{
+  color: #7576FD;
+}
+
+.th-mikee div[class*='-button'] {
+  color: #7576FD;
+}

+ 43 - 0
privacy.md

@@ -0,0 +1,43 @@
+---
+layout: page
+title: Privacy Policy
+permalink: /privacy/
+---
+
+## Privacy Policy
+
+**Last updated: October 3, 2019**
+
+Maxime Epain built the MiKee app as a Freemium app. This Application is provided by Maxime Epain at no cost and is intended for use as is.
+
+This page is used to inform visitors regarding our policies with the collection, use, and disclosure of Personal Information if anyone decided to use services offered on or via MiKee (the "Application").
+
+The terms used in this Privacy Policy have the same meanings as in the [Terms & Conditions](https://mikee.maxep.me/terms/), which is accessible at https://mikee.maxep.me/terms/ unless otherwise defined in this Privacy Policy.
+
+The Application does not and physically cannot store any of your information by design.
+
+**Personal Identifiable**
+
+The Application does not collect or transmit any personally identifiable information about you, such as your name, address, phone number or email address.
+
+**Personal Information**
+
+No personal information is collected, transmitted, or maintained by the Application, we do not share personal information with anyone.
+
+**Service Providers**
+
+The Application has no facility for collecting, transmitting, or maintaining user data. Thereby, No data is shared with third-party vendors or analytics providers.
+
+**Children’s Privacy**
+
+The Application is not intended for children under the age of 13. We do not collect personally identifiable information via the Application from visitors in this age group.
+
+**Changes to This Privacy Policy**
+
+We may update our Privacy Policy from time to time. Thus, you are advised to review this page periodically for any changes. These changes are effective immediately after they are posted on this page.
+
+**Contact Us**
+
+If you have any questions or suggestions about our Privacy Policy, do not hesitate to contact us:
+
+[![email](https://img.shields.io/badge/email-Maxime%20Epain-lightgrey)](mailto:me@maxep.me)

+ 65 - 0
terms.md

@@ -0,0 +1,65 @@
+---
+layout: page
+title: Terms & Conditions
+permalink: /terms/
+---
+
+## Terms & Conditions
+
+**Last updated: October 3, 2019**
+
+These Terms & Conditions (“Terms”, “Terms and Conditions, “Agreement”) govern your relationship with the MiKee Service (the "Application") operated by Maxime Epain (“us”, “we”, or “our”). It is important that you read this carefully because you will be legally bound to these terms.
+
+We expressly reserve the right to change these Terms and Conditions from time to time without notice to you. You acknowledge and agree that it is your responsibility to review this Application and these Terms and Conditions from time to time and to familiarize yourself with any modifications. Your continued use of this Application after such modifications will constitute acknowledgement of the modified Terms and Conditions and agreement to abide and be bound by the modified Terms and Conditions.
+
+By downloading or using the Application, these terms will automatically apply to you – you should make sure therefore that you read them carefully before using the Application. You’re not allowed to copy, or modify the Application, any part of the Application, or our trademarks in any way. You’re not allowed to attempt to extract the source code of the Application, and you also shouldn’t try to translate the Application into other languages, or make derivative versions. The Application itself, and all the trade marks, copyright, database rights and other intellectual property rights related to it, still belong to Maxime Epain.
+
+Maxime Epain is committed to ensuring that the Application is as useful and efficient as possible. For that reason, we reserve the right to make changes to the Application or to charge for its services, at any time and for any reason. We will never charge you for the Application or its services without making it very clear to you exactly what you’re paying for.
+
+The Application stores and processes data that you have provided to us, in order to provide services. It’s your responsibility to keep your phone and access to the Application secure. We therefore recommend that you do not jailbreak or root your phone, which is the process of removing software restrictions and limitations imposed by the official operating system of your device. It could make your phone vulnerable to malware/viruses/malicious programs, compromise your phone’s security features and it could mean that the Application won’t work properly or at all.
+
+You should be aware that there are certain things that Maxime Epain will not take responsibility for. Certain functions of the Application will require the Application to access storage of external hosting services. Maxime Epain cannot take responsibility for the Application not working at full functionality if you don’t have access to your external hosting services, and you don’t have enough storage space available. You may be charged by your hosting service providers for the cost of data  storage while accessing the Application. In using the Application, you’re accepting responsibility for any such charges.
+
+If you’re using the Application outside of an area with Wi-Fi, you should remember that your terms of the agreement with your mobile network provider will still apply. As a result, you may be charged by your mobile provider for the cost of data for the duration of the connection while accessing the Application, or other third party charges. In using the Application, you’re accepting responsibility for any such charges, including roaming data charges if you use the Application outside of your home territory (i.e. region or country) without turning off data roaming.
+
+If you are not the bill payer for the device on which you’re using the Application, and the hosting services on which your data are stored, please be aware that we assume that you have received permission from the bill payer for using the Application.
+
+Along the same lines, Maxime Epain cannot always take responsibility for the way you use the Application i.e. You need to make sure that your device stays charged – if it runs out of battery and you can’t turn it on to avail the Application, Maxime Epain cannot accept responsibility.
+
+With respect to Maxime Epain’s responsibility for your use of the Application, when you’re using the Application, it’s important to bear in mind that although we endeavour to ensure that it is updated and correct at all times, we do rely on third parties to provide information to us so that we can make it available to you. Maxime Epain accepts no liability for any loss, direct or indirect, you experience as a result of relying wholly on this functionality of the Application.
+
+At some point, we may wish to update the Application. The Application is currently available on iOS – the requirements for system (and for any additional systems we decide to extend the availability of the Application to) may change, and you’ll need to download the updates if you want to keep using the Application. Maxime Epain does not promise that it will always update the Application so that it is relevant to you and/or works with the version that you have installed on your device. However, you promise to always accept updates to the application when offered to you, We may also wish to stop providing the Application, and may terminate use of it at any time without giving notice of termination to you. Unless we tell you otherwise, upon any termination, (a) the rights and licenses granted to you in these terms will end; (b) you must stop using the Application, and (if needed) delete it from your device.
+
+**Intellectual Property**
+
+By accepting these Terms and Conditions, you acknowledge and agree that all content presented to you on this Application is protected by copyrights, trademarks, service marks, patents or other proprietary rights and laws, and is the sole property of Maxime Epain.
+
+You are only permitted to use the content as expressly authorized by Maxime Epain or the specific content provider. Except for a single copy made for personal use only, you may not copy, reproduce, modify, republish, upload, post, transmit, or distribute any documents or information from this Application in any form or by any means without prior written permission from Maxime Epain or the specific content provider, and you are solely responsible for obtaining permission before reusing any copyrighted material that is available on this Application.
+
+**Third Party Websites**
+
+This Application may link you to other sites on the Internet or otherwise include references to information, documents, software, materials and/or services provided by other parties. These websites may contain information or material that some people may find inappropriate or offensive.
+
+These other websites and parties are not under our control, and you acknowledge that we are not responsible for the accuracy, copyright compliance, legality, decency, or any other aspect of the content of such sites, nor are we responsible for errors or omissions in any references to other parties or their products and services. The inclusion of such a link or reference is provided merely as a convenience and does not imply endorsement of, or association with, the Application or party by us, or any warranty of any kind, either express or implied.
+
+**Disclaimer of Warranties, Limitations of Liability and Indemnification**
+
+Your use of the Application is at your sole risk. The Application is provided "as is" and "as available". We disclaim all warranties of any kind, express or implied, including, without limitation, the warranties of merchantability, fitness for a particular purpose and non-infringement.
+
+Maxime Epain is not liable for damages, direct or consequential, resulting from your use of the Application, and you agree to defend, indemnify and hold us harmless from any claims, losses, liability costs and expenses (including but not limites to attorney's fees) arising from your violation of any third-party's rights. You acknowledge that you have only a limited, non-exclusive, nontransferable license to use the Application. Because the Application is not error or bug free, you agree that you will use it carefully and avoid using it ways which might result in any loss of your or any third party's property or information.
+
+**Changes to This Terms and Conditions**
+
+We may update our Terms and Conditions from time to time. Thus, you are advised to review this page periodically for any changes. I will notify you of any changes by posting the new Terms and Conditions on this page. These changes are effective immediately after they are posted on this page.
+
+**Governing Law**
+
+These Terms and Conditions and any dispute or claim arising out of, or related to them, shall be governed by and construed in accordance with the internal laws of France without giving effect to any choice or conflict of law provision or rule.
+
+Any legal suit, action or proceeding arising out of, or related to, these Terms and Conditions or the Application shall be instituted exclusively in courts of France.
+
+**Contact Us**
+
+If you have any questions or suggestions about our Terms and Conditions, do not hesitate to contact us:
+
+[![email](https://img.shields.io/badge/email-Maxime%20Epain-lightgrey)](mailto:me@maxep.me)

+ 0 - 83
themes/default/index.html

@@ -1,83 +0,0 @@
-<div class="main" role="main">
-  <div class="container">
-
-    <div class="row">
-      <div class="col-sm-6">
-
-        <!-- Marketing -->
-        <div class="marketing">
-          <div class="app-meta">
-            {% if site.enable.app_icon %}
-              <img
-                class="app-icon"
-                style="min-width: 92px;"
-                height="auto"
-                {% if site.app.icon %} src="{{ site.app.icon }}"{% endif %}
-              />
-            {% endif %}
-            <span class="app-name">{{ site.app.name }}</span>
-          </div>
-
-          {% if site.marketing_header %}
-          <h2 class="marketing-header">{{ site.marketing_header }}</h2>
-          {% endif %}
-
-          <p class="marketing-desc">{{ site.marketing_desc }}</p>
-          <div class="download-buttons">
-            <a
-              class="download-btn btn btn-lg"
-              href="https://itunes.apple.com/app/id{{ site.app.ios_id }}?mt=8">
-              <i class="fa fa-apple fa-lg" aria-hidden="true"></i> App Store
-            </a>
-
-            {% if site.app.android_id %}
-            <a
-              class="download-btn btn btn-lg"
-              href="https://play.google.com/store/apps/details?id={{ site.app.android_id }}">
-              <i class="fa fa-android fa-lg" aria-hidden="true"></i> Google Play
-            </a>
-            {% endif %}
-          </div>
-        </div>
-      </div>
-
-
-      <div class="col-sm-6">
-
-        <!-- App Preview or Screenshot(s) -->
-        <div class="device {{ site.device }}">
-          {% if site.app.video %}
-               <div class="video-container">
-                <iframe src="{{ site.app.video }}" height="426.66" width="240" allowfullscreen="" frameborder="0">
-                </iframe>
-              </div>
-
-          {% else %}
-               <img
-                class="app-screenshot"
-                {% if site.app.screenshot %}src="{{ site.app.screenshot }}"{% endif %}
-               />
-          {% endif %}
-        </div>
-      </div>
-    </div>
-
-  </div>
-</div>
-
-<div class="social">
-  <div class="container">
-    <div class="row">
-      <div class="col-sm-12">
-        {% include social.html %}
-      </div>
-    </div>
-  </div>
-</div>
-
-
-<div class="footer">
-  <div class="container">
-    <!-- footer text here -->
-  </div>
-</div>