FEATURES

Features & workflow

22 shipped capabilities, from import to export. Start with the core and the five-step path, then open the full index when you need it.

01 / PRINCIPLES

Two ground rules.

InteFlow is not a study assistant that can chat about anything. It gets the certain things right first, then puts optional AI behind a key you explicitly press.

01

The LLM is not on the main path.

Import, parsing, grading, review and export are deterministic local computation by default; AI appears only as an explicit action, or as a fallback you have switched on.

  • PDF / DOCX / Markdown convert locally by default, 0 tokens
  • AI recognition fallback only when enabled and deterministic parsing fails
  • No switch, no key or a failed call → local fallback with a clear message
02

Your data stays on this computer.

Question banks, answers, analysis and vocabulary live under data/: one SQLite file, plus each paper's doc.ifmd.md and images. Nothing is uploaded to the cloud by default.

  • No accounts, no cloud sync
  • Backup = copy the data/ folder
  • Offline, everything works as usual — except the optional AI

02 / WORKFLOW

Five steps, from file to notes.

No hidden sync step, and no workbench that has to be online. Every step can stop on its own — change what you need, then carry on.

  1. 01

    Import a question bank

    Drag in PDF, DOCX, .md or .ifmd.md with a page-by-page report; scanned pages go through OCR.

    0 token
  2. 02

    Complete the answer key

    Letter grid, multi-select, fill-ins and bulk paste; preview before saving, then write back to the source.

    write-back
  3. 03

    Practise in full screen

    Count-up or countdown timer, question panel, keyboard control and automatic grading; multi-select and fill-in included.

    fullscreen
  4. 04

    Review question by question

    Write analysis, ask AI and drag words into vocabulary in the 2-of-4 workspace; autosave in about 0.9 seconds.

    core
  5. 05

    Distil and export

    Mistakes, Starred and Sessions gather your practice; export md / docx / pdf and word lists as xlsx.

    portable

03 / CORE FEATURES

Six capabilities you will use most.

Covering import, practice, review, vocabulary and export. The full set of 22 is below.

IMPORT

Multi-format import

PDF, DOCX, Markdown and InteFlow-MD up to 60 MB; page-by-page reports, with suspicious pages paused for review.

IMPORT

PDF structure recognition

Two-column layouts, question numbers, options, answer-table write-back and image extraction; no options → fill-in.

PRACTICE

Full-screen practice and grading

Exam-style full screen, timer, question panel and keyboard control; deterministic grading, 0 tokens.

REVIEW

2-of-4 review workspace

Question, analysis, AI Tutor and vocabulary — pick two. Pages-style editor autosaves, layout is remembered.

VOCABULARY

Local dictionary and vocabulary

92,006-entry offline Merriam-Webster index plus a custom dictionary; drag words in from questions, export xlsx.

OUTPUT

Export suite

Review notebooks as md / docx / pdf, whole papers as PDF / DOCX, word lists as xlsx.

View all 22 capabilities Expand

Import & organize 7

Multi-format import
PDF, DOCX, .md or .ifmd.md, with page-by-page reports.
PDF structure recognition
Two columns, question numbers, options, answer write-back and images.
Scanned-page OCR
macOS Vision first, Tesseract on other systems.
Question-bank import
Install a ZIP (manifest + units, or loose .ifmd.md) into My banks; add units one by one or all at once. Installers ship no copyrighted questions.
Library and subjects
Counts and answer status at a glance; custom subjects, colors and filtering.
Answer entry
Letter grid, multi-select, multiple accepted answers and bulk paste.
InteFlow-MD
Plain-text format with deterministic syntax for formulas, images, multi-select and fill-ins.

Practice & grading 2

Full-screen practice
Timer, question panel, Mark for review, keyboard control and submit confirmation.
Deterministic grading
Exact multi-select, NFKC-normalized fill-ins; answers never sent before submission.

Review & bookmarks 5

Review workbench
Question / analysis / AI Tutor / vocabulary, two of four at a time.
Analysis notebook
Markdown, KaTeX, images and autosave; supports an analysis template.
Mistakes + Starred
De-duplicated wrong answers keep the latest attempt; manual stars; search and filters.
Sessions history
Only submitted attempts are recorded; search, reopen for review or delete.
AI Tutor (explicit)
Called only on click; 19 providers, two protocols and a connectivity test.

Vocabulary & dictionary 4

Local Merriam-Webster dictionary
Bring your own Eudic .eudb; a SQLite index is built on first lookup.
My custom dictionary
Edit by hand or import CSV / TSV / JSON / TXT; matched first.
Vocabulary list and drag-to-add
One list per paper; drag words in, optionally let AI pick the sense.
Word exam
EN↔ZH both ways, random or full test, lenient grading and a QR result.

Output & system 4

Export suite
Notebooks as md / docx / pdf, papers as PDF / DOCX, word lists as xlsx.
Five UI themes
Clear Blue, Paper & Ink, Minimal Light, Midnight Navy, Warm Editorial.
Settings and AI switches
User name, analysis template, AI fallbacks, sense selection and grading — defaults and fallbacks documented.
Local data and testability
SQLite plus files, MIT open source, automated backend and frontend tests.
ZIPbank import
0bundled SAT questions
92,006dictionary entries
19LLM providers
69API endpoints
447automated tests

04 / FORMAT & STACK

A definite format, a definite path.

Every import first becomes InteFlow-MD, then goes through a deterministic state machine. No hidden second pass of cleanup, and no "looks like" guessing.

---
ifmd: 1
title: "2024 International School Final"
answers: none
---

:::q {#Q001 sec=rw no=1 difficulty=m}
@material
Despite the committee's reservations, the new policy was adopted
without amendment.

@stem
The author's attitude toward the committee is best described as

- A. undisguised contempt
- B. cautious approval
- C. outright indifference
- D. blunt hostility
! answer: B
:::
# macOS / Linux
git clone https://github.com/JasonSun2009CN/InteFlow.git
cd InteFlow
./start.sh

# Windows PowerShell
.\start.ps1

# first run: create .venv, install deps, start both, open browser
# backend  → http://localhost:8000
# frontend → http://localhost:5173
data/
├── app.db                 SQLite: documents, questions,
│                          sessions, analysis_pages, subjects
├── docs/<id>/
│   ├── doc.ifmd.md        source of truth
│   └── assets/            extracted figures
├── dictionary/mw.db       rebuildable MW index
├── exports/               notebook + document exports
└── jobs/ · tmp/           import pipeline scratch
DETERMINISTIC STATE MACHINE format v1
BROWSER React 19 SPA Vite · TypeScript · Tailwind 4
BACKEND FastAPI 13 routers · 65 endpoints
SQLite app.db
Files ifmd + assets
LLM explicit only
  • BackendFastAPI · Python 3.11+
  • FrontendReact 19 · Vite 7 · Tailwind 4
  • StorageSQLite + local files
  • ConvertPyMuPDF · python-docx · OCR
  • ExportWeasyPrint · openpyxl · MathJax

05 / QUESTIONS

Still have questions?

Here are the answers to the things people trip over first. More detailed specs and format documentation live in the repo docs.

Ask on GitHub
01Does it only support SAT?

No. A question's sec is a free-form label (rw, math, physics, history…), not a fixed enum. Any bank made of "question number + two or more options" can be imported; items where no options are detected are treated as fill-ins. Installers ship no SAT questions at all; the sample bank exists only in source checkouts and is excluded from packages. Import your own bank ZIP instead.

02Do I need to be online or configure an API key?

No. Import, parsing, grading, review, vocabulary and export don't depend on a network. Only AI explanations, connectivity tests, and word-exam AI grading that you turn on yourself call an external model; with no key or a failed call it falls back to local and tells you.

03Where is my data stored?

All under data/: app.db holds structured data, docs/<id>/doc.ifmd.md holds the original questions and answers, assets/ holds images, and exports land in exports/. To back up, copy the whole directory; to reset, delete it.

04Which system dependencies do I need?

The desktop app needs no Python or Node. Running from source needs Python 3.11+ and Node.js 18+; PDF export additionally needs pango / cairo / gdk-pixbuf / harfbuzz; scanned-page OCR can optionally use tesseract, and macOS can also use Vision. When something is missing, only that feature degrades or warns.

05Can I use my own dictionary?

Yes. My dictionary in Settings supports manual edits and imports from CSV / TSV / JSON / TXT, and takes priority over Merriam-Webster. For English-to-English Merriam-Webster definitions, put an Eudic .eudb into dictionary/ and the index is built automatically on first lookup. Copyrighted dictionary files are not distributed with the repo.

06What does the exported notebook contain?

One review notebook per paper: a cover with the user name and score, then every question with written analysis in question order (stem, figures, your analysis). Markdown / DOCX / PDF, downloaded straight from the browser with a copy left in data/exports/.

READY WHEN YOU ARE

Seen the features?
Try the real thing.

Do four questions online first, or download the desktop app. The main path needs no account and no API key.