Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
62 changes: 62 additions & 0 deletions .github/workflows/deploy.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
name: Deploy to GitHub Pages

on:
push:
branches: [master, main]
workflow_dispatch:

permissions:
contents: read
pages: write
id-token: write

concurrency:
group: "pages"
cancel-in-progress: false

jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version: '20'
cache: 'npm'

- name: Install Node dependencies
run: npm ci

- name: Build Tailwind CSS
run: npm run build:css

- name: Setup Ruby
uses: ruby/setup-ruby@v1
with:
bundler-cache: true

- name: Setup Pages
uses: actions/configure-pages@v4

- name: Build Jekyll
run: bundle exec jekyll build
env:
JEKYLL_ENV: production

- name: Upload artifact
uses: actions/upload-pages-artifact@v3

deploy:
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
runs-on: ubuntu-latest
needs: build
steps:
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v4

18 changes: 15 additions & 3 deletions .github/workflows/html-proofer.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,15 +8,27 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
uses: actions/checkout@v4

- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version: '20'
cache: 'npm'

- name: Install Node dependencies
run: npm ci

- name: Build Tailwind CSS
run: npm run build:css

- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
bundler-cache: true # Runs bundle install and caches gems
bundler-cache: true

- name: Build Jekyll site
run: bundle exec jekyll build

- name: Run HTMLProofer
run: bundle exec htmlproofer --allow-hash-href=true ./_site
run: bundle exec htmlproofer --allow-hash-href=true --ignore-urls "/hachyderm.io/,/play.google.com/,/f-droid.org/" ./_site
19 changes: 18 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,2 +1,19 @@
# Jekyll
.sass-cache
_site
_site
.jekyll-cache
.jekyll-metadata

# Node
node_modules
package-lock.json

# OS
.DS_Store
Thumbs.db

# Editor
*.swp
*.swo
.idea
.vscode
27 changes: 17 additions & 10 deletions 404.html
Original file line number Diff line number Diff line change
@@ -1,14 +1,21 @@
---
title:
description:
permalink: /404.html
layout: default
title: Page Not Found
sitemap: false
permalink: /404.html
---

<section style="margin-top: -130px; padding-bottom: 0px; background: transparent !important;">
<div class="text-container" style="max-width: 400px;">
<img src="/images/phone_404.png" alt="404 screen" class="editable" />
</div>
<h2 class="center-text" style="margin-bottom: 30px; margin-top: -35px; color: #000;">Page not <strong id="error">faund</strong></h2>
<div class="center-text button" style="margin-bottom: 30px;"><a href="#" onclick="history.go(-1)"><i class="fas fa-backward"></i> Go Back</a></div>
<section class="py-24 md:py-32 bg-white">
<div class="max-w-xl mx-auto px-4 text-center">
<figure class="mb-8">
<img src="/images/phone_404.png" alt="Oops!" loading="lazy" class="max-w-xs mx-auto" width="320" height="auto">
</figure>
<h1 class="text-4xl md:text-5xl font-bold text-gray-900 mb-4">
Page <span class="underline decoration-wavy decoration-red-500">nto</span> found!
</h1>
<p class="text-xl text-gray-600 mb-8">The page you're looking for doesn't exist or has been moved.</p>
<div class="flex flex-wrap gap-4 justify-center">
<a href="/" class="btn btn-primary">Go Home</a>
<a href="https://github.com/AnySoftKeyboard/AnySoftKeyboard/discussions" class="btn border-2 border-primary-700 text-primary-700 hover:bg-primary-700 hover:text-white" target="_blank" rel="noopener noreferrer">Get Help</a>
</div>
</div>
</section>
22 changes: 10 additions & 12 deletions Gemfile
Original file line number Diff line number Diff line change
@@ -1,18 +1,16 @@
source 'https://rubygems.org'

gem 'jekyll', '4.3.1'
gem 'html-proofer'
gem 'csv'
gem 'logger'
gem 'base64'
gem 'bigdecimal'
gem 'jekyll', '~> 4.3'
gem 'webrick', '~> 1.8'

group :jekyll_plugins do
gem 'jekyll-archives'
gem 'jekyll-feed'
gem 'jekyll-paginate'
gem 'jekyll-seo-tag'
gem 'jekyll-sitemap'
gem 'jekyll-archives', '~> 2.2'
gem 'jekyll-feed', '~> 0.17'
gem 'jekyll-paginate', '~> 1.1'
gem 'jekyll-seo-tag', '~> 2.8'
gem 'jekyll-sitemap', '~> 1.4'
end

gem "webrick", "~> 1.8"
group :development do
gem 'html-proofer', '~> 5.0'
end
60 changes: 18 additions & 42 deletions _config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,20 +2,19 @@
# Site

title: AnySoftKeyboard
url: ""
url: "https://anysoftkeyboard.github.io"
baseurl: ""

# Values for the jekyll-seo-tag gem (https://github.com/jekyll/jekyll-seo-tag)
logo: /siteicon.png
description: Official website of AnySoftKeyboard, the open source Android keyboard.
author:
name:
email:
twitter: https://twitter.com/anysoftkeyboard
name: Menny Even-Danan
social:
name: Mastodon
links: https://hachyderm.io/@anysoftkeyboard
-
name: AnySoftKeyboard
links:
- https://hachyderm.io/@anysoftkeyboard
- https://github.com/AnySoftKeyboard/AnySoftKeyboard

# -----
# Build
Expand All @@ -24,39 +23,27 @@ timezone: Etc/UTC

collections:
staff_members:
_hide_content: true
output: false

paginate: 10
paginate_path: "/blog/:num/"
permalink: pretty

defaults:
-
scope:
- scope:
path: ""
type: "posts"
values:
layout: "post"
_options:
content:
width: 1500
height: 2500
-
scope:
- scope:
path: ""
type: "staff_members"
values:
_options:
image_path:
width: 600
height: 600
-
scope:
values: {}
- scope:
path: ""
values:
layout: "page"
-
scope:
- scope:
path: "index.html"
values:
layout: "default"
Expand All @@ -76,20 +63,9 @@ exclude:
- Gemfile
- Gemfile.lock
- README.md
- LICENCE

social_icons:
- Facebook
- Google Plus
- Instagram
- LinkedIn
- Pinterest
- Tumblr
- Twitter
- YouTube
- RSS

_comments:
highlight: Emphasis the text
color: The background colour used in the plan name and call to action.
new_window: Open link in new window
- LICENSE
- node_modules
- vendor
- package.json
- package-lock.json
- css/input.css
118 changes: 118 additions & 0 deletions _data/site.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,118 @@
# Site-wide content configuration
# Centralized text and settings

hero:
title: "The only Android keyboard"
title_emphasis: "you'll ever need"
subtitle: "Free as in speech"
subtitle_emphasis: "and"
subtitle_2: "Free as in beer."
cta_text: "Download Now"
cta_link: "/download/"
image: "/images/phone_graphic.png"
image_alt: "AnySoftKeyboard running on Android"

features:
title: "Features"
title_suffix: "of AnySoftKeyboard"
image: "/images/features_graphic.png"
image_alt: "AnySoftKeyboard features overview"
items:
- "Supports lots of languages via external packages"
- "Physical keyboards are supported as well"
- "Themes (skin) support"
- "Incognito Mode - will not track your typing"
- "Word suggestions, and Next-Word suggestions"
- "Automatic correction can be customized, or turned off entirely"
- "Gesture typing"
- "Dark mode, automatic (based on system) and manual"
- "Power saving mode, disables various features to save battery"
- "Per-app tint, the keyboard changes color depending on the app"
- "Voice input"
- "Compact modes: Split and Compact to left/right"
- "Special keyboard for text fields which require only numbers, dates, email or URI addresses"
- "Plenty of emojis"
- "...and many more!"

community:
title: "Help"
title_suffix: "from the community"
image: "/images/help_community.png"
image_alt: "Community support illustration"
description: "The official discussions and support community"
links:
- name: "GitHub Discussions"
url: "https://github.com/AnySoftKeyboard/AnySoftKeyboard/discussions"
icon: "github"
- name: "Mastodon"
url: "https://hachyderm.io/@anysoftkeyboard"
icon: "mastodon"
- name: "Wiki"
url: "https://github.com/AnySoftKeyboard/AnySoftKeyboard/wiki"
icon: "book"
cta:
text: "Report Issues"
url: "https://github.com/AnySoftKeyboard/AnySoftKeyboard/issues"
icon: "github"

languages_section:
title: "Numerous"
title_emphasis: "languages"
title_suffix: "available"
image: "/images/languages_graphic.png"
image_alt: "Multiple language support"
description: "There are many languages with multiple dictionaries, auto-correction and keyboards that are supported."
link_text: "View all languages"
link_url: "/languages/"

testimonial:
quote: "AnySoftKeyboard is the keyboard we have been waiting for; lightweight, fast, accurate and private!"
author: "The Open Source Community"
image: "/images/avatar.png"
image_alt: "Open source community"

donate:
title: "Support"
title_emphasis: "the development"
subtitle: "Help us keep AnySoftKeyboard free and open source"
buttons:
- text: "Donate via PayPal"
url: "https://www.paypal.me/menny"
icon: "paypal"
- text: "GitHub Sponsors"
url: "https://github.com/sponsors/menny"
icon: "github"

download:
title: "Download AnySoftKeyboard"
subtitle: "Available on Google Play Store and F-Droid"
stores:
- name: "Google Play"
url: "https://play.google.com/store/apps/details?id=com.menny.android.anysoftkeyboard"
image: "/images/en-play-badge.png"
image_alt: "Get it on Google Play"
- name: "F-Droid"
url: "https://f-droid.org/repository/browse/?fdid=com.menny.android.anysoftkeyboard"
image: "/images/f-droid.png"
image_alt: "Get it on F-Droid"
beta:
title: "Try Beta Versions"
channels:
- name: "Beta Channel"
description: "Sign up for early access"
url: "https://play.google.com/apps/testing/com.menny.android.anysoftkeyboard"
- name: "Alpha Channel"
description: "For the adventurous! Join the"
url: "https://groups.google.com/g/anysoftkeyboard-alpha-testers"
link_text: "Alpha Testers Google Group"

social:
github: "https://github.com/AnySoftKeyboard/AnySoftKeyboard"
mastodon: "https://hachyderm.io/@anysoftkeyboard"

copyright:
year_start: 2018
holder: "Menny Even-Danan"
license: "Apache License, Version 2.0"
license_url: "http://www.apache.org/licenses/LICENSE-2.0"

Loading
Loading