- Delete the blogs, opensource-projects and notifications trees - Drop their nav entries and i18n keys - Point the nav at the new open-source site instead - Drop the opensource-projects sitemap priority
3.0 KiB
Contributing to OnixByte Homepage
This repository holds the company website. It is published openly so that the Rspress set-up can be read and learned from, but it is not open for external contributions.
We do not accept pull requests
External pull requests are not accepted and will be closed without review. This is not a comment on the work — it is that a company website is edited by the people accountable for what it says, and merging outside changes would put content on the site that nobody here has signed off.
Issues are welcome
Please do open an issue if you spot:
- a broken or dead link
- something factually wrong, in either language
- a typo, or a place where the British English or Chinese wording is off
- an accessibility problem
- a build or runtime bug you can reproduce
Issues are read, and genuine problems are usually fixed. If a report turns into a change, we will make that change ourselves.
Licence
Nothing in this repository is licensed for reuse. See LICENCE — copyright is retained and no permission is granted to copy, modify or distribute any part of it. Reading it and linking to it are fine.
Third-party software this project depends on keeps its own licence; see THIRD_PARTY_NOTICES.md.
The rest of this document is for people working on the site internally.
Development Setup
This project uses Rspress as the static site framework and pnpm as the package manager.
pnpm install
pnpm dev
Project Structure
docs/ # Content (Markdown/MDX), organised by locale
en-gb/ # British English content
zh-hans/ # Simplified Chinese content
theme/ # Custom theme overrides
Content Guidelines
- Write content in both English (British) and Simplified Chinese. British
spelling is required throughout — interface text, documentation, code
comments and commit messages (
customised,centre,colour, and so on). - Address the reader as 您. This site speaks to buyers and decision-makers, not to engineers.
Navigation and Sidebars
Navigation and sidebar structure live in JSON files beside the content, not in the theme:
_nav.jsonsets the top navigation. Itstextvalues are i18n keys resolved throughi18n.json, so theen-gbandzh-hanscopies stay identical. Add new keys toi18n.jsonfor both locales — a key present for only one locale fails the build._meta.jsonsets sidebar grouping and ordering within a directory. Supplying one replaces the generated listing for that directory, so every page you want shown must be listed — anything omitted disappears from the sidebar silently.
Do not add a _meta.json next to _nav.json at the root of a locale
directory; doing so collapses the whole site into one flat sidebar.
Before Committing
- Ensure the site builds:
pnpm build:comandpnpm build:cn - Type-check:
pnpm typecheck - Lint and format:
pnpm lintandpnpm format - If adding a new page, include both
en-gbandzh-hansversions.