JournivJourniv
User Guide

Architecture

Learn about Journiv's architecture, components, and API documentation.

Architecture

Journiv consists of these main components:

  • Backend: FastAPI-based REST API with SQLModel ORM, supporting SQLite (default) or PostgreSQL
  • Frontend: React web interface, a temporary legacy Flutter interface at /legacy/, and Flutter mobile apps
  • Background processing: A Celery worker uses Redis/Valkey to process uploaded media and import/export jobs; it shares the app's database and media volume

API Documentation

Journiv provides a complete REST API with interactive documentation:

  • Swagger UI: http://localhost:8000/docs - Interactive API testing and exploration
  • ReDoc: http://localhost:8000/redoc - Clean, readable API reference
  • OpenAPI Schema: http://localhost:8000/api/v1/openapi.json - Machine-readable OpenAPI 3.0 specification

The API supports authentication via JWT tokens and provides endpoints for all features including journals, entries, moods, prompts, analytics, media, and import/export.