Skip to content

shanukun/Ziho

Repository files navigation

Create, Study and Share decks of flashcards.
Demo

About

Ziho is a provides a better online interface for Anki than Anki Web. Ziho allows you to create, study and easily share and clone decks, as well as edit them online.

The backend is built with Flask, and the fsrs algorithm is used for spaced repetition. Following were also used:

  • Bootstrap
  • SQLAlchemy
  • Docker

You can find more screenshots here.

Getting Started

Quick Start with Docker

Note

Please ensure you have Docker and Docker Compose installed on your system.

  1. Clone the Repository.
  2. Start the Docker Container:
    docker compose up -d

Local Setup

Important

Please ensure you have pip installed on your system.

  1. Clone the Repository.
  2. Run the setup script:
    ./tools/setup
  3. Set up your environment variables in a .env file: To run without debug mode, set DEBUG_MODE=off.
    • Set following for using MySQL
      • MYSQL_USER
      • MYSQL_PASS
      • MYSQL_HOST
      • MYSQL_PORT
      • MYSQL_DB
  4. Start the webapp:
    ./tools/run-ziho

Contributing

  1. Follow the code style. Run the following to test the format.
    ./tools/test_lint
  2. Format the code using:
    ./tools/lint_and_format
  3. Make sure to add the tests for new routes
    pytest ./tests