All checks were successful
continuous-integration/drone/push Build is passing
- Root AGENTS.md: add build pipeline, Makefile targets, full directory listing - Backend AGENTS.md: add architecture layout, API routes table, streaming/store patterns, missing deps (jsonschema-go, values pkg, types pkg) - Frontend AGENTS.md: add architecture layout, missing deps (marked, highlight.js), Alpine component pattern, build pipeline details - README.md: add env var config table, Docker/Make workflows, dev setup, thinking support, token stats, structured output, llama.cpp timings
36 lines
1.2 KiB
Markdown
36 lines
1.2 KiB
Markdown
# Aethera Monorepo
|
||
|
||
This repository is a **monorepo** with two main packages that can be built and run independently.
|
||
|
||
## Directory Structure
|
||
|
||
```
|
||
├── frontend/ # TypeScript + Alpine.js + Tailwind CSS client
|
||
├── backend/ # Go HTTP server with embedded frontend assets
|
||
├── Makefile # Orchestrates frontend → backend build pipeline
|
||
├── Dockerfile # Multi-stage Docker build
|
||
├── .drone.yml # CI pipeline (tests + Docker publish)
|
||
├── flake.nix # Nix dev shell (Go, Bun, LSPs, linters)
|
||
└── …
|
||
```
|
||
|
||
## Build Pipeline
|
||
|
||
The frontend builds to `frontend/public/dist/`, then `make frontend` copies the full `frontend/public/` tree into `backend/web/static/` where it gets embedded into the Go binary via `//go:embed`.
|
||
|
||
```bash
|
||
make all # Build frontend + backend
|
||
make frontend # Build frontend, copy to backend/web/static/
|
||
make backend # Build Go binary (requires frontend assets)
|
||
make dev # Run both with hot-reload
|
||
make tests # Run Go tests
|
||
make docker # Build Docker image
|
||
```
|
||
|
||
## Package Details
|
||
|
||
See package‑specific instructions:
|
||
|
||
- **frontend/** — `@frontend/AGENTS.md`
|
||
- **backend/** — `@backend/AGENTS.md`
|