How to install and set up Denote for your project
Installation
Get up and running with Denote in minutes.
Prerequisites
Before you begin, make sure you have Deno installed on your system:
bash
# Install Deno (macOS/Linux)
curl -fsSL https://deno.com/install.sh | sh
# Or with Homebrew
brew install deno
Create a New Project
The easiest way to get started is using our init command:
bash
deno run -Ar jsr:@denote/init my-docs
cd my-docs
This will create a new Denote project with the following structure:
arduino
my-docs/
├── content/
│ └── docs/
│ ├── introduction.md
│ └── installation.md
├── static/
├── client.ts
├── denote.config.ts
├── deno.json
├── Dockerfile
├── main.ts
├── README.md
├── styles.css
├── vite.config.ts
└── .gitignore
Start the Development Server
Run the development server to see your docs:
bash
deno task dev
Open http://localhost:8000 to view your documentation site.
Project Structure
content/docs/- Your documentation markdown filesdenote.config.ts- Site configuration (navigation, branding, etc.)main.ts- Fresh app entry pointvite.config.ts- Vite build configurationclient.ts- Client-side entry for CSSstyles.css- Tailwind CSS importsstatic/- Static assets (images, fonts, etc.)Dockerfile- Production Docker image
Validate Your Project
Run the built-in validation to catch common issues:
bash
deno task validate
This checks your project for:
- Config errors — missing
name, invalid hex colors, malformed URLs, unrecognized keys - Content issues — missing
content/docs/directory, files without atitlein frontmatter - Broken navigation links — any
hrefin yournavigationconfig that doesn't match an existing markdown file
If your project uses custom paths, pass --content-dir and --docs-base-path:
bash
deno run -A jsr:@denote/core/validate --content-dir=./my-content --docs-base-path=/reference
Fix any errors before deploying to avoid broken links or missing pages.
Next Steps
- Quick Start — Build your first doc page
- Configuration — Customize your site
- Writing Content — Learn the markdown syntax