Skip to content

trfhgx/nginxconf-wizard

Repository files navigation

nginxconf-wizard

npm version License: MIT Node.js Version Downloads GitHub stars

Intelligent Nginx Configuration Generator

Generate production-ready Nginx configurations with (Upcoming) AI-powered performance profiles and framework presets


Features

Smart Configuration

  • AI-Powered Profiles: Automatically detect and apply optimal performance settings
  • Framework Presets: Ready-to-use configs for Next.js, React, WordPress, Laravel, etc.
  • Configuration Validation: Comprehensive syntax checking and best practice recommendations
  • Nginx Testing: Built-in nginx -t wrapper with enhanced error reporting

Security & Performance

  • Security Hardening: SSL/TLS, security headers, and rate limiting by default
  • Performance Optimization: Tuned profiles for high-traffic, CDN, API gateway environments
  • Log Analysis: Access and error log parsing with actionable insights
  • Benchmark Analysis: Performance analysis for wrk, ApacheBench, k6, and other tools

Installation

Global Installation (Recommended)

npm install -g nginxconf-wizard

Local Development

git clone https://github.com/trfhgx/nginxconf-wizard.git
cd nginxconf-wizard
npm install
npm link

Verify Installation

nginxconf-wizard --version

Quick Start

Interactive Wizard

nginxconf-wizard

Follow the prompts to generate your first configuration!

Framework Presets

# Next.js Application
nginxconf-wizard generate --preset nextjs --profile api-gateway

# React SPA with API
nginxconf-wizard generate --preset react-spa

# WordPress Site
nginxconf-wizard generate --preset wordpress --profile high-traffic

Validate Configuration

nginxconf-wizard validate nginx.conf

Usage

Generate Configuration

nginxconf-wizard generate [options]
Option Description Example
--preset <name> Framework preset --preset nextjs
--profile <name> Performance profile --profile high-traffic
--output <file> Output file --output my-nginx.conf

Available Presets

  • nextjs - Next.js applications
  • react-spa - React Single Page Apps
  • wordpress - WordPress sites
  • laravel - Laravel applications
  • static-html - Static websites
  • fastapi - FastAPI backends

Performance Profiles

  • balanced - Default settings
  • high-traffic - 2048+ connections
  • low-resource - Constrained environments
  • cdn-origin - Behind Cloudflare
  • api-gateway - High upstream connections

Advanced Commands

# Update existing configuration
nginxconf-wizard update --auto-apply

# Analyze logs for insights
nginxconf-wizard analyze-logs /var/log/nginx/access.log

# Benchmark analysis
nginxconf-wizard analyze-benchmark results.txt --apply

# Test configuration
nginxconf-wizard test nginx.conf

Contributing

We welcome contributions! Please see our Contributing Guide.

Development Workflow

  1. Fork the repository
  2. Create feature branch: git checkout -b feature/amazing-feature
  3. Commit changes: git commit -m 'feat: add amazing feature'
  4. Push: git push origin feature/amazing-feature
  5. Open Pull Request

Code Quality

  • ESLint configuration
  • Jest test coverage
  • Prettier formatting
  • Conventional commits

Requirements

  • Node.js: 18.0.0 or higher
  • Nginx: 1.18.0 or higher (optional, for testing)

Getting Help


License

This project is licensed under the MIT License - see the LICENSE file.

Made with love for the Nginx community

Star us on GitHubInstall from npmRead the docs

About

No description, website, or topics provided.

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published