TRAUMA is a personal bookmark management app. The product language uses
memory for one saved bookmark and memories for the collection.
⚠️ Warning: This is mostly a personal project that I work on in the margins of another project, so please do not expect particularly eager maintenance.
The project is designed as a lightweight local/self-hosted web app: one SolidStart app, one Bun runtime, SQLite for metadata, markdown files for saved content, and git backup for the markdown store.
The foundation implementation is now more than scaffold. The current baseline includes SolidStart/Bun runtime commands, Drizzle/SQLite persistence, markdown content storage, add-memory import, memory browsing, reader routes, highlights, git backup, backup failsafe recovery, Defuddle-based extraction, Tailwind styling, and the local browser-assisted import extension.
Some workflow documents remain as implementation records or future hardening plans. Treat docs/workflows/README.md as the current map before starting new work.
- TypeScript
- SolidStart / Solid
- Bun
- Drizzle ORM
- SQLite
- Playwright
- Vitest
Pinned bootstrap versions are documented in docs/references/technology-stack.md.
Install dependencies:
bun installCreate the local environment file from the example:
cp .env.example .env.env is gitignored. Keep it for local TRAUMA settings such as browser import.
The dev, start, and preview scripts default HOST to 127.0.0.1 unless
you set another host in the shell.
Run the dev server:
bun run devRun baseline verification:
bun run verifyRun E2E smoke tests:
bun run test:e2eStart with docs/INDEX.md.
Key references:
- Foundation design
- Task execution workflows
- Architecture overview
- Data and storage
- Runtime flows
- UI and routing
- Configuration
- Verification strategy
TRAUMA is initially single-user and local/self-hosted. Auth, public signup, managed databases, external queues, serverless deployment, and full offline archival are out of scope for the foundation.