Official documentation site for Atomic VCS - a mathematically sound distributed version control system.
Built with Docusaurus, a modern static website generator.
npm installnpm startThis command starts a local development server and opens up a browser window. Most changes are reflected live without having to restart the server.
npm run buildThis command generates static content into the build directory and can be served using any static contents hosting service.
atomic-docs/
βββ docs/ # Documentation markdown files
β βββ intro.md # Introduction page
β βββ getting-started/ # Getting started guides
β β βββ installation.md
β β βββ first-repository.md
β β βββ basic-workflow.md
β β βββ configuration.md
β βββ concepts/ # Core concepts
β βββ commands/ # Command reference
β βββ remote/ # Remote operations
β βββ advanced/ # Advanced topics
β βββ guides/ # How-to guides
β βββ api/ # API reference
βββ src/ # Custom React components
β βββ css/ # Custom CSS
β βββ pages/ # Custom pages
βββ static/ # Static assets (images, etc.)
βββ docusaurus.config.ts # Site configuration
βββ sidebars.ts # Sidebar structure
βββ package.json # Dependencies
- Create a new markdown file in the appropriate directory under
docs/ - Add frontmatter at the top:
---
sidebar_position: 1
title: Your Page Title
---
# Your Page Title
Content goes here...- The page will automatically appear in the sidebar based on the directory structure
Docusaurus supports extended markdown features:
atomic init
atomic add .
atomic record -m "Initial commit":::tip
This is a tip!
:::
:::warning
This is a warning!
:::
:::info
This is info!
:::import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
<Tabs>
<TabItem value="linux" label="Linux">
Instructions for Linux
</TabItem>
<TabItem value="mac" label="macOS">
Instructions for macOS
</TabItem>
</Tabs>- Install the Fly.io CLI:
curl -L https://fly.io/install.sh | sh- Login to Fly.io:
fly auth login- Launch your app (first time):
fly launchThis will:
- Create a new Fly.io app
- Set up the configuration
- Deploy your app
- Deploy updates:
fly deploy- Open your deployed site:
fly opennpm install -g vercel
vercel- Build the site:
npm run build- Deploy the
builddirectory to Netlify:
npm install -g netlify-cli
netlify deploy --prod --dir=build- Update
docusaurus.config.ts:
url: 'https://username.github.io',
baseUrl: '/repo-name/',
organizationName: 'username',
projectName: 'repo-name',- Deploy:
GIT_USER=<your-username> npm run deployEdit docusaurus.config.ts to customize:
- Site title and tagline
- Color mode (light/dark)
- Navbar items
- Footer links
- Logo and favicon
Edit src/css/custom.css to add custom styles:
:root {
--ifm-color-primary: #0ea5e9;
--ifm-color-primary-dark: #0284c7;
--ifm-color-primary-darker: #0369a1;
}Create React components in src/components/ and import them in your markdown:
import MyComponent from '@site/src/components/MyComponent';
<MyComponent />- Apply for Algolia DocSearch at https://docsearch.algolia.com/apply/
- Once approved, add to
docusaurus.config.ts:
algolia: {
appId: 'YOUR_APP_ID',
apiKey: 'YOUR_SEARCH_API_KEY',
indexName: 'atomic-vcs',
contextualSearch: true,
}Install a local search plugin:
npm install --save @docusaurus/theme-search-algoliaAdd to docusaurus.config.ts:
gtag: {
trackingID: 'G-XXXXXXXXXX',
anonymizeIP: true,
}npm run build
npm run serveThen test all links manually or use a link checker.
Run Lighthouse audit on your deployed site:
npm install -g @lhci/cli
lhci autorun --upload.target=temporary-public-storage- Be Clear: Write for users who are new to Atomic
- Be Concise: Get to the point quickly
- Use Examples: Show code examples for commands
- Add Context: Explain why, not just how
- Cross-Reference: Link to related topics
- Use present tense ("Atomic creates" not "Atomic will create")
- Use second person ("you can" not "the user can")
- Use active voice ("run the command" not "the command should be run")
- Keep paragraphs short (3-4 sentences max)
- Use code formatting for commands, file names, and code
- Fork the repository
- Create a feature branch
- Make your changes
- Test locally with
npm start - Build to verify:
npm run build - Submit a pull request
# Kill process on port 3000
lsof -ti:3000 | xargs kill -9# Clear cache and rebuild
rm -rf .docusaurus build node_modules
npm install
npm run buildCheck the build logs:
fly logsThis documentation is licensed under the MIT License. See the main Atomic VCS repository for the software license.
Need help? Join our Discord community or open an issue.