Skip to content

Conversation

@Shriii19
Copy link

What this PR does

  • Adds an optional “customization” step after stack/language/package‑manager selection.
  • Introduces advanced options:
    • Custom server port and client port
    • Optional Git repo initialization with a sensible .gitignore
    • Optional Docker configuration for supported stacks
    • Code formatting setup: ESLint + Prettier / ESLint only / None
    • Additional features:
      • API Documentation (Swagger)
      • Environment variables .env.example template
      • VS Code workspace settings + recommended extensions
      • Pre‑commit hooks (Husky + lint-staged)
      • GitHub Actions CI/CD workflow

CLI flow example

npx celtrix my-app

# After stack/language selection:

? 🎨 Would you like to customize your project configuration? Yes
? 🔌 Server port: 8000
? 🔌 Client port: 5173
? 📦 Initialize Git repository? Yes
? 🐳 Include Docker configuration? Yes
? ✨ Code formatting setup: ESLint + Prettier
? 🚀 Select additional features:
  ◉ API Documentation (Swagger)
  ◉ Environment variables (.env template)
  ◉ VS Code settings
  ◯ Pre-commit hooks (Husky)
  ◯ GitHub Actions CI/CD

- Add interactive customization prompts for project setup
- Support port configuration (server/client)
- Add Git initialization with .gitignore
- Include Docker setup option
- Add code formatting options (ESLint + Prettier)
- Implement additional features:
  * Swagger API documentation
  * Environment variable templates
  * VS Code workspace settings
  * Husky pre-commit hooks
  * GitHub Actions CI/CD
- Create customization utility handler
- Update project setup to apply customizations
- Add comprehensive documentation in CUSTOMIZATION.md
- Add test script for verification

This implements issue celtrix-os#53 - CLI interaction customization options
for the V2 Enhancement milestone.
- Create utils/customization.js with comprehensive handlers
- Implement applyCustomizations() orchestrator function
- Add Git initialization with .gitignore generation
- Add environment template creation (.env.example)
- Add VS Code workspace settings generator
- Add GitHub Actions CI/CD workflow setup
- Add Husky pre-commit hooks configuration
- Add Swagger API documentation setup
- Add port configuration updater for server/client
- Export getAdditionalDependencies() helper

Part of celtrix-os#53 - CLI customization options
- Add askCustomizationOptions() prompt in index.js
- Add askAdvancedOptions() with port, Git, Docker, styling configs
- Integrate customization into main() workflow
- Update project.js to import and apply customizations
- Enhance config display box to show customization settings
- Call applyCustomizations() after project scaffolding

Part of celtrix-os#53 - CLI customization options
- Add CUSTOMIZATION.md with comprehensive feature guide
- Update README.md with Advanced Customization section
- Add tests/test-customization.js for feature verification
- Document usage examples, CLI flow, and benefits
- Include implementation notes and future enhancements

Closes celtrix-os#53
Copy link
Author

@Shriii19 Shriii19 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

i have fix the error of issues no #51

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant