typedoc-rhineai-theme
v1.2.0
Published
A carefully designed, detail-refined GitHub-style TypeDoc theme.
Downloads
672
Maintainers
Readme
Features
- GitHub-Style Design - Clean, familiar interface inspired by GitHub's documentation style
- Dark Mode Support - Automatic theme switching based on system preferences
- Responsive Layout - Works seamlessly on desktop, tablet, and mobile devices
- Syntax Highlighting - Beautiful code blocks with language-specific highlighting
- Zero Configuration - Works out of the box with sensible defaults
- Fast & Lightweight - Optimized for performance with minimal bundle size
Preview
Installation
# Using npm
npm install typedoc-rhineai-theme --save-dev
# Using yarn
yarn add typedoc-rhineai-theme --dev
# Using pnpm
pnpm add typedoc-rhineai-theme --save-dev
# Using bun
bun add typedoc-rhineai-theme --devRequirements
- Node.js >= 18.0.0
- TypeDoc ~0.28
What is TypeDoc?
TypeDoc is a documentation generator for TypeScript projects. It reads your TypeScript source code and JSDoc comments, then generates static HTML documentation automatically.
If you're new to TypeDoc, visit typedoc.org to learn how to get started.
Usage
Basic Setup
Add the theme to your typedoc.json configuration file:
{
"$schema": "https://typedoc.org/schema.json",
"name": "My Project",
"entryPoints": ["./src"],
"out": "./docs",
"plugin": ["typedoc-rhineai-theme"]
}Then run TypeDoc:
npx typedocCommand Line Usage
You can also use the theme directly from the command line:
npx typedoc --plugin typedoc-rhineai-theme --entryPoints ./src --out ./docsProgrammatic Usage
import { Application } from 'typedoc';
const app = await Application.bootstrap({
entryPoints: ['./src'],
plugin: ['typedoc-rhineai-theme'],
});
const project = await app.convert();
if (project) {
await app.generateDocs(project, './docs');
}Development
Prerequisites
- Bun - Fast JavaScript runtime and package manager
Setup
# Clone the repository
git clone https://github.com/RhineAI/typedoc-rhineai-theme.git
cd typedoc-rhineai-theme
# Install dependencies
bun install
# Build the project
bun run buildScripts
| Script | Description |
|--------|-------------|
| bun run build | Compile TypeScript to JavaScript |
| bun run example | Build and preview the example documentation |
| bun run type:check | Run TypeScript type checking |
| bun run lint | Run ESLint and fix issues |
| bun run lint:check | Run ESLint without fixing |
| bun run format | Format code with Prettier |
| bun run format:check | Check code formatting |
Project Structure
typedoc-rhineai-theme/
├── src/ # Source code
│ ├── assets/ # Theme assets (CSS, JS)
│ ├── partials/ # JSX template partials
│ ├── public/ # Static files (favicon, manifest)
│ ├── index.tsx # Plugin entry point
│ └── rhineai-theme.tsx # Theme class definition
├── example/ # Example project for testing
├── docs/ # Generated documentation output
├── dist/ # Compiled output
└── package.jsonIssues
- Due to our overly aggressive UI-aesthetics-first approach, we have hidden all scrollbars. If needed, you can fork this repository and modify the CSS.
- Not fully tested yet, and it is still unclear whether it works well across all projects and in all UI scenarios. If you encounter any issues, please open an issue.
- More suitable for dark themes.
Contributing
We welcome contributions! Here's how you can help:
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
Guidelines
- Follow the existing code style
- Write clear commit messages
- Update documentation as needed
- Add tests for new features when applicable
License
This project is licensed under the MIT License - see the LICENSE file for details.
Acknowledgments
- TypeDoc - The documentation generator this theme is built for
