Source for the Twilic documentation website, built with VitePress.
- Node.js 24+
- pnpm 10.33+
pnpm installpnpm devOpens a local dev server at http://localhost:5173 with hot reload.
pnpm buildOutputs to docs/.vitepress/dist/.
pnpm previewServes the production build locally for final review before deploy.
pnpm format # format all .md, .ts, .css, .json files
pnpm format:check # check formatting without writing (used in CI)
pnpm lint # markdownlint on docs/**/*.mdwebsite/
docs/
.vitepress/
config.ts # VitePress config (nav, sidebar, Mermaid)
theme/
index.ts # theme entry (slots, global components)
custom.css # brand colors, CSS variable overrides
HomeFeatures.vue # home page feature cards (Lucide icons)
HeroCode.vue # hero code preview card
guide/
introduction.md
why.md
quick-start.md
concepts.md
cookbook.md
comparison.md
faq.md
spec/
overview.md
profiles.md
wire-tags.md
format.md
encoding.md
transport.md
v2.md
v1.md
sdks/
index.md
rust.md
go.md
python.md
js.md
java.md
ruby.md
zig.md
benchmark.md
public/
favicon.svg
wordmark.svg
.github/
ISSUE_TEMPLATE/ # bug report, feature request
workflows/ # CI, commitlint, PR checks, invisible-chars
pull_request_template.md
dependabot.yml
See CONTRIBUTING.md for general contribution guidelines.
For website-specific changes:
- Run
pnpm devand verify the affected pages look correct. - Run
pnpm format:checkandpnpm lintbefore opening a PR. - Use the PR template — all required sections and checklist items must be filled.
Content is released under CC-BY-4.0.