# Quake Live Config Editor > A visual web-based editor for Quake Live configuration files, optimized for competitive play. The application provides CVAR configuration, key bindings, weapon aliases, custom scripts, configuration import/export, and cloud-saved configuration profiles. ## Overview Quake Live Config Editor is a browser-based application for creating, editing, importing, and exporting Quake Live configuration files. Users can generate professional `autoexec.cfg` files through a graphical interface. The application manages console variables (CVARs), key bindings, weapon aliases, custom scripts, and configuration profiles while maintaining Quake Live-compatible configuration syntax. Users can also import existing `.cfg` files, edit their settings through the graphical interface, and export organized configuration files. ## Technical Stack - **Frontend:** HTML5, Tailwind CSS, Vanilla JavaScript - **Backend and Authentication:** Supabase, PostgreSQL, Supabase Auth, Cloud Storage - **Build Tools:** Terser, Clean-CSS, Prettier - **Data Format:** JSON-based CVAR definitions - **Production Deployment:** IONOS - **Additional Hosting:** Hostinger with Apache - **Testing and Development:** Netlify ## Core Data Structures ### CVAR Definitions The application is driven by a master JSON data structure containing supported Quake Live CVARs and commands. Each CVAR definition can contain: - `name`: Quake Live engine CVAR or command name - `label`: Human-readable display name - `category`: User interface category - `ui`: User interface control type - `default`: Default engine value - `options`: Available options for select controls - `perfImpact`: Performance impact classification - `proTip`: Contextual advice for competitive players The master CVAR database is stored in: `/assets/data/cvars.json` ## Key Features ### Comprehensive Binding System Supports mapping native in-game actions and advanced key bindings through the graphical interface. ### Advanced Weapon Aliases Allows users to create weapon-specific scripts with multiple secondary binds and custom weapon logic. ### Custom Scripting Engine Provides an area for creating miscellaneous Quake Live scripts, including movement and gameplay-related scripts such as Rocket Jump configurations. ### CVAR Database Provides a large database of configurable Quake Live variables with categorized settings and recommended competitive configuration values. ### Live Search Provides real-time filtering for CVARs, commands, and key bindings. ### Commented CFG Export Exports `.cfg` files with contextual comments to improve readability when viewed outside the application. ### Dynamic Dependency Interface Displays or hides dependent settings based on master configuration states to help prevent conflicting configuration options. ### Authentication Supports account authentication using: - Email - Google - Discord Authentication and account data are handled through Supabase. ### Configuration Importer Allows users to import local `.cfg` files and edit their existing configuration through the graphical interface. ### Cloud Save Slots Provides up to five named configuration profiles per user account for synchronization across devices. ### Responsive Interface The application is designed for desktop, tablet, and mobile layouts, including touch-oriented binding controls. ### Manual Commit Mode Allows direct text editing within the configuration preview interface for manual configuration overrides. ## File Structure - `/index.html` — Main application entry point - `/assets/js/app.js` — Main application logic, state management, and Supabase integration - `/assets/data/cvars.json` — Master CVAR database and configuration definitions - `/assets/css/styles.css` — Custom CSS and interface overrides - `/generate-database.js` — Generates the static command database from the master JSON data - `/build.sh` — Production build script - `/build-test.sh` — Testing and development build script - `/cvars/` — Generated command database - `/cvars/index.html` — Master CVAR database landing page ## Development Principles ### Minimalism The application avoids large frontend frameworks and uses Vanilla JavaScript to minimize dependencies and maintain fast performance. ### Quake Authenticity The application follows Quake engine configuration syntax and behavior, including configuration import priority, duplicate bind handling, `seta`, `bind`, and `vstr` syntax. ### State-Driven Interface Application state drives the user interface. User interactions update application state before the interface is refreshed. ### Schema-Based UI The interface is generated from the CVAR JSON data structure, allowing configuration dependencies, metadata, and contextual information to be represented consistently. ### Responsive Layout The interface uses a responsive grid architecture designed to maintain alignment and consistent text wrapping across screen sizes. ### Modular Functionality Core functionality is organized into modular engines for configuration importing, weapon configuration, and key binding management. ### Engine-Syntax Compliance Generated configuration files use Quake Live-compatible syntax and formatting for exported `autoexec.cfg` files. ## Important Files The primary application files are: - `index.html` - `assets/js/app.js` - `assets/data/cvars.json` - `assets/css/styles.css` The generated CVAR database is located under: - `/cvars/` ## Site **Website:** https://quakeliveconfigeditor.com/