Skip to content

kioku-project/kioku

Repository files navigation

Kioku banner

GitHub contributors Storybook link

Welcome to Kioku!

The cloud native flashcard application that focuses on collaborative content creation.

Features

Collaborative icon Collaborative

Collaborate with your friends and fellow students in groups and work on shared decks. Learn together and motivate each other!

Individual icon Individual

Create and customize your own flashcards tailored to your needs and preferences. Set your own pace with our spaced repetition system to maximize your potential!

Compatible icon Compatible

Kioku is compatible with Anki, allowing you to import and export your existing decks into our application while taking advantage of Kioku's collaborative features!

Informative icon Informative

We provide you with detailed statistics and insights into your study progress. Identify areas of improvement to optimize your strategy for maximum effectiveness!

Available icon Available

Access your flashcards everywhere and at any time. Switch seamlessly between multiple platforms and never miss a learning opportunity again!

Entertaining icon Entertaining

Achievements and leaderboards make learning more engaging and motivating. Kioku helps you to achieve better results and stay on track with your personal learning goals!

Sonarcloud status

Frontend Backend
Lines of Code Frontend Quality Gate Status Lines of Code Backend Quality Gate Status
Frontend Vulnerabilities Bugs Code Smells Backend Vulnerabilities Bugs Code Smells
Security Rating Maintainability Rating Security Rating Maintainability Rating

Index

  1. Getting started
  2. Frontend development
  3. Backend development
  4. Deployment

Getting started

In order to run Kioku locally, first clone the repository

git clone https://github.com/kioku-project/kioku

and configure the .env file in the backend folder

cp .env.example .env

You can generate the JWT_PRIVATE_KEY with the following command

openssl ecparam -name secp521r1 -genkey -noout -out my.key.pem

To enable notification support, you will have to generate a VAPID keypair and add the public and private key to the frontend and backend .env files. To do this, you can type the following command in the frontend folder:

npx web-push generate-vapid-keys

Warning

The example environment file is populated with default values, be sure to change all values before using the application in production!

Finally, start the frontend and backend using Docker Compose.

docker compose up
Service URL
Frontend http://localhost:3000
pgAdmin http://localhost:3002
micro dashboard http://localhost:3001

About

The cloud native flashcard application that focusses on collaborative content creation.

Resources

Stars

Watchers

Forks

Releases

No releases published