Skip to content

eighty4/dank

Repository files navigation

Build DANK webpages

Get developing right away:

bun create dank --out-dir www

npm create dank -- --out-dir www

pnpm create dank --out-dir www

DANK has some perks:

  • Webpage-first development for multi-page websites
  • TypeScript supported with <script src="./dank.ts">
  • Code splitting via esbuild bundler across all webpages
  • Hashes added to all bundled assets for efficient cache utilization
  • dank serve hot-reloads CSS in the browser
  • dank serve launches dev services to streamline your workflow
  • dank preview serves a production build for preview
  • dank build minifies and tree-shakes with esbuild
  • DANK's codebase is so tiny you can read it all in 20 minutes

DANK isn't for every use case!

Vite is the right move for building a Single-Page Application.

Dynamic content with Static-Site Generation or Server-Side Rendering should use Astro.

DANK is an ideal choice for multi-page websites deployed to a CDN that integrate with serverless components and APIs.

dank.config.ts examples

Webpages and their URLs are configured explicitly to keep your URLs and workspace organized independently:

import { defineConfig } from '@eighty4/dank'

export default defineConfig({
    pages: {
        '/': './home.html',
    },
})

Streamline development with dank serve launching APIs and databases when starting your website's dev server:

import { defineConfig } from '@eighty4/dank'

export default defineConfig({
    pages: {
        '/': './home.html',
    },
    services: [
        {
            command: 'node --watch --env-file-if-exists=.env.dev server.ts',
            cwd: './api',
        },
    ],
})

About

Multi-page development system for CDN-deployed websites

Resources

Stars

Watchers

Forks

Releases

Contributors

Languages