A private, local-first desktop coach for video journaling, deliberate speaking practice, and useful reflection.
License · Issues · Product plan
Praxis turns a recording into a coaching loop: record, transcribe locally, review clear evidence-backed feedback, choose the next thing to practise, and come back stronger. Your recordings, transcripts, reports, goals, and progress remain in a journal folder you control.
Only the text needed for analysis is sent to the AI provider you choose. Media is never uploaded by Praxis for analysis.
- Record with a camera and microphone preview, device selection, and advanced capture controls.
- Transcribe locally with Faster-Whisper and verify the installed transcription runtime.
- Connect your own AI provider and model for analysis; credentials live in your system keyring.
- Work across more than one coaching goal at once: journaling, language practice, communication, interview practice, presentation skills, and more.
- Read reports built for action: the main lesson, evidence from the session, and the next practice step—not a wall of metrics.
- Request a fresh analysis from a session whenever your goal or context changes.
- Create single-language or bilingual subtitle tracks, translate them with your chosen model, burn them into an MP4, or export subtitle files separately.
- Keep a local practice history and compare each session against your own baseline.
Praxis is a Linux-first Electron desktop app with a FastAPI backend.
git clone https://github.com/Twarga/praxies.git
cd praxies
uv sync --extra dev
cd frontend && npm install && cd ..
./scripts/dev.shThe launcher starts the backend, Vite frontend, and Electron desktop window. Use ./scripts/dev.sh --web when you only need the browser surface.
Requirements: Python 3.12+, uv, Node.js/npm, and the normal desktop dependencies needed by Electron.
curl -fsSL https://raw.githubusercontent.com/Twarga/praxies/main/scripts/install.sh | bashThe installer downloads the latest Linux AppImage, verifies its SHA-256 checksum,
adds a praxis launcher and desktop entry, then starts onboarding. Use
praxis --check to verify an existing installation or scripts/install.sh --uninstall
to remove only application files.
| Data | Where it lives |
|---|---|
| Video, audio, transcripts, reports, goals, and exports | A journal directory you choose |
| Provider credentials | Your unlocked desktop keyring |
| Text sent for analysis | Only to the provider and model you explicitly activate |
| Recordings | Never uploaded by Praxis for AI analysis |
| Path | Purpose |
|---|---|
frontend/ |
React, Vite, and Electron desktop interface |
backend/ |
FastAPI app, local transcription, analysis, and export services |
docs/ |
Product plans, architecture notes, and design decisions |
scripts/ |
Installation, development, build, and verification helpers |
# Backend tests
.venv/bin/python -m pytest -q
# Frontend tests
cd frontend && npm test
# Production frontend build
cd frontend && npm run buildThe active remake plan is tracked in docs/REMAKE_PLAN.md. The current direction is a calmer desktop workspace, stronger recording controls, multi-goal coaching, readable reports, bilingual subtitle exports, and reliable local-first operation.
Read CONTRIBUTING.md before opening a contribution. Please report security issues through the process in SECURITY.md, not through public issue comments.
Praxis is released under the MIT License.
