Bambu Bar
Mac 메뉴 막대에서 Bambu Lab 프린터를 모니터링합니다
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
메이커가 쓴 소개는 위의 한 줄이 전부입니다. 더 자세한 내용은 저장소 README에서 읽을 수 있습니다. 저장소 README ↗
README 전체를 불러오는 중입니다.
README 전문 보기 ↗Fix your resume by talking to it. Upload a resume, say what to change, and watch the LaTeX source and the PDF update live. Pick Local (a model on your own Mac) or Cloud (a free hosted model) with one toggle.
Built for No Hands: The Wispr Challenge (WeMakeDevs × Wispr Flow).
pitch.html in a browser; arrow keys to move, Print → Save as PDF to exportUpdating a LaTeX resume for each application is slow: move a section, reword a bullet, escape a % that silently comments out the rest of the line, recompile, repeat. Resume builders hide the source; LaTeX gives control but costs time. SayResume keeps the LaTeX and removes the typing.
| You say | What happens |
|---|---|
| "Make my Acme bullets sound stronger" | Rewrites those bullets, keeps the facts |
| "Add a bullet under Acme: cut page load time by 40 percent" | Adds \item … 40\% under the right job |
| "Move skills above experience" | Moves the section, nothing lost |
| "Add AWS and Docker to my skills" | Appends to the skills line |
| "Remove the projects section" | Deletes it cleanly |
| "Actually, undo that" | Instant undo (no model call) |
| "Add my job at Google" | Asks for title and dates instead of inventing them |
.tex loads as-is. .pdf, .docx, .txt, .md are read in your browser (PDF.js is bundled, so no third-party CDN) and converted to LaTeX by the model.localStorage; the server stores nothing.| Local | Cloud | |
|---|---|---|
| Model | Qwen3.5-9B (4-bit) via oMLX on your Mac | Qwen 3.7 Flash via OpenRouter, with Mistral Small and Claude Haiku as fallbacks |
| Where your resume goes | nowhere: model and LaTeX compiler both run on your machine | the server (to compile) and OpenRouter (free models may log prompts) |
| Needs | Apple Silicon Mac, oMLX, tectonic | nothing; works on the hosted site |
| Speed | ~2–8 s per command | ~1–3 s per command |
| Cost | free | about $0.08 per 1,000 commands |
The toggle is in the header. On the hosted site Local is disabled: a cloud server can't reach your computer. Run the app yourself to use it.
spoken command ─► model (local or cloud)
│ replies with small SEARCH/REPLACE blocks and MOVE lines
▼
apply to the .tex ─► safety checks ─► compile (tectonic) ─► new .tex + PDF
▲ │
└── error goes back ──┘ (self-corrects, up to 3 tries)
SEARCH must match exactly one place (with whitespace tolerance for small-model drift).MOVE: Skills BEFORE Experience.NOCHANGE: <question>) when a command is unclear.40% becomes 40\% so it doesn't start a comment.brew install tectonic # LaTeX compiler
omlx start # local model server (needs Qwen3.5-9B-4bit in ~/.omlx/models)
cp .env.example .env # optional: add OPENROUTER_API_KEY to enable Cloud locally too
npm start # http://localhost:3000
No npm dependencies; Node 20+. Get the model from mlx-community on Hugging Face (about 6 GB) into ~/.omlx/models/mlx-community/, then omlx restart. The first compile downloads TeX packages once (a few minutes), after that it is instant.
npx vercel link
printf '%s' "$OPENROUTER_API_KEY" | npx vercel env add OPENROUTER_API_KEY production --sensitive
npx vercel --prod
How it works there: the build step (scripts/prepare-tectonic.mjs) downloads the Linux tectonic binary and pre-fills its package cache; the functions in api/ copy that cache to /tmp on cold start and compile with it. public/ is served as static files. The server adds a per-IP rate limit; the OpenRouter key's own spending limit is the real cap.
npm test # edit engine + backends (model calls mocked, LaTeX compile is real) + DOCX extraction
demo-voice/ holds nine spoken test commands (macOS TTS, Indian-English voices, with filler words) used to check the voice path end to end: speech → local Whisper transcript → app.
lib/edits.mjs pure text logic: parse/apply edits, move sections, guards
lib/engine.mjs backends (local/cloud), compile, edit/import loops, HTTP handlers
api/*.mjs thin Vercel functions (edit, import, compile, health)
local.mjs local server: static files + the same handlers
scripts/ Vercel build step (tectonic binary + cache)
public/ UI (index.html, sayresume.js, extract.js, styles.css), sample.tex, vendored PDF.js
여기까지가 README 앞부분입니다. 나머지는 원문에서 읽을 수 있습니다. README 전문 보기 ↗