{"id":52069048,"url":"https://github.com/js2me/docusite","last_synced_at":"2026-08-03T06:30:28.812Z","repository":{"id":371268681,"uuid":"1300132738","full_name":"js2me/docusite","owner":"js2me","description":null,"archived":false,"fork":false,"pushed_at":"2026-07-30T15:16:48.000Z","size":270,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-07-30T17:10:11.693Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://js2me.github.io/docusite/","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/js2me.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null,"disclosure":null},"funding":{"github":"js2me"}},"created_at":"2026-07-14T07:03:14.000Z","updated_at":"2026-07-30T15:17:14.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/js2me/docusite","commit_stats":null,"previous_names":["js2me/docusite"],"tags_count":10,"template":false,"template_full_name":null,"purl":"pkg:github/js2me/docusite","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/js2me%2Fdocusite","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/js2me%2Fdocusite/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/js2me%2Fdocusite/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/js2me%2Fdocusite/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/js2me","download_url":"https://codeload.github.com/js2me/docusite/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/js2me%2Fdocusite/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":36223792,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-07-20T02:08:10.276Z","status":"online","status_checked_at":"2026-08-03T02:00:06.975Z","response_time":56,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-08-03T06:30:25.618Z","updated_at":"2026-08-03T06:30:28.807Z","avatar_url":"https://github.com/js2me.png","language":"TypeScript","funding_links":["https://github.com/sponsors/js2me"],"categories":[],"sub_categories":[],"readme":"# docusite\n\nDead-simple documentation tool powered by VitePress.\n\n## Quick Start\n\n```bash\npnpm add -D docusite\n```\n\nCreate `docusite.config.ts` in your project root:\n\n```ts\nimport { defineConfig } from 'docusite'\n\nexport default defineConfig({\n  title: 'My Project',\n  description: 'Awesome project docs',\n  logos: {\n    main: '/public/logo.svg',\n    hero: '/public/logo.svg',\n  },\n  colors: {\n    light: '#646cff',\n    dark: '#535bf2',\n  },\n  nav: [\n    { text: 'Guide', link: '/guide/' },\n  ],\n  sidebar: {\n    '/guide/': [\n      {\n        text: 'Guide',\n        items: [\n          { text: 'Getting Started', link: '/guide/getting-started' },\n        ],\n      },\n    ],\n  },\n  search: 'local',\n  llms: true,\n  socialLinks: [\n    { icon: 'github', link: 'https://github.com/user/repo' },\n  ],\n})\n```\n\nAdd scripts to `package.json`:\n\n```json\n{\n  \"scripts\": {\n    \"docs:dev\": \"docusite dev\",\n    \"docs:build\": \"docusite build\",\n    \"docs:preview\": \"docusite preview\"\n  }\n}\n```\n\nCreate your docs:\n\n```bash\nmkdir -p docs/guide\necho '# Getting Started\\n\\nWelcome to the docs!' \u003e docs/guide/getting-started.md\necho '---\\nlayout: home\\n---' \u003e docs/index.md\n```\n\nRun the dev server:\n\n```bash\npnpm docs:dev\n```\n\n## Configuration\n\n### `docsDir`\n\nPath to the docs directory (default: `'./docs'`).\n\n### `title` / `description`\n\nSite title and description. Used in HTML `\u003chead\u003e` and the default theme.\n\n### `logos`\n\nSite logos — paths relative to the docs directory, including `public/`\n(file `docs/public/logo.svg` → `'/public/logo.svg'`):\n\n```ts\nlogos: {\n  main: '/public/logo.svg', // navbar, next to the site title\n  hero: '/public/logo.svg', // home page hero image\n  favicon: '/public/logo.svg', // browser tab icon (optional; defaults to main)\n  banner: '/public/banner.png', // Open Graph / Twitter card image\n}\n```\n\n- `main` — logo in the navbar next to the site title  \n- `hero` — hero image on pages with `layout: home` (injected into frontmatter; falls back to `main` if omitted)\n- `favicon` — favicon for the browser tab (falls back to `main` if omitted)\n- `banner` — image for Open Graph / Twitter Cards (`og:image`, `twitter:image`); not set unless provided\n\n### Open Graph / Twitter Cards\n\nWhen a site hostname is known (`github` or `sitemap.hostname`), docusite injects canonical, Open Graph, and Twitter Card meta tags into `\u003chead\u003e`. Image tags are added only when `logos.banner` is set.\n\n### `colors`\n\nBrand colors for automatic CSS variable generation. Provide a `light` and/or `dark` hex color:\n\n```ts\ncolors: {\n  light: '#646cff',  // Used for :root (light theme)\n  dark: '#535bf2',   // Used for .dark (dark theme)\n}\n```\n\nDocusite auto-generates all VitePress brand CSS variables (`--vp-c-brand-1`, `--vp-c-brand-2`, `--vp-c-brand-3`, `--vp-c-brand-soft`, `--vp-c-brand-dark`, `--vp-c-brand-dimm`).\n\n### `nav` / `sidebar`\n\nStandard VitePress navigation and sidebar configuration. See [VitePress Default Theme Config](https://vitepress.dev/reference/default-theme-config).\n\n### `locales`\n\nMulti-language support via VitePress i18n:\n\n```ts\nlocales: {\n  root: { label: 'English', lang: 'en' },\n  ru: { label: 'Русский', lang: 'ru', link: '/ru/' },\n}\n```\n\nEach locale can have its own `nav` and `sidebar`.\n\n### `search`\n\nSearch provider. Default is `'local'` (MiniSearch). For Algolia:\n\n```ts\nsearch: {\n  provider: 'algolia',\n  options: {\n    appId: 'YOUR_APP_ID',\n    apiKey: 'YOUR_API_KEY',\n    indexName: 'YOUR_INDEX_NAME',\n  },\n}\n```\n\n### `llms`\n\nEnable `llms.txt` and `llms-full.txt` generation (default: `true`). Disable with `llms: false`, or pass options:\n\n```ts\nllms: {\n  ignoreFiles: ['private/**'],\n  description: 'Custom description for llms.txt',\n}\n```\n\n### `socialLinks`\n\nSocial links displayed in the navigation bar.\n\n### `head`\n\nAdditional `\u003chead\u003e` tags (same format as VitePress).\n\n### `customCss`\n\nCustom CSS file paths to inject.\n\n### `themeConfigOverrides` / `siteConfigOverrides`\n\nRaw VitePress theme/site config overrides, merged last. Use these for any VitePress option not covered by docusite's config.\n\n## CLI\n\n```bash\ndocusite dev [root]     # Start dev server\ndocusite build [root]   # Build for production\ndocusite preview [root] # Preview production build\n```\n\nOptions:\n- `--port \u003cport\u003e` — Specify dev/preview server port\n\n## How It Works\n\nDocusite reads your `docusite.config.ts`, transforms it into a VitePress configuration, writes it to `.vitepress/config.mts` inside your docs directory, and runs VitePress's programmatic API. The `.vitepress/` directory is automatically added to your docs' `.gitignore`.\n\n## Requirements\n\n- Node.js \u003e= 20\n- pnpm (recommended) or npm/yarn\n\n## License\n\nMIT\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjs2me%2Fdocusite","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjs2me%2Fdocusite","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjs2me%2Fdocusite/lists"}