https://github.com/heitorlessa/brag
Local-first, privacy-first record of achievements, goals, mentoring, enablement, and energy. No server, no sync, no account.
https://github.com/heitorlessa/brag
brag-doc career local-first nuxt opfs privacy sqlite vue
Last synced: 14 days ago
JSON representation
Local-first, privacy-first record of achievements, goals, mentoring, enablement, and energy. No server, no sync, no account.
- Host: GitHub
- URL: https://github.com/heitorlessa/brag
- Owner: heitorlessa
- Created: 2026-06-09T08:03:46.000Z (16 days ago)
- Default Branch: main
- Last Pushed: 2026-06-09T09:43:16.000Z (16 days ago)
- Last Synced: 2026-06-09T10:16:46.091Z (16 days ago)
- Topics: brag-doc, career, local-first, nuxt, opfs, privacy, sqlite, vue
- Language: Vue
- Homepage: https://brag-heitor-lessas-projects.vercel.app
- Size: 220 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Brag
> A **local-first, privacy-first** record of your achievements โ and the goals,
> people, and energy behind them.
**โถ Try it live: [brag-heitor-lessas-projects.vercel.app](https://brag-heitor-lessas-projects.vercel.app)** โ runs entirely in your browser; nothing is sent anywhere.
Keep track of the wins you'll forget by review season: the goals you set, the
people you mentor, the enablement you run, and a weekly energy check-in to catch
burnout before it catches you.
Everything lives in your browser โ SQLite via OPFS. **No server, no sync, no
account.** Your data never leaves your machine. Back it up to JSON, or export a
Markdown "brag doc" for reviews whenever you like.
## What's inside
- ๐ **Achievements** โ log wins with Markdown notes, impact, tags, and an optional goal link
- ๐ฏ **Goals** โ yearly goals grouped by year, with status and progress
- ๐ค **Mentoring** โ the people you mentor and a log of every session
- ๐ค **Enablement** โ workshops, talks, training, and docs you delivered
- ๐ **Energy** โ a weekly reflection (energy / workload / satisfaction) with a trend chart and a burnout-risk signal
- ๐ **Dashboard** โ recent wins, goal progress, and energy trend at a glance
- ๐พ **Settings** โ JSON backup & restore, and Markdown brag-doc export by date range
## Quick start
```bash
make install # install dependencies (pnpm)
make watch # dev server at http://localhost:3000
```
| Command | What it does |
| ------------------ | ----------------------------------- |
| `make watch` | Dev server with hot reload |
| `make build` | Production build (SPA) |
| `make validate` | Lint (oxlint + ESLint) + typecheck |
| `make test` | Run the unit/schema test suite |
| `make db-generate` | Generate + embed Drizzle migrations |
## Data & privacy
All data is stored locally in OPFS and is specific to this browser profile.
There is no telemetry and nothing leaves your device. Use **Settings โ Export
JSON** regularly to keep a backup โ clearing browser storage will erase it.
## Stack
- **Nuxt 4** ยท **Vue 3** ยท **Nuxt UI 4** ยท **Tailwind 4**
- **SQLocal** (SQLite WASM + OPFS) ยท **Drizzle ORM** ยท **drizzle-zod**
- **TipTap** WYSIWYG editor that stores **Markdown**
- **Vitest** ยท **oxlint / ESLint / oxfmt** quality gates enforced on commit via **Husky**
## Automating data entry
Brag exposes a `window.brag` API, WebMCP tools, and an append-from-file import so
an agent can ingest data without clicking through forms. See
[AUTOMATION.md](./AUTOMATION.md) for the data shapes and copy-paste recipes.
## Roadmap
Brag is in early dogfooding โ the plan is to use it daily for a month before
calling it stable. Coming next:
- ๐ธ Screenshots and a short walkthrough (once the UI settles)
- ๐ Proper docs
- โจ Polish driven by real-world use
> โ ๏ธ Early days: expect rough edges and the occasional breaking change while the
> schema settles. Keep a JSON backup.
---
Built for the wins you'd otherwise forget.