Wanki is an unofficial port of the already well known Anki and AnkiDroid open source spaced repetition flashcard system into JavaScript. They support Windows, Mac, Linux and Android. The iOS Version is not open sourced. AnkiWeb is already a web version of Anki, but it requires online connection and has a fairly limited feature set, plus is closed source.
- ๐ฃ Features
- ๐ Screenshots
- ๐ Motivation for Wanki
- ๐จโ๐ซ What's the difference?
- โ๏ธ To-do's
- โ๏ธ Development notes
- ๐คฒ Contribution
- Offline first
- Dark/ Light mode
- Installable as a Progressive Web App
- Working with existing Shared Anki Decks
- Seamless start reviewing direct in the browser
- Use of modern JavaScript features
The code basis for Anki and AnkiDroid are python, rust or java. However, Wanki is a proof of concept of porting the official software into JavaScript with 100% offline support. And as it is a served online web page, updates are rolled out immediately when connected to the internet.
Wanki is not bound to any operating system, and that's why it looks and feels the same on every platform. Currently, it is in initial development and lacks many main features.
- Installable PWA
- Import Anki files
- Basic review functionality
- Media overview
- Card overview
- Card Editor
- Statistics
- Replace all mock UI entries with functionality
- I18n, localize in different languages
- Hand-free mode
- Add-on support
- Anki file export
- Online sync to different devices
- Desktop adjustments
- Introducing new features
This project uses
Styling: tailwind
Code style: eslint, prettier and stylelint
Database: dexie.js
For import sqllite.js and for zipping fflate
Simply pull the repository and run
npm install
or
yarn install
After installed, run
npm run dev
or
yarn dev
and go to http://localhost:3000
First, thanks if you're considering contributing! But as my resources are limited to work on this project, and it is still not published to the public as Wanki is still a proof of concept, issues about bugs aren't currently helpful until the first release. However, improvements in form of pull requests are welcome ๐ฎ