An open API service indexing awesome lists of open source software.

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.

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.