Simplify Caddy configs with SSL, proxies, file servers, security headers, compression & more.
  • Vue 65.1%
  • TypeScript 29.5%
  • JavaScript 2.9%
  • CSS 1.6%
  • HTML 0.5%
  • Other 0.4%
Find a file
2025-01-12 20:09:41 +00:00
.bolt Initial commit 2025-01-07 15:00:36 +00:00
.github/workflows feat: add GitHub Actions workflow for Docker build and publish 2025-01-11 12:41:25 +00:00
public Initial commit 2025-01-07 15:00:36 +00:00
src Closes #1 - adds option to specify cert and key paths 2025-01-11 19:45:13 +00:00
.gitignore Initial commit 2025-01-07 15:00:36 +00:00
docker-compose.yml Update Docker configuration and README for port change and container name 2025-01-08 09:26:12 +00:00
Dockerfile added docker support 2025-01-07 16:47:58 +00:00
index.html Initial commit 2025-01-07 15:00:36 +00:00
nginx.conf added docker support 2025-01-07 16:47:58 +00:00
package-lock.json Fixes #2 by making use of uuid library insead of crypto 2025-01-11 17:43:00 +00:00
package.json Fixes #2 by making use of uuid library insead of crypto 2025-01-11 17:43:00 +00:00
postcss.config.js Initial commit 2025-01-07 15:00:36 +00:00
README.md Update README.md 2025-01-12 20:09:23 +00:00
tailwind.config.js Initial commit 2025-01-07 15:00:36 +00:00
tsconfig.app.json Initial commit 2025-01-07 15:00:36 +00:00
tsconfig.app.tsbuildinfo added docker support 2025-01-07 16:47:58 +00:00
tsconfig.json Initial commit 2025-01-07 15:00:36 +00:00
tsconfig.node.json Initial commit 2025-01-07 15:00:36 +00:00
tsconfig.node.tsbuildinfo added docker support 2025-01-07 16:47:58 +00:00
vite.config.ts Initial commit 2025-01-07 15:00:36 +00:00

CaddyGen - Caddy Config Generator

CaddyGen is a user-friendly web interface for generating Caddy server configurations. Easily create and manage reverse proxy and file server configurations with support for SSL, compression, security headers, and more.

Features

  • 🚀 Visual configuration builder for the Caddy server
  • 🔒 SSL/TLS configuration with Let's Encrypt support
  • 🔄 Reverse proxy and file server setup
  • 📦 Pre-configured presets for popular applications
  • 💾 Local storage for saving configurations
  • 📤 Import/Export for Caddyfiles
  • 🛡️ Advanced security options (CSP, rate limiting, IP filtering)
  • Performance optimizations (compression, caching)
  • 🌐 CORS configuration
  • 📁 File server options (directory listing, PHP and FrankenPHP support)

Live Demo

Try CaddyGen now: demo.caddygen.site

How to Use

  1. Click the "Add New Host" button.
  2. Configure your settings:
    • Choose between reverse proxy or file server.
    • Select from pre-configured application presets.
    • Configure SSL, compression, and security options.
  3. View, copy, or download your generated Caddyfile.

Docker Deployment

Deploy CaddyGen using Docker with ease:

Run the Pre-Built Image

Pull the latest image from Docker Hub and run it:

docker pull wardy784/caddygen:latest
docker run -d --restart unless-stopped -p 8189:80 wardy784/caddygen:latest

Run with Docker Compose

Use the following docker-compose.yml:

version: '3.8'

services:
  app:
    image: wardy784/caddygen:latest
    ports:
      - "8189:80"
    restart: unless-stopped
    container_name: caddygen

To deploy:

docker compose up -d

Access the app at http://localhost:8189.

Build Locally

If you prefer to build the image yourself:

docker build -t caddygen .
docker run -p 8189:80 caddygen

Development Setup

This project is built using the following technologies:

  • Vue 3 with TypeScript
  • Vite for fast builds
  • Tailwind CSS for styling
  • Prism.js for syntax highlighting
  • Lucide Icons for UI elements

Getting Started

  1. Clone the repository:

    git clone https://github.com/wardy784/caddygen.git
    cd caddygen
    
  2. Install dependencies:

    npm install
    
  3. Start the development server:

    npm run dev
    
  4. Open the app in your browser at http://localhost:5173.


Contributing

Contributions are welcome! Whether it's fixing a bug, suggesting a new feature, or improving the documentation, wed love your help. Feel free to open an issue or submit a pull request.


License

CaddyGen is open-source and available under the MIT License. Feel free to use, modify, and distribute it as you wish!