docs: overhaul project documentation and contributing guide (Task #190)

This commit is contained in:
2026-01-13 23:28:16 +01:00
parent 2553d087a0
commit 712f62f7ae
5 changed files with 213 additions and 10 deletions

33
docs/structure.md Normal file
View File

@@ -0,0 +1,33 @@
# 📂 Project Structure
Plexus is organized into three main areas: the client, the server, and the internal tooling.
## 📁 Root Directory
- `Makefile`: Central automation script for installation, development, and tasks.
- `docker-compose.yml`: Defines the development environment services.
- `Dockerfile.dev`: Unified development shell with all dependencies.
- `package.json`: Root package for devtooling (Husky, lint-staged).
- `pyproject.toml`: Configuration for Python linting (Ruff).
## 📁 `client/` (Frontend)
Built with Vue 3 and Vite.
- `src/components/`: Reusable UI components (Chat, Profile, UserList, etc.).
- `src/stores/`: Pinia stores for state management (`chat.js`).
- `src/style.css`: Global styles and Tailwind utilities.
- `tailwind.config.js`: Custom theme and animations.
## 📁 `server/` (Backend)
Built with Node.js and Socket.io.
- `index.js`: Main entry point, socket event handlers.
- `db.js`: Database initialization and schema management.
- `data/`: Contains the DuckDB database file (`chat.duckdb`).
- `tests/`: Integration tests for socket events.
## 📁 `tasks/` (Internal Tooling)
Python-based task tracker.
- `cli.py`: Command-line interface for managing tasks.
- `db.py`: DuckDB backend for task storage.
- `tasks.duckdb`: Database for internal tasks.
## 📁 `docs/` (Documentation)
Linked Markdown files covering all aspects of the project.