npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2025 – Pkg Stats / Ryan Hefner

bertui-press

v1.0.0

Published

Lightning-fast markdown to HTML converter with file-based routing

Readme

⚡ BertUI-Press

Lightning-fast markdown to HTML converter with file-based routing. Convert your documentation into beautiful static sites in seconds.

npm version License: MIT Bun

🚀 Quick Start

Installation

bun add -D bertui-press

Create Your Docs

my-project/
├── docs/
│   ├── index.md
│   ├── getting-started.md
│   └── api/
│       ├── introduction.md
│       └── reference.md
└── bertui-press.config.js

Build

bunx bertui-press build

Your docs are now in dist/docs/ ready to deploy! 🎉

📁 File-Based Routing

BertUI-Press automatically generates navigation from your file structure:

docs/
├── index.md              → /index.html
├── getting-started.md    → /getting-started.html
├── api/
│   ├── introduction.md   → /api/introduction.html
│   └── reference.md      → /api/reference.html
└── guides/
    └── advanced.md       → /guides/advanced.html

Navigation is automatically generated with proper hierarchy!

🎨 Features

  • Blazing Fast - Built on Bun for instant builds
  • 📁 File-Based Routing - Automatic navigation from folder structure
  • 🎨 Beautiful Default Theme - Professional docs out of the box
  • 🔥 Hot Reload - Watch mode for instant updates
  • 📱 Responsive - Mobile-friendly by default
  • 🎯 Zero Config - Works immediately, customize when needed
  • 💅 GitHub Flavored Markdown - Tables, code blocks, everything
  • 🌈 Syntax Highlighting - Beautiful code examples
  • 🔍 SEO Friendly - Proper meta tags and structure

📝 Commands

Build Once

bertui-press build

Generates static HTML files in dist/docs/

Dev Mode (Watch & Rebuild)

bertui-press dev

Watches for changes and rebuilds automatically. Perfect for writing docs!

⚙️ Configuration

Create bertui-press.config.js in your project root:

export default {
  title: "My Awesome Docs",
  description: "Documentation for my awesome project",
  logo: "🚀",
  themeColor: "#667eea",
  github: "https://github.com/username/repo",
  
  // Optional: Custom input/output directories
  docsDir: "docs",      // default: "docs"
  outDir: "dist/docs"   // default: "dist/docs"
};

Configuration Options

| Option | Type | Default | Description | |--------|------|---------|-------------| | title | string | "Documentation" | Site title | | description | string | "" | Site description | | logo | string | "⚡" | Logo emoji or text | | themeColor | string | "#667eea" | Primary theme color | | github | string | "" | GitHub repo URL (shows link in sidebar) | | docsDir | string | "docs" | Input directory | | outDir | string | "dist/docs" | Output directory |

📖 Writing Docs

Basic Markdown

# My Page Title

This is a paragraph with **bold** and *italic* text.

## Section Heading

- List item 1
- List item 2
- List item 3

### Code Example

\`\`\`javascript
function hello() {
  console.log("Hello, BertUI-Press!");
}
\`\`\`

Advanced Features

Tables:

| Feature | Status |
|---------|--------|
| Fast    | ✅     |
| Easy    | ✅     |
| Free    | ✅     |

Blockquotes:

> **Note:** This is important information!

Links:

[Link to another page](./getting-started.html)
[External link](https://github.com)

Images:

![Alt text](./assets/image.png)

🎨 Customization

Custom Template

Create your own HTML template:

// bertui-press.config.js
export default {
  template: `
<!DOCTYPE html>
<html>
<head>
  <title>{{title}}</title>
  <style>
    /* Your custom styles */
  </style>
</head>
<body>
  <nav>{{navigation}}</nav>
  <main>{{content}}</main>
</body>
</html>
  `
};

Available template variables:

  • {{title}} - Page title (from h1)
  • {{siteTitle}} - Site title (from config)
  • {{description}} - Site description
  • {{logo}} - Logo
  • {{themeColor}} - Theme color
  • {{github}} - GitHub URL
  • {{content}} - Rendered HTML content
  • {{navigation}} - Auto-generated navigation
  • {{config}} - Full config as JSON

Static Assets

Place images and other assets in docs/assets/:

docs/
├── assets/
│   ├── logo.png
│   └── screenshot.jpg
└── index.md

Reference them in your markdown:

![Logo](./assets/logo.png)

Assets are automatically copied to the output directory.

🚀 Deployment

Vercel

# Install Vercel CLI
bun add -g vercel

# Deploy
vercel

vercel.json:

{
  "buildCommand": "bertui-press build",
  "outputDirectory": "dist/docs"
}

Netlify

# Install Netlify CLI
bun add -g netlify-cli

# Deploy
netlify deploy --prod

netlify.toml:

[build]
  command = "bertui-press build"
  publish = "dist/docs"

GitHub Pages

  1. Build your docs: bertui-press build
  2. Push dist/docs/ to gh-pages branch
  3. Enable GitHub Pages in repo settings

Static Hosting

Upload the contents of dist/docs/ to any static hosting:

  • AWS S3 + CloudFront
  • Cloudflare Pages
  • Firebase Hosting
  • Any web server!

📊 Example Projects

Basic Documentation

docs/
├── index.md           # Home page
├── installation.md    # Installation guide
├── usage.md          # Usage guide
└── api.md            # API reference

Complex Project

docs/
├── index.md
├── getting-started/
│   ├── installation.md
│   ├── quick-start.md
│   └── configuration.md
├── guides/
│   ├── basics.md
│   ├── advanced.md
│   └── best-practices.md
├── api/
│   ├── classes.md
│   ├── functions.md
│   └── types.md
└── assets/
    ├── logo.png
    └── screenshots/

🛠️ Programmatic Usage

Use BertUI-Press in your own scripts:

import { BertUIPress } from 'bertui-press';

const press = new BertUIPress({
  root: process.cwd(),
  docsDir: 'docs',
  outDir: 'dist/docs',
  config: {
    title: 'My Docs',
    themeColor: '#ff6b6b'
  }
});

// Build once
await press.build();

// Watch mode
press.dev();

🎯 Use Cases

  • Project Documentation - Document your libraries and frameworks
  • Technical Blogs - Write markdown, deploy as HTML
  • API References - Beautiful API docs
  • Knowledge Bases - Internal documentation
  • User Guides - Product documentation
  • Tutorials - Step-by-step guides

🆚 Comparison

| Feature | BertUI-Press | VitePress | Docusaurus | |---------|-------------|-----------|------------| | Runtime | Bun | Node | Node | | Build Speed | ⚡⚡⚡ | ⚡⚡ | ⚡ | | Setup Time | <1 min | ~5 min | ~10 min | | Config Required | None | Some | Lots | | Bundle Size | Tiny | Small | Large |

🤝 Contributing

We love contributions! Please:

  1. Fork the repo
  2. Create a feature branch
  3. Make your changes
  4. Submit a Pull Request

📄 License

MIT © Pease Ernest

🙏 Credits


Built with ⚡ by developers who love speed

⭐ Star on GitHub📦 npm Package