initia-devaxis
v1.0.2
Published
CLI to create full-stack React projects with Next.js (REST) or RedwoodJS (GraphQL)
Maintainers
Readme
🚀 INITIA - CLI de Boilerplate
Une CLI moderne pour créer des projets Next.js et RedwoodJS avec des configurations optimisées (ESLint, Prettier, TypeScript).
✨ Fonctionnalités
- ⚡ Projets Next.js avec App Router et optimisations
- 🌲 Projets RedwoodJS full-stack complets
- 🔍 ESLint configuré avec les meilleures pratiques
- 💅 Prettier pour un formatage cohérent du code
- 🔷 TypeScript supporté par défaut
- 🎨 Tailwind CSS (optionnel pour Next.js)
- 📖 README personnalisés avec documentation complète
🛠️ Installation
Installation globale (recommandée)
npm install -g initiaUtilisation avec npx (sans installation)
npx initia🚀 Utilisation
Créer un nouveau projet
initia
# ou
initia initProcessus de création
Configuration du projet :
- Nom du projet
- Choix du framework (Next.js / RedwoodJS)
- Options TypeScript, ESLint, Prettier
- Tailwind CSS (pour Next.js)
Génération automatique du projet avec toutes les configurations
📋 Exemples de projets générés
Next.js avec TypeScript + Tailwind
mon-projet-next/
├── src/
│ ├── app/ # App Router (Next.js 13+)
│ ├── components/ # Composants réutilisables
│ └── styles/ # Fichiers CSS
├── public/ # Assets statiques
├── .eslintrc.json # Configuration ESLint
├── .prettierrc.json # Configuration Prettier
├── tsconfig.json # Configuration TypeScript
└── README.md # DocumentationScripts disponibles :
npm run dev- Serveur de développementnpm run build- Build de productionnpm run lint- Linting du codenpm run format- Formatage avec Prettier
RedwoodJS avec TypeScript
mon-projet-redwood/
├── api/ # Backend (GraphQL, Services, DB)
├── web/ # Frontend (React, Pages, Composants)
├── scripts/ # Scripts utilitaires
├── .eslintrc.js # Configuration ESLint
├── .prettierrc.js # Configuration Prettier
└── README.md # Documentation complèteScripts disponibles :
yarn rw dev- Serveurs développement (frontend + backend)yarn rw build- Build de productionyarn rw lint- Linting du codeyarn format- Formatage avec Prettier
🔧 Configuration
Personnalisation
Vous pouvez modifier la CLI pour :
- Changer les configurations par défaut
- Ajouter des templates personnalisés
- Intégrer d'autres frameworks
🏗️ Développement
Prérequis
- Node.js 18+
- npm ou Yarn
- TypeScript
Installation en développement
git clone <votre-repo>
cd initia
npm install
npm run build
npm linkScripts de développement
npm run dev # Compilation TypeScript en mode watch
npm run build # Compilation TypeScript
npm run start # Démarrage de la CLI compilée
npm test # Tests (à implémenter)Structure du projet
initia/
├── src/
│ ├── commands/ # Commandes CLI
│ │ └── init.ts # Commande d'initialisation
│ ├── utils/
│ │ └── generators/ # Générateurs de projets
│ │ ├── nextjs.ts # Générateur Next.js
│ │ └── redwood.ts # Générateur RedwoodJS
│ ├── types/ # Types TypeScript
│ └── index.ts # Point d'entrée
├── package.json # Dépendances et scripts
└── tsconfig.json # Configuration TypeScript📦 Publication
NPM
npm run build
npm publishTests locaux
npm link
initia --help🛠️ Technologies utilisées
- Node.js - Runtime JavaScript
- TypeScript - Langage typé
- Commander.js - Parser CLI
- Inquirer.js - Prompts interactifs
- Chalk - Couleurs dans le terminal
- Boxen - Boxes formatées
- Figlet - ASCII Art
🤝 Contribution
Les contributions sont les bienvenues ! N'hésitez pas à :
- Fork le projet
- Créer une branche (
git checkout -b feature/amazing-feature) - Commit vos changements (
git commit -m 'Add amazing feature') - Push sur la branche (
git push origin feature/amazing-feature) - Ouvrir une Pull Request
📄 Licence
Ce projet est sous licence MIT. Voir le fichier LICENSE pour plus de détails.
📞 Support
- 🐛 Issues : GitHub Issues
- 💬 Discussions : GitHub Discussions
