Welcome to d0xigen!
Hello 👋, you are currently viewing the documentation for d0xigen - UI layer for documentation to my projects. And yeah, this is me: d0rich.
I have created this theme to make my documentation sites look the same. Also, d0xigen makes it easier for me to create documentation sites for my projects. All for me, but you can use it too.
Let's try to use it!
Installation
Like all front-end projects, this one is created within Node.js ecosystem. Layer itself is available as a package on npm.
npm install d0xigen@latest
Reference package.json
:
{
"private": true,
"dependencies": {
"d0xigen": "^0.1.4"
}
}
Usage
d0xigen is a Nuxt 3 layer. So, you need to install Nuxt 3 first. I believe you can do it yourself.
Extending Nuxt 3
All is required is to extend your Nuxt app with d0xigen in nuxt.config.ts
.
export default defineNuxtConfig({
extends: ['d0xigen']
})
Meta information
And technically it will work. But I believe you want to customize at least general information.
You can specify it inside app.config.ts
in d0xigen
section.
export default defineAppConfig({
d0xigen: {
title: 'd0xigen',
description: '🌬🕮 Docs to breath life into your project',
url: 'https://d0xigen.d0rich.me',
author: 'Nikolai Dorofeev',
social: {
github: 'https://github.com/d0rich/d0xigen'
}
}
})
Creating content
Run project in development mode:
npx nuxt dev
That's it! You can start creating content. Create content
folder for that and enjoy features of Nuxt Content.
GitHub pages
Reference action for GitHub pages deployment:
name: Publish Docs
on:
push:
workflow_dispatch:
jobs:
build-and-deploy:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v1
- name: Use Node.js 16
uses: actions/setup-node@v3
with:
node-version: 16
- name: Installing packages
working-directory: ./.docs
run: npm install
- name: Build Nuxt 3 static site
working-directory: ./.docs
run: npx nuxi generate
- name: Deploy to GitHub Pages
uses: peaceiris/actions-gh-pages@v3
if: github.ref == 'refs/heads/master'
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./.docs/dist
commit_message: 'Automatic deploy: ${{ github.event.head_commit.message }}'