Files
OSIT-AE-App-Svelte/src/routes/journals
Scott Idem 0987cd6ad9 style: Apply Prettier formatting with 4-space indentation
Applied consistent code formatting across the project using Prettier, now configured to use 4-space indentation instead of tabs.
2025-11-18 18:40:50 -05:00
..

Journals Module

The Journals module provides a user-facing application for creating and managing personal journals. It can be used for various purposes such as a personal diary, a blog, a notebook, or any other form of chronological or topical record-keeping.

This directory (src/routes/journals) contains the Svelte components and pages that constitute the user interface for the Journals feature.

Features

  • Journal & Entry Management: The UI allows for full CRUD (Create, Read, Update, Delete) functionality for both journals and their entries.
  • Rich Content Editing: Journal entries can be written using Markdown for rich text formatting.
  • Encryption: The UI provides an interface for setting and using passcodes to encrypt and decrypt journal entries.
  • Offline Support: The application uses a local IndexedDB cache (via Dexie.js) for all data, allowing for offline access and faster interactions. Data is synchronized with the backend API.

UI Components & Pages

  • +page.svelte: The main landing page that displays a list of all journals for the current user.
  • [journal_id]/+page.svelte: The page for viewing a single journal and its list of entries.
  • ae_comp__journal_obj_li.svelte: A component that renders the list of journals.
  • ae_comp__journal_obj_id_view.svelte: A component for viewing the details of a selected journal.
  • ae_comp__journal_entry_obj_li.svelte: A component that renders the list of entries for a journal.
  • ae_comp__journal_entry_obj_id_view.svelte: A component for viewing the content of a single journal entry.
  • ae_comp__journal_obj_id_edit.svelte: A modal component for creating and editing journals.

Core Logic

The underlying data models, API interactions, and database logic for this module are located in src/lib/ae_journals/.