Documentation
Everything you need to know about creating and importing flashcards.
Formatting your cards
Cards support markdown, LaTeX math, syntax-highlighted code blocks, and custom HTML widgets. Write the front and back of each card using any combination of these.
Terminal widget
Display command-line interactions with a styled terminal window.
syntax
<terminal title="My Terminal"> git init git add . </terminal>
result
git add .
The title attribute defaults to "terminal" if omitted.
Code highlighting
Use fenced code blocks with a language for syntax highlighting.
syntax
```python
def hello():
print("Hello!")
return 42
```
result
Supports Python, JavaScript, HTML, CSS, Bash, JSON, and more.
Math expressions
Write LaTeX math with KaTeX. Single $ for inline, double $$ for display.
inline math
$x = \frac{-b \pm \sqrt{b^2 - 4ac}}{2a}$
result
display math
$$\int_{a}^{b} f(x) \, dx = F(b) - F(a)$$
result
JSON import format
Upload cards in bulk via JSON. Two formats are accepted.
option 1 — array of cards
[
{
"front": "What is the capital of France?",
"back": "Paris",
"tags": ["geography", "europe"]
},
{
"front": "What is 2 + 2?",
"back": "4",
"category": "math"
}
]
option 2 — object with cards key
{
"cards": [
{
"card_uuid": "my-unique-id",
"front": "What is the capital of France?",
"back": "Paris",
"tags": ["geography"]
}
]
}
Required fields: front and back on every card.
Optional fields:
tags— array of strings, used to organize and filter cardscategory— string, added as an extra tagcard_uuid— string (max 36 chars), enables in-place updates
In-place updates with card_uuid
When you include a card_uuid, re-uploading a file will update matching cards instead of creating duplicates. Your review history and due dates are preserved.
Workflow: export your cards (they'll include UUIDs), edit the JSON, re-upload. Cards without a UUID get one auto-generated.
Custom HTML with Tailwind
Use raw HTML with Tailwind CSS classes for advanced card layouts. Add dark: variants for dark mode.
syntax
<div class="p-4 bg-yellow-100 rounded-lg border-l-4 border-yellow-500 text-yellow-700"> <strong>Note:</strong> Something important. </div>
result