# Aether (AE) Posts Module

The Posts module provides functionality for creating and managing posts and their associated comments. This is suitable for features like a blog, forum, or bulletin board.

## Data Structures

### Post

A `Post` object represents a single entry, such as a blog post or a forum thread. It contains a title, content, and metadata about the author and topic.

### Post Comment

A `Post_Comment` object represents a comment made on a `Post`.

## Functionality

This module provides the following functionality:

- **CRUD Operations:** Create, Read, Update, and Delete operations for both `Post` and `Post_Comment` objects.
- **Local Caching:** Uses Dexie.js to cache data in the browser's IndexedDB for offline access and faster load times.
- **API Interaction:** All data operations are synced with the backend API.

## Files

- `ae_posts__post.ts`: Contains functions for managing `Post` objects.
- `ae_posts__post_comment.ts`: Contains functions for managing `Post_Comment` objects.
- `ae_posts_functions.ts`: Exports all the functions from the module for easy use in other parts of the application.
- `db_posts.ts`: Defines the IndexedDB schema for the posts module using Dexie.js.
