https://github.com/jae-labs/flashcards
Transform notes into flashcards with local AI. Study offline, stay private, learn smarter—for free!
https://github.com/jae-labs/flashcards
ai cli flashcards flashcards-cli golang llama ollama sqlite
Last synced: 21 days ago
JSON representation
Transform notes into flashcards with local AI. Study offline, stay private, learn smarter—for free!
- Host: GitHub
- URL: https://github.com/jae-labs/flashcards
- Owner: jae-labs
- License: mit
- Created: 2026-03-05T17:56:29.000Z (4 months ago)
- Default Branch: main
- Last Pushed: 2026-06-02T13:35:22.000Z (21 days ago)
- Last Synced: 2026-06-02T15:18:38.225Z (21 days ago)
- Topics: ai, cli, flashcards, flashcards-cli, golang, llama, ollama, sqlite
- Language: Go
- Homepage:
- Size: 241 KB
- Stars: 1
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Codeowners: CODEOWNERS
Awesome Lists containing this project
README
Flashcards is a fast, minimal command-line tool for turning your notes into interactive flashcards and reviewing them with spaced repetition. Simply point Flashcards at your folder of markdown notes, and it uses Ollama's local AI models (LLMs) to automatically generate flashcards and quiz you in a colorful terminal interface. Flashcards is written in Go for minimal dependencies—all you need is the Ollama App from [ollama.com](https://ollama.com) and the compiled binary from this repository. No cloud, no subscriptions, no hidden costs.
**Why Flashcards?**
- Effortlessly convert your markdown notes into flashcards using local AI (LLM)
- Review and reinforce knowledge with spaced repetition
- Enjoy a distraction-free, user-friendly terminal experience
- 100% private: your notes and flashcards never leave your device
- Secure and offline: no internet required, no data sent to third parties
- Free and open-source: no hidden costs or paywalls
Designed for simplicity, privacy, and security. Runs entirely offline and stores your cards locally in a SQLite database. It was developed and tested on macOS, but works on any platform that supports the Ollama App.
## Quick Start
1. **Install Ollama Desktop:**
- Download and install from [ollama.com](http://ollama.com/)
2. **Pull the llama3.1 model:**
```bash
ollama pull llama3.1
```
3. **Install Flashcards:**
* **Option A: Using Homebrew (Recommended)**
```bash
brew tap jae-labs/formulae
brew install flashcards
```
> [!TIP]
> This is the easiest way—it sets up everything automatically eg. PATH, upgrades, etc. If you don't have Homebrew, install it first from [brew.sh](https://brew.sh).
* **Option B: Using the install script**
```bash
curl -fsSL https://raw.githubusercontent.com/jae-labs/flashcards/refs/heads/main/install.sh | bash
```
4. **Generate flashcards from your markdown notes**
```bash
# From a directory (recursive)
flashcards generate --path /path/to/notes
# From a single file
flashcards generate --path /path/to/notes/file.md
```
5. **Review your flashcards:**
```bash
flashcards
```
That's it! No extra configuration needed. It will use the local Ollama API and store flashcards in a SQLite database.
## Admin Mode
Flashcard's database management with full CRUD (Create, Read, Update, Delete) capabilities.
**Launch admin mode:**
```bash
flashcards admin
```
**Use Cases:**
- Manually create flashcards without generating from markdown
- Fix typos or improve existing flashcards
- Remove outdated or duplicate cards
- Reset your entire study schedule when starting a new review cycle
- Manage cards created from multiple sources
## Features
| Feature | Description |
|--------------------------------|-----------------------------------------------------|
| AI Flashcard Generation | Create flashcards from markdown using Ollama AI |
| Spaced Repetition Review | Review cards with spaced repetition algorithm |
| Admin Mode | Full CRUD management of flashcards with bulk operations |
| Terminal User Interface | Colorful, user-friendly TUI for reviewing cards |
| SQLite Storage | Flashcards stored locally in SQLite database |
| No Extra Configuration | Works out-of-the-box with minimal setup |
## FAQ
What are the system requirements?
Tested on a MacBook M2 with 16GB of RAM using the llama3.1 model. Performance and compatibility may vary on other systems.
What platforms are supported?
Any platform supported by the Ollama App (tested on macOS)
Do I need an internet connection?
No, Ollama runs locally.
Where are flashcards stored?
Flashcards are stored in a local SQLite database file located at ~/.flashcards/flashcards.db.
Can I use my own markdown files?
Yes, just point Flashcards to your folder containing your markdown files.
How do I update the Ollama model?
Use `ollama pull ` to update or change models.
How do I change the default Ollama model?
You can use the `--model` flag to specify the Ollama model for flashcard generation.
## Screenshots
Below are some screenshots of Flashcards in action:

## Contributing
See [CONTRIBUTING.md](CONTRIBUTING.md).
## License
See [LICENSE](LICENSE).
## Stars
## Star History
[](https://www.star-history.com/#jae-labs/flashcards&type=date&legend=top-left)