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.
- 🚀 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)
Try CaddyGen now: demo.caddygen.site
- Click the "Add New Host" button.
- Configure your settings:
- Choose between reverse proxy or file server.
- Select from pre-configured application presets.
- Configure SSL, compression, and security options.
- View, copy, or download your generated Caddyfile.
Deploy CaddyGen using Docker with ease:
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
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
.
If you prefer to build the image yourself:
docker build -t caddygen .
docker run -p 8189:80 caddygen
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
-
Clone the repository:
git clone https://github.com/wardy784/caddygen.git cd caddygen
-
Install dependencies:
npm install
-
Start the development server:
npm run dev
-
Open the app in your browser at
http://localhost:5173
.
Contributions are welcome! Whether it's fixing a bug, suggesting a new feature, or improving the documentation, we’d love your help. Feel free to open an issue or submit a pull request.
CaddyGen is open-source and available under the MIT License. Feel free to use, modify, and distribute it as you wish!