| file_type | documentation | |||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| title | Configurations | |||||||||||||||
| description | Configuration management and environment setup guide for LightSpeedWP projects | |||||||||||||||
| version | 1.0.0 | |||||||||||||||
| last_updated | 2025-12-04 | |||||||||||||||
| owners |
|
|||||||||||||||
| tags |
|
|||||||||||||||
| references |
|
This guide provides an overview of configuration management for LightSpeedWP projects, including tooling setup, build configuration, linting rules, and development environment initialization.
Configuration files define how LightSpeedWP projects behave across development, testing, and production environments. This document serves as a high-level guide to configuration management strategies and patterns.
For detailed configuration file documentation, see Configuration Files Index.
Configuration files that control how code is built and compiled:
babel.config.md— Babel transpilation configurationwebpack.config.md— Module bundling (if applicable)tsconfig.json— TypeScript compilation settings
Tools that enforce code standards:
eslint.config.md— JavaScript/TypeScript linting rulesprettier.config.md— Code formatting standardsstylelint.config.md— CSS/SCSS linting (if applicable)yamllint.config.md— YAML validation
Configuration for automated testing:
jest.config.md— JavaScript testing frameworkplaywright.config.md— End-to-end browser testing
Files that configure runtime behavior:
.editorconfig— Editor standardization.env.example— Environment variable templates.npmrc/.yarnrc— Package manager settings
Dependency and package configuration:
package.json— NPM package definition and scriptspackage-lock.json— Locked dependency versionscomposer.json— PHP dependency management (if applicable)
Configuration for schema and compliance:
frontmatter.schema.json— Documentation frontmatter validation.prettier.config.js— Formatting consistency
-
Install Dependencies
npm install # JavaScript/Node.js dependencies composer install # PHP dependencies (if applicable)
-
Configure Environment Variables
cp .env.example .env.local # Edit .env.local with local settings -
Initialize Pre-commit Hooks
npm run prepare # Install Husky pre-commit hooks
npm run build # Production build
npm run dev # Development build with watch mode
npm run lint # Run linters (ESLint, Prettier, etc.)npm test # Run all tests
npm run test:e2e # Run end-to-end tests
npm run coverage # Generate coverage reports- Add to
.env.examplewith explanation - Document in
CONFIGURATIONS.md - Update deployment/CI configuration
- Test in all environments
- Modify rule in
.eslintrc.jsonoreslint.config.cjs - Run linter across codebase:
npm run lint:fix - Document change in PR description
- Update this guide if needed
- Update build config (
tsconfig.json,babel.config.js, etc.) - Test build locally:
npm run build - Verify output in build artifacts
- Update CI configuration if needed
| Config File | Purpose | Status |
|---|---|---|
eslint.config.cjs |
JS/TS linting | Active |
prettier.config.js |
Code formatting | Active |
.editorconfig |
Editor settings | Active |
jest.config.js |
Testing | Active |
package.json |
Dependencies | Active |
tsconfig.json |
TypeScript | Active |
playwright.config.js |
E2E testing | Active |
- Use lowercase for filenames:
.eslintrc.json,prettier.config.js - Use camelCase for configuration keys:
ignorePattern,arrowParens - Use kebab-case for CLI flags:
--no-cache,--max-workers
- Prefer JSON for static configuration (validate against schema)
- Use JavaScript files for dynamic configuration logic
- YAML for Docker and CI/CD configuration
- Comments in configuration files (where supported)
- Every configuration file should have a
.mdguide indocs/config/ - Include purpose, structure, and common customizations
- Provide examples and troubleshooting tips
Issue: Configuration changes not taking effect
- Clear build cache:
npm run cleanorrm -rf dist/ - Verify file syntax: Run config validation
- Check for duplicate configuration files
- Restart development server
Issue: Linting failures after update
- Review linting rule changes in
.eslintrc.json - Run fixer:
npm run lint:fix - Check for conflicting rules (ESLint ↔ Prettier)
Issue: Environment variables not available
- Verify
.env.localcontains required variables - Check environment variable loading in build config
- Ensure variables are exported in shell environment
- Review Linting Standards for code quality configuration
- See Configuration Files Index for detailed file documentation
- Check Testing Guide for test configuration details
Maintained with ❤️ by the 🚀 LightSpeedWP Automation Team Org Profile