Skip to content

Latest commit

 

History

History
220 lines (173 loc) · 11.3 KB

README.md

File metadata and controls

220 lines (173 loc) · 11.3 KB

Build Status

Sabbath School Lessons

This repository contains all lessons for the Sabbath School app (for all platforms).

Contribution

Click here to read the lesson contribution guide.

Acknowledgments

Thank you for supporting Open Source with your service:

API

Yes, it exists. Click here to check it out.

Languages matrix

Below is current list of languages and capabilities implemented

Language Adult Lesson Bible verses Inside Story Teacher Edition Youth Lesson
🇿🇦 Afrikaans ✅ Yes ✅ Yes ❌ No ❌ No ❌ No
🇸🇦 Arabic ✅ Yes ✅ Yes ❌ No ❌ No ❌ No
🇧🇬 Bulgarian ✅ Yes ✅ Yes ✅ Yes ❌ No ❌ No
🇨🇳 Chinese ✅ Yes ✅ Yes ❌ No ❌ No ❌ No
🇨🇿 Czech ✅ Yes ✅ Yes ❌ No ❌ No ❌ No
🇩🇰 Danish ✅ Yes ✅ Yes ❌ No ✅ Yes ❌ No
🇺🇸 English ✅ Yes ✅ Yes ✅ Yes ✅ Yes ✅ Yes
🇪🇪 Estonian ✅ Yes ✅ Yes ✅ Yes ❌ No ❌ No
🇫🇯 Fijian ✅ Yes ✅ Yes ❌ No ❌ No ❌ No
🇫🇷 French ✅ Yes ✅ Yes ✅ Yes ✅ Yes ❌ No
🇩🇪 German ✅ Yes ✅ Yes ✅ Yes ✅ Yes ❌ No
🇬🇷 Greek ✅ Yes ✅ Yes ❌ No ❌ No ❌ No
🇮🇱 Hebrew ✅ Yes ✅ Yes ❌ No ❌ No ❌ No
🇭🇺 Hungarian ✅ Yes ✅ Yes ✅ Yes ✅ Yes ❌ No
🇯🇵 Japanese ✅ Yes ✅ Yes ❌ No ❌ No ❌ No
🇮🇩 Indonesian ✅ Yes ✅ Yes ❌ No ❌ No ❌ No
🇮🇹 Italian ✅ Yes ✅ Yes ✅ Yes ❌ No ❌ No
🇰🇷 Korean ✅ Yes ✅ Yes ✅ Yes ❌ No ❌ No
🇱🇦 Lao ✅ Yes ✅ Yes ❌ No ❌ No ❌ No
🇮🇳 Tamil ✅ Yes ✅ Yes ❌ No ❌ No ❌ No
🇲🇰 Macedonian ✅ Yes ✅ Yes ❌ No ❌ No ❌ No
🇲🇾 Malay ✅ Yes ✅ Yes ❌ No ✅ Yes ❌ No
🇳🇵 Nepali ✅ Yes ✅ Yes ✅ Yes ❌ No ❌ No
🇳🇴 Norwegian ✅ Yes ✅ Yes ✅ Yes ❌ No ❌ No
🇮🇷 Persian ✅ Yes ✅ Yes ✅ Yes ❌ No ❌ No
🇵🇱 Polish ✅ Yes ✅ Yes ❌ No ❌ No ❌ No
🇷🇴 Romanian ✅ Yes ✅ Yes ❌ No ❌ No ❌ No
🇷🇺 Russian ✅ Yes ✅ Yes ✅ Yes ✅ Yes ✅ Yes
🇷🇸 Serbian ✅ Yes ✅ Yes ❌ No ✅ Yes ✅ Yes
🇪🇸 🇲🇽 Spanish ✅ Yes ✅ Yes ❌ No ✅ Yes ✅ Yes
🇸🇪 Swedish ✅ Yes ✅ Yes ✅ Yes ❌ No ❌ No
🇹🇭 Thai ✅ Yes ✅ Yes ✅ Yes ❌ No ❌ No
🇮🇳 Tamil ✅ Yes ✅ Yes ❌ No ❌ No ❌ No
🇹🇷 Turkish ✅ Yes ✅ Yes ✅ Yes ❌ No ❌ No
🇺🇦 Ukrainian ✅ Yes ✅ Yes ✅ Yes ❌ No ❌ No
🇻🇳 Vietnamese ✅ Yes ✅ Yes ❌ No ❌ No ❌ No

Current summary of lessons for second quarter 2018

2018-03
01 02 03 04 05 06 07 08 09 10 11 12 13
🇿🇦
🇸🇦
🇧🇬
🇨🇿
🇩🇰
🇩🇪
🇬🇷
🇺🇸
🇺🇸 -CQ
🇺🇸 -ER
🇪🇸
🇪🇪
🇮🇷
🇫🇷
🇮🇱
🇭🇺
🇮🇩
🇮🇹
🇯🇵
🇰🇷
🇲🇰
🇲🇾
🇳🇴
🇵🇱
🇷🇴
🇷🇺
🇷🇺 -AY
🇷🇸
🇷🇸 -CQ
🇸🇪
🇹🇭
🇹🇷
🇺🇦
🇻🇳
🇨🇳
🇨🇳 -HANT

* ER - Easy Reading * AY - Young Adults * CQ - Collegiate Quarterly

Language Roadmap

  • Add Arabic Language 🇸🇦
  • Add Farsi Language 🇮🇷
  • Add Hebrew Language 🇮🇱
  • Add Estonian Language 🇪🇪
  • Add Italian Language 🇮🇹
  • Add Thai Language 🇹🇭
  • Add Danish Language 🇩🇰
  • Add Norwegian Language 🇳🇴
  • Add Korean Language 🇰🇷
  • Add Chinese Simplified Language 🇨🇳
  • Add Afrikaans Language 🇿🇦
  • Add Malayalam Language 🇧🇳 🇲🇾
  • Add Nepali Language 🇳🇵
  • Add SiSwati Language 🇸🇿
  • Add Sesotho Language 🇱🇸
  • Add Tamil Language 🇮🇳
  • Add Xhosa Language 🇿🇦
  • Add Zulu Language 🇿🇦

Contributing

There are many ways you can contribute to this project:

  • Regularly add Sabbath School lesson content
  • Provide source (PDF, HTML or any other) of the Sabbath School content
  • Create Bible verse parsers for languages that do not have
  • Find and correct mistakes in existing lessons

Folder structure and formats

Please note that best way to create folder structure is to use create.js script approach. Below is the explanation of existing folders & files.

Each quarterly has few parameters that are reflected in the way files and folders are organizes:

  • Language
  • Quarter
  • Type (Could be Adult, Easy Reading, Youth & etc)
  • Quarterly Info file
  • Quarterly cover image

Folder structure for quarterly looks like that

src/[language code in ISO 639-1]/[quarter_number] - which will point to the root folder of the quarterly

quarter_number - has following format YYYY-QQ or YYYY-QQ-TYPE, where

  • YYYY is four digit number of year
  • QQ is the numerical value of quarter must be one of [01, 02, 03, 04]
  • TYPE is the short representation of quarterly type. Omitted if adult version of the lesson

Quarterly info file must be named info.yml and placed in the root folder of the quarterly. As you may understand it is written in YAML format. See for example src/en/2016-04/info.yml for more.

Quarterly cover file must be named cover.png and placed in the root folder of the quarterly. It's a PNG image that represents the cover of the quarterly.

Quarterly content (weekly and daily lessons) have it's own specific format and structure based on the following parameters:

  • Week number
  • Day of week file
  • Type of reading
  • Week info file
  • Week cover image

So quarterly structure looks like that:

[quarterly_root_folder]/[week_number]/[read_file]

So main content of Sabbath School lesson is the read_file. This is the markdown type file with the annotation (comment) section on top. For simplicity follow the numerical approach for days of the week readings (Sun through Sat) naming according to the numerical sequential value of the day of week. Additional readings like inside stories, teacher comments & etc can be named according to the type. For example create.js will name them inside-story.md and teacher-comments.md.

Adding / Editing weekly lesson

Deployment

Adding new quarterly using create.js

This little script will help you to create structure for the quarterly. See below info for the usage

Create the file structure for a quarter in given language.
Usage: /usr/local/bin/node ./create.js -s [string] -l [string] -q [string] -c [num] -t [string] -d [string] -h [string] -u [bool] -i [bool]

Options:
  -s, --start-date        Start date in DD/MM/YYYY format. Ex: 25/01/2016                [required]
  -l, --language          Target language. For ex. 'en' or 'ru'                          [required]  [default: "en"]
  -q, --quarter           Quarter id. For example: 2016-04 or 2016-04-er (easy reading)  [required]
  -c, --count             Amount of lessons in quarter. Typically 13 but can be more     [required]  [default: 13]
  -t, --title             Title of the quarterly in target language                      [required]
  -d, --description       Description of the quarterly in target language                [required]
  -h, --human-date        Human readable date of quarterly. Ex. Fourth quarter of 2016   [required]
  -u, --teacher-comments  Include teacher comments                                       [default: false]
  -i, --inside-story      Inside story                                                   [default: true]
  -k, --lesson-cover      Create lesson cover placeholder images                         [default: false]

Missing required arguments: s, q, t, d, h

When ran properly it will create the structure under src folder. For an example please see src folder that contains

License

This project is licensed under the MIT License - see the LICENSE.md file for details