(DEPRECATED) Learn Toki Pona by translating sentences from English
This repository has been archived on 2026-02-18. You can view files and clone it, but you cannot make any changes to its state, such as pushing and creating new issues, pull requests or comments.
  • Python 53.6%
  • Vue 40.8%
  • JavaScript 3.6%
  • HTML 1.7%
  • CSS 0.2%
Find a file
2022-08-25 13:55:04 -03:00
.circleci Add weekly database job to CircleCI 2019-08-22 16:56:15 -03:00
public Create first version of layout 2019-08-25 16:41:32 -03:00
scripts Add weekly database job to CircleCI 2019-08-22 16:56:15 -03:00
src Access frontend with Flask 2019-08-25 18:19:29 -03:00
.gitignore Add full front-end functionalities 2019-08-23 23:13:26 -03:00
__init__.py Implement basic Flask endpoints 2019-08-22 00:41:46 -03:00
app.json Access frontend with Flask 2019-08-25 18:19:29 -03:00
app.py Access frontend with Flask 2019-08-25 18:19:29 -03:00
babel.config.js Add full front-end functionalities 2019-08-23 23:13:26 -03:00
LICENSE Add readme and license 2019-08-22 12:51:42 -03:00
package-lock.json 1.0.0 2019-08-27 09:36:55 -03:00
package.json 1.0.0 2019-08-27 09:36:55 -03:00
postcss.config.js Create first version of layout 2019-08-25 16:41:32 -03:00
Procfile Use SQLAlchemy in data import script 2019-08-22 11:14:30 -03:00
README.md Prepare for project archival 2022-08-25 13:55:04 -03:00
requirements.txt Implement basic Flask endpoints 2019-08-22 00:41:46 -03:00
tailwind.config.js Create first version of layout 2019-08-25 16:41:32 -03:00

(DEPRECATED) ilo toki

With Heroku's change of free plan, this project no longer works.

Simple web application and API to learn Toki Pona from a corpus of sentences and their English translations.

Features / ijo lon

  • Filter by jan Pije's lessons if you are learning along.
  • Choose between translating English to Toki Pona or the other way around.
  • Found an error? Improve the original sentences on Tatoeba.

Project structure / sijelo ilo

The Python 3 scripts need a few libraries available from requirements.txt. The recommended way to install these is with a virtualenv. After setting it up, run:

pip install -r requirements.txt

When working on the frontend, get dependencies from package*.json into node_modules/ with npm as usual:

npm install

The rest of the project is structured as follows:

  • app.py: Main Flask application.
  • scripts/: Database definitions and auxiliary scripts, such as scripts to download translations and insert to PostgreSQL. See the README for more information.
  • Procfile and app.json: Heroku's application and manifest files, respectively.
  • .circleci: CircleCI script to re-populate database every week.
  • src/, public/, and *.js: Frontend content and configuration, such as VueJS, PostCSS, TailwindCSS...

Environment variables / nimi ma

When running the Flask API, use these environment variables:

  • DATABASE_URL (required): A PostgreSQL URI in the format postgresql://[user[:password]@][netloc][:port][/dbname]
  • DEBUG (optional): Sets Flask to debug mode. Useful for development, but must not be used in production mode.
  • SECRET_KEY (required for production): Flask's secret key, optional for development. See app.json for more information.

When running the VueJS frontend, use these environment variables:

  • VUE_APP_API_URL (required for production): Base URL for the API. If unset, it will use Flask's default development location (http://127.0.0.1:5000/).

Attributions / jo pi jan ante

The application and PostgreSQL database are hosted in Heroku with their free plans.

The translation files are provided by Tatoeba under CC BY 2.0 FR.