DocuBase logo DocuBase

Installation

Step-by-step guide to install and set up DocuBase

5 min read

This guide covers multiple installation methods for DocuBase, from quick setup to manual configuration.

System Requirements

Before installing DocuBase, ensure your system meets these requirements:

Requirement Minimum Recommended
Node.js v18.0.0 v20.0.0+
RAM 4GB 8GB+
Disk Space 500MB 1GB+

Check your Node version

Run node --version in your terminal to verify your Node.js installation.

Verify Prerequisites

Run these commands to check your system readiness

# Check Node.js version
node --version

# Check npm version
npm --version

# Check git version
git --version

Quick Installation

The fastest way to get started is using the CLI:

Create your project

Run the create command using your preferred package manager:

npx create-docubase my-docs
pnpm create docubase my-docs
yarn create docubase my-docs

The CLI will:

  • Create a new directory with your project name
  • Copy the DocuBase template files
  • Prompt you to install dependencies

Navigate to your project

cd my-docs

Start development server

Launch the development server:

npm run dev
pnpm dev
yarn dev
bun dev

Open http://localhost:4321 in your browser.

Alternative: Clone from GitHub

You can also clone the repository directly:

git clone https://github.com/Sithumli/DocuBase.git my-docs
cd my-docs
npm install

Manual Installation

If you prefer to set up DocuBase from scratch or integrate it into an existing project:

1. Create a new Astro project

npm create astro@latest my-docs

2. Install required dependencies

npm install @astrojs/mdx @astrojs/tailwind tailwindcss

3. Configure Astro

Update your astro.config.mjs:

import { defineConfig } from 'astro/config';
import mdx from '@astrojs/mdx';
import tailwind from '@astrojs/tailwind';

export default defineConfig({
  integrations: [mdx(), tailwind()],
  output: 'static'
});

4. Set up content collections

Create src/content.config.ts:

import { defineCollection, z } from 'astro:content';
import { glob } from 'astro/loaders';

const docs = defineCollection({
  loader: glob({ pattern: "**/*.mdx", base: "./src/content/docs" }),
  schema: z.object({
    title: z.string(),
    description: z.string().optional(),
    order: z.number().optional(),
    category: z.string().optional(),
  }),
});

export const collections = { docs };

Verifying Installation

After installation, verify everything works correctly:

Check the homepage

Navigate to http://localhost:4321 and confirm the homepage loads.

Test documentation pages

Visit http://localhost:4321/docs/getting-started to verify documentation rendering.

Check for errors

Look at your terminal for any build warnings or errors.

Common issues

If you see dependency errors, try deleting node_modules and your lockfile, then reinstalling.

Troubleshooting

Environment Configuration

DocuBase works out of the box, but you can customize it with environment variables:

Variable Description Default
PUBLIC_SITE_URL Your site's public URL http://localhost:4321
PUBLIC_SITE_NAME Display name for your docs DocuBase
PUBLIC_SITE_DESCRIPTION Site meta description Documentation site

Example .env file

Create a .env file in your project root

# Site Configuration
PUBLIC_SITE_URL=https://your-docs.vercel.app
PUBLIC_SITE_NAME=My Documentation
PUBLIC_SITE_DESCRIPTION=Documentation for my awesome project

Environment variables

Variables prefixed with PUBLIC_ are exposed to the client-side. Keep sensitive values without this prefix.

Updating DocuBase

To update to the latest version (if you cloned from GitHub):

git pull origin main
npm install
git pull origin main
pnpm install
git pull origin main
yarn install
git pull origin main
bun install

Info

Check the changelog before updating to review any breaking changes.

Next Steps

Now that you have DocuBase installed, here’s what to do next:

  • Getting Started - Learn the basics and start building your documentation
  • Core Concepts - Understand how DocuBase works under the hood
  • Components - Explore all available components and how to use them

Need help?

If you run into any issues during installation, check the troubleshooting section above or visit our GitHub repository to report a bug.