0015. The template is named Bareship
- Status: Accepted
- Date: 2026-10-14
- Supersedes: the “Name (A6)” part of 0001
Context
Section titled “Context”ADR 0001 kept the working name rn-template until a final name was chosen. That name can’t be found:
dozens of repositories and packages use it, so neither search engines nor AI answer engines can tell this
template apart from the others. People search for “React Native template”, “boilerplate” and “starter
kit”; an engine cites a product it can identify by a unique name.
The React Native CLI also constrains the app’s own name inside the template. init MyApp --template …
replaces the placeholder, its lowercase form, com.<placeholder> and the title placeholder in every file
of the new app. A placeholder equal to the brand would rewrite every mention of the brand (links to the
website, the npm name, the code markers) in each new app.
Decision
Section titled “Decision”- Brand: Bareship. “Bare” React Native, ready to ship. On 2026-10-14 the npm name, the GitHub
organisation,
bareship.devandbareship.appwere free, no GitHub repository used the name, and no product or trademark using it was found. - Definition, used first wherever the project describes itself: “Bareship is a production-ready, offline-first bare React Native template for teams and AI agents.” The search terms (template, boilerplate, starter kit, offline-first, bare) go in the description, npm keywords and GitHub topics, not in the name.
- npm package
bareship(--template bareship), repositorypsingh2907/bareship, website onbareship.dev, code markers[bareship]. The website moved to a subdomain for now: 0016. - The app inside the template is the brand plus “App” (written here in parts, because
initrewrites the whole word):Bareship+Appnames the Xcode project and schemes, the display name and the CLI placeholder; its lowercase form gives the bundle id (com.+bareship+app) and the URL scheme. Neither form occurs inside the brand, soinitrenames the app and leaves the brand alone.
Consequences
Section titled “Consequences”- Write Bareship when you mean the project, never the app’s placeholder name. The template check
(
scripts/ci/check-template-init.sh) fails if the placeholder survivesinit. - The GitHub repository must be renamed to
bareshipwhen this change is pushed: the links already point there. GitHub redirects the old URL. - Before going public: a formal trademark search, and registering
bareship.dev.
Alternatives considered
Section titled “Alternatives considered”- Keep
rn-template— can’t rank for its own name. - Fullkeel — free on npm and as domains, but the GitHub username is taken.
- Keelson, Ironhull — the
.devdomains are taken. - Offlane — a common Dota 2 term, so results would be swamped.
- Bareframe — an npm package with that name already exists (web components, 2026).
- Outpost, Shipshape, Seaworthy, Bedrock — crowded names, or they clash with existing products.
- Placeholder
Bareship(equal to the brand) —initwould rewrite the brand in every new app.