# Core Module

This directory (`src/routes/core`) contains Svelte pages and components for managing the core data objects of the Aether (AE) system. While the primary data logic, API interactions, and database definitions are located in `src/lib/ae_core`, this directory provides the user-facing interfaces for interacting with that data.

## Core Data Modules

The Aether system is built on a foundation of several core modules. The UI components for these modules are, or will be, located here.

### Accounts

- **Description:** Manages client accounts (not to be confused with user accounts). An account is the top-level organizational unit.
- **Logic:** `src/lib/ae_core/core__account.ts`

### Hosted Files

- **Description:** Handles file uploads, storage, and retrieval. Provides components for file upload buttons and video players.
- **Logic:** `src/lib/ae_core/core__hosted_files.ts`
- **Route:** `/hosted_files`

### People

- **Description:** Manages information about individuals. A "person" can be a user, a contact, an event presenter, etc. This is the central object for representing people in the system.
- **Logic:** `src/lib/ae_core/core__person.ts`
- **UI Components:**
    - `ae_comp__person_obj_tbl.svelte`: A table for displaying a list of people.
    - `person_view.svelte`: A component for displaying the details of a single person.

### Sites & Site Domains

- **Description:** Manages different sites or instances of the application and their associated domain names. This allows for multi-tenant configurations.
- **Logic:** `src/lib/ae_core/core__site.ts` and `core__site_domain.ts`

### Users

- **Description:** Manages user accounts, including authentication, permissions, and user-specific settings.
- **Logic:** `src/lib/ae_core/core__user.ts`
