Skip to content

Commit a577aee

Browse files
author
AvatarOS Developer
committed
docs: add CHANGELOG & implementation notes; feat(archivai,vizgen): sanitized Markdown rendering, mock persistence, centered layout, collapsible drawer; chore(agents):
changelog process docs and PR template
1 parent aa4e9e2 commit a577aee

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

43 files changed

+5528
-679
lines changed

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
# Pull Request
2+
3+
## Summary
4+
- Describe the change and the problem it solves.
5+
6+
## Changes
7+
- Bullet the key changes (components, routes, styles, scripts).
8+
9+
## Screenshots / Videos (UI changes)
10+
- Attach before/after when relevant.
11+
12+
## Testing
13+
- Steps to verify locally (commands, pages to visit, flows to exercise).
14+
15+
## Checklist
16+
- [ ] CHANGELOG.md updated with a one-sentence entry for this change
17+
- [ ] docs/IMPLEMENTATION_NOTES.md updated (if non-trivial change)
18+
- [ ] Agent docs updated if relevant (AGENTS.md, GEMINI.md, CLAUDE.md, CODEX.md)
19+
- [ ] Tests added/updated and passing (`npm test`)
20+
- [ ] Env/config changes documented (README.md) and `.env.example` adjusted if needed
21+
- [ ] No secrets or credentials committed
22+
23+
## Linked Issues
24+
- Closes #

AGENTS.md

Lines changed: 83 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,83 @@
1+
# Repository Guidelines
2+
3+
## Project Structure & Module Organization
4+
- App entry: `index.html`, client in `src/`, server in `server.js`.
5+
- Frontend: React + Vite (`src/components`, `src/lib`, `src/styles`, `src/pages`).
6+
- Tokens/design: `tokens/` (primitives, themes) with generated output in `tokens/build` and `src/styles/tokens`.
7+
- Scripts & reports: `scripts/` (utilities) and `reports/` (audit output).
8+
- Tests: `tests/*.test.js` (Jest + Supertest).
9+
- Static assets: `assets/`, data seeds in `src/data/`.
10+
11+
## Build, Test, and Development Commands
12+
- `npm run dev` — run Vite client (3000) and Node server with hot reload.
13+
- `npm run build` — build design tokens then Vite production bundle.
14+
- `npm start` — start Express server (`server.js`).
15+
- `npm run preview` — preview built client.
16+
- `npm test` — run Jest test suite.
17+
- Token tools: `npm run tokens:build`, `tokens:watch`, `tokens:clean`, `tokens:validate`, `tokens:audit`.
18+
- Utilities: `npm run generate-thumbnails`.
19+
20+
## Coding Style & Naming Conventions
21+
- JavaScript/JSX (ESM). Indent 2 spaces; semicolons optional but be consistent.
22+
- Components: `PascalCase` in `src/components` (e.g., `WorkflowEditor.jsx`).
23+
- Hooks/utils: `camelCase` (e.g., `useAvailableModels.js`, `workflowEngine.js`).
24+
- CSS modules by domain: place under `src/styles/components` or `src/styles/tokens`.
25+
- Keep server code side-effect free on import; export pure functions where possible.
26+
27+
## Testing Guidelines
28+
- Framework: Jest with Supertest for server routes.
29+
- File names: mirror feature with `.test.js` (e.g., `tests/auth.routes.test.js`).
30+
- Run all tests: `npm test`; run a file: `jest tests/image.routes.test.js`.
31+
- Aim for coverage of core flows: auth, image processing, workflow engine.
32+
33+
## Commit & Pull Request Guidelines
34+
- Commit messages: concise imperative present (e.g., "Add auth route guard").
35+
- Group related changes; avoid mixed refactors + features.
36+
- PRs: include purpose, scope, screenshots for UI, steps to test, and linked issues.
37+
- Touching tokens: include before/after screenshots and run `tokens:validate`.
38+
39+
## Security & Configuration Tips
40+
- Env: configure required secrets in `.env` for server (`PORT`, auth, API keys). Never commit secrets.
41+
- Validate untrusted input; use `dompurify` when rendering user content.
42+
- Prefer `src/lib/logger.js` and `prom-client` metrics for observability.
43+
44+
## Agent-Specific Instructions
45+
- Treat this file as authoritative. Follow directory scopes when adding or modifying files under `src/`, `tokens/`, and `tests/`.
46+
47+
## Recent Changes & Rationale
48+
- For a concise summary of the latest implementation updates (Markdown rendering, mock persistence, drawer UI, centered layouts, headers), see `docs/IMPLEMENTATION_NOTES.md`.
49+
50+
## Changelog Process (All Agents)
51+
- Before committing and pushing changes:
52+
1) Add a one‑sentence entry to `CHANGELOG.md` with today’s date and a concise summary.
53+
2) If the change is non‑trivial, append details to `docs/IMPLEMENTATION_NOTES.md`.
54+
3) Stage, commit, and push.
55+
56+
Example:
57+
```
58+
echo "$(date +%F): Short description of the change." >> CHANGELOG.md
59+
git add CHANGELOG.md docs/IMPLEMENTATION_NOTES.md
60+
git add -A
61+
git commit -m "chore(changelog): update for <feature/area>"
62+
git push
63+
```
64+
65+
## Deployment Environment Variables
66+
- Core: `NODE_ENV` (`production` on deploy), `PORT` (defaults to 8081 locally).
67+
- URLs: `FRONTEND_URL`, `BACKEND_URL`, `DOMAIN`. Used for CORS and OAuth redirects. Example: `https://app.example.com`.
68+
- Auth/JWT: `AUTH_SECRET` (required). Rotate regularly.
69+
- OAuth/Identity: `GOOGLE_CLIENT_ID`, `GOOGLE_CLIENT_SECRET` (if enabling Google flows), `GOOGLE_API_KEY` (GenAI).
70+
- AI Providers (optional): `GEMINI_API_KEY`, `OPENAI_API_KEY`, `CLAUDE_API_KEY`.
71+
- Vercel: `VERCEL_URL` is auto-set; leave unset locally.
72+
- Local `.env` example:
73+
- `NODE_ENV=development`
74+
- `PORT=8081`
75+
- `FRONTEND_URL=http://localhost:3000`
76+
- `BACKEND_URL=http://localhost:8081`
77+
- `AUTH_SECRET=change-me`
78+
- `GOOGLE_API_KEY=...`
79+
- `GEMINI_API_KEY=...`
80+
81+
Notes
82+
- CORS allows `FRONTEND_URL`, `BACKEND_URL`, `DOMAIN`, and `https://${VERCEL_URL}` automatically.
83+
- For Vercel, build client with `vercel-build` and route API to `server.js` (see `vercel.json`). Ensure `AUTH_SECRET` and provider keys are set in Vercel project settings.

CHANGELOG.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# Changelog
2+
3+
2025-10-02: Implemented sanitized Markdown rendering across ArchivAI, added filesystem-backed mock persistence, centered and standardized headers, and introduced a collapsible bottom drawer for Archiva and Image Booth.

CLAUDE.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,3 +41,13 @@ This playbook gives Claude Code (claude.ai/code) the context it needs when joini
4141
- Summarize significant architectural findings in `reports/` (markdown, short + actionable).
4242
- When shipping changes, update both human-facing docs (`README.md`, `docs/`) and the orchestrator prompts (`src/lib/assistant/`).
4343
- Keep PRs small and cohesive—link back to the priority item you are addressing.
44+
45+
## Changelog Update (Before Commit & Push)
46+
- Append a one-sentence entry to `CHANGELOG.md` with today’s date and a concise summary of what changed. If the change is substantial, also update `docs/IMPLEMENTATION_NOTES.md`.
47+
48+
Example:
49+
```
50+
echo "$(date +%F): Short description of the change." >> CHANGELOG.md
51+
git add CHANGELOG.md docs/IMPLEMENTATION_NOTES.md
52+
git add -A && git commit -m "chore(changelog): update for <feature/area>" && git push
53+
```

CODEX.md

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
# CODEX.md
2+
3+
This playbook gives Codex agents (Codex CLI) guidance for contributing here.
4+
5+
## Quick Start
6+
- Install deps: `npm install`
7+
- Dev: `npm run dev` (Vite 3000 + Express 8081)
8+
- Tests: `npm test`
9+
- Build: `npm run build`
10+
11+
## Changelog Update (Before Commit & Push)
12+
Add a one-sentence entry to the changelog for every meaningful change.
13+
14+
Example:
15+
```
16+
echo "$(date +%F): Short description of the change." >> CHANGELOG.md
17+
git add CHANGELOG.md docs/IMPLEMENTATION_NOTES.md
18+
git add -A && git commit -m "chore(changelog): update for <feature/area>" && git push
19+
```
20+
21+
If the change is substantial, add a brief rationale to `docs/IMPLEMENTATION_NOTES.md`.

GEMINI.md

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
# GEMINI.md
2+
3+
This playbook gives Gemini agents context for contributing to this repository.
4+
5+
## Quick Start
6+
- Install deps: `npm install`
7+
- Dev servers: `npm run dev` (Vite + Express)
8+
- Tests: `npm test`
9+
- Build: `npm run build`
10+
11+
## Changelog Update (Before Commit & Push)
12+
Always update the changelog for traceability.
13+
14+
Example:
15+
```
16+
echo "$(date +%F): Short description of the change." >> CHANGELOG.md
17+
git add CHANGELOG.md docs/IMPLEMENTATION_NOTES.md
18+
git add -A && git commit -m "chore(changelog): update for <feature/area>" && git push
19+
```
20+
21+
For larger changes, add a short note to `docs/IMPLEMENTATION_NOTES.md`.

README.md

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ GenBooth Idea Lab is a comprehensive educational platform designed for CODE Univ
3434
- [Service Integrations](#service-integrations)
3535
- [API Reference](#api-reference)
3636
- [Troubleshooting](#troubleshooting)
37+
- [Changelog](#changelog)
3738

3839
---
3940

@@ -335,7 +336,13 @@ curl http://localhost:8081/api/services
335336

336337
---
337338

339+
## Changelog
340+
341+
### 2025-10-02
342+
- ArchivAI & VizGen improvements: Markdown rendering (sanitized), mock persistence to `data/archivai-mock`, centered canvas, consistent headers, collapsible bottom drawer for history/gallery.
343+
- See detailed implementation notes: `docs/IMPLEMENTATION_NOTES.md`.
344+
338345
## License
339346
SPDX-License-Identifier: Apache-2.0
340347

341-
**GenBooth Idea Lab** - Empowering CODE University students with AI-enhanced learning tools.
348+
**GenBooth Idea Lab** - Empowering CODE University students with AI-enhanced learning tools.

0 commit comments

Comments
 (0)