libredb / libredb/libredb-studio
Add a Brazilian Portuguese README (README_pt.md), covered by the localized-README drift guard
- Dominant language
- TypeScript
- Stars
- 726
- Forks
- 119
- Avg merge
- 7h 47m
- Merged PRs (30d)
- 265
Description
The repo ships two localized READMEs, `README_zh.md` and `README_ja.md` (#317). Portuguese (Brazilian) is not one of them.
**This is smaller than it looks.** `README.md` is 994 lines; the two translations are 304 and 291. They are deliberate abridgements, not full translations - they carry the pitch, the engine list, the install table and the quick start, and they drop the deep sections. Copy that scope rather than translating the whole file.
**Fix.**
1. Add `README_pt.md`, modelled on `README_zh.md` for structure and length.
2. Add `Português` to the language switcher near the top of `README.md`, `README_zh.md` and `README_ja.md` (they each list the other languages).
3. Add `"README_pt.md"` to `LOCALIZED` in `scripts/readme-check.mjs` (line 34), so the drift guard covers it.
**The guard decides two things for you, so review is objective.** `scripts/readme-check.mjs` runs inside the required `Lint, Typecheck and Build` check and asserts:
- **The engine name set is identical in all localized files and `README.md`.** A translation that omits an engine is wrong, and so is one that invents an engine. Do not translate engine names - `PostgreSQL` stays `PostgreSQL`.
- **Every command in a localized install table appears verbatim in `README.md`'s.** You may list fewer channels (both existing translations drop Chocolatey and the portable zip), but you may not paraphrase a command. A missing `sudo` or a dropped `brew trust` is exactly what this guard was written for after #317's review found both.
Run `bun run readme:check` before you push.
**Please only take this if you read and write Portuguese (Brazilian) well.** Raw machine-translation output is not what this is for, and a PR that reads as untouched machine output will be closed. Technical terms and product names are better left in English than translated approximately.
**Conflict note.** Step 2 touches one line in three files that every other language issue also touches. If another translation lands first, rebase - it is a one-line conflict.
**Done when** `README_pt.md` exists, the switcher in all four READMEs lists it, `LOCALIZED` includes it, and `bun run readme:check` passes.
---
Curated for Hacktoberfest 2026. Comment to claim it before you start so two people do not work on the same language. A PR must reference this issue; see CONTRIBUTING.md. Repo rules that apply: run `bun run test` (never bare `bun test`), and the 100% line-coverage gate must stay green. Local `bun run test` also needs the `helm` binary on PATH for unrelated chart tests - see #570 if it bites.
Contributor guide
Research direction
Start with README_zh.md to match the intended abridged structure, then review the language switchers in README.md, README_zh.md, and README_ja.md. Add README_pt.md, register it in scripts/readme-check.mjs, and run bun run readme:check; done means the switcher lists Portuguese in all four READMEs and the guard passes.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- bun, markdown
- Domain
- documentation, localization
- Issue type
- Documentation
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Active
- Clarity
- Clearly specified
- Newbie friendliness
- 74/100