Skip to content

Repository files navigation

ctrl alt doc

Documentation, without the baggage.

ctrl alt doc is an open-source documentation framework built with Markdown, Svelte, and Vite.

Create a documentation site

You need Node.js 20.19+ or 22.12+.

npm create ctrlaltdoc@latest my-docs
cd my-docs
npm install
npm run dev

The project creator asks for your documentation site title and optional GitHub repository URL, then writes those values into ctrlaltdoc.config.ts.

Open the local URL shown in the terminal. Your documentation lives in the docs/ directory.

Features

  • Markdown documentation with frontmatter
  • Nested navigation, breadcrumbs, pagination, search, and table of contents
  • Syntax-highlighted, copyable code blocks
  • Callouts, details, cards, downloads, figures, file trees, Steps, and Tabs
  • Built-in Hugeicons Stroke Rounded icons
  • User-authored Svelte components in Markdown
  • Server-side rendering and production builds
  • Build-time content bundling for serverless and edge deployments
  • A complete example documentation set in every new project

Production builds embed Markdown and category metadata in the server bundle. Hosts such as Cloudflare Workers do not need filesystem access to the source docs/ directory at runtime. Applications created before this behavior was introduced should update src/lib/server/site.ts:

import config from '../../../ctrlaltdoc.config';
import content from 'ctrl-alt-doc/content';

export function getSiteConfig() {
	return { ...config, content };
}

Customise your site

Edit ctrlaltdoc.config.ts to customise the title, description, theme, navigation, social links, footer, callouts, and icons.

For user-authored Svelte components, install the component package in your project and import it directly into a Markdown page:

npm install @iconify-svelte/heroicons
<script>
	import AcademicCapIcon from '@iconify-svelte/heroicons/academic-cap';
</script>

<AcademicCapIcon height="1em" />

Documentation

Read the ctrl alt doc documentation for the complete feature reference.

Packages

GitHub Packages

Scoped mirrors are also published to GitHub Packages for GitHub-native workflows:

  • @ctrl-alt-doc/ctrl-alt-doc
  • @ctrl-alt-doc/create-ctrlaltdoc

npmjs remains the recommended installation source. GitHub Packages requires GitHub authentication, including for public packages. Add the following to .npmrc, replacing TOKEN with a classic personal access token that has read:packages permission:

@ctrl-alt-doc:registry=https://npm.pkg.github.com
//npm.pkg.github.com/:_authToken=TOKEN

You can then install the framework mirror with:

npm install @ctrl-alt-doc/ctrl-alt-doc

Contributing

See CONTRIBUTING.md for issue and pull request guidance. ctrl alt doc is released under the MIT License.

About

ctrl alt doc - Documentation, without the baggage. It just works.

Topics

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Sponsor this project

Packages

Contributors

Languages