79 lines
3.6 KiB
Markdown
79 lines
3.6 KiB
Markdown
---
|
|
allowed-tools: Read, Write, Edit, Bash, Glob
|
|
argument-hint: [project-type] [framework] | --react | --vue | --api | --cli
|
|
description: Initialize new project with essential structure, configuration, and development environment setup
|
|
---
|
|
|
|
# Initialize New Project
|
|
|
|
Initialize new project with essential structure: **$ARGUMENTS**
|
|
|
|
## Instructions
|
|
|
|
1. **Project Analysis and Setup**
|
|
- Parse the project type and framework from arguments: `$ARGUMENTS`
|
|
- If no arguments provided, analyze current directory and ask user for project type and framework
|
|
- Create project directory structure if needed
|
|
- Validate that the chosen framework is appropriate for the project type
|
|
|
|
2. **Base Project Structure**
|
|
- Create essential directories (src/, tests/, docs/, etc.)
|
|
- Initialize git repository with proper .gitignore for the project type
|
|
- Create README.md with project description and setup instructions
|
|
- Set up proper file structure based on project type and framework
|
|
|
|
3. **Framework-Specific Configuration**
|
|
- **Web/React**: Set up React with TypeScript, Vite/Next.js, ESLint, Prettier
|
|
- **Web/Vue**: Configure Vue 3 with TypeScript, Vite, ESLint, Prettier
|
|
- **Web/Angular**: Set up Angular CLI project with TypeScript and testing
|
|
- **API/Express**: Create Express.js server with TypeScript, middleware, and routing
|
|
- **API/FastAPI**: Set up FastAPI with Python, Pydantic models, and async support
|
|
- **Mobile/React Native**: Configure React Native with navigation and development tools
|
|
- **Desktop/Electron**: Set up Electron with renderer and main process structure
|
|
- **CLI/Node**: Create Node.js CLI with commander.js and proper packaging
|
|
- **Library/NPM**: Set up library with TypeScript, rollup/webpack, and publishing config
|
|
|
|
4. **Development Environment Setup**
|
|
- Configure package manager (npm, yarn, pnpm) with proper package.json
|
|
- Set up TypeScript configuration with strict mode and path mapping
|
|
- Configure linting with ESLint and language-specific rules
|
|
- Set up code formatting with Prettier and pre-commit hooks
|
|
- Add EditorConfig for consistent coding standards
|
|
|
|
5. **Testing Infrastructure**
|
|
- Install and configure testing framework (Jest, Vitest, Pytest, etc.)
|
|
- Set up test directory structure and example tests
|
|
- Configure code coverage reporting
|
|
- Add testing scripts to package.json/makefile
|
|
|
|
6. **Build and Development Tools**
|
|
- Configure build system (Vite, webpack, rollup, etc.)
|
|
- Set up development server with hot reloading
|
|
- Configure environment variable management
|
|
- Add build optimization and bundling
|
|
|
|
7. **CI/CD Pipeline**
|
|
- Create GitHub Actions workflow for testing and deployment
|
|
- Set up automated testing on pull requests
|
|
- Configure automated dependency updates with Dependabot
|
|
- Add status badges to README
|
|
|
|
8. **Documentation and Quality**
|
|
- Generate comprehensive README with installation and usage instructions
|
|
- Create CONTRIBUTING.md with development guidelines
|
|
- Set up API documentation generation (JSDoc, Sphinx, etc.)
|
|
- Add code quality badges and shields
|
|
|
|
9. **Security and Best Practices**
|
|
- Configure security scanning with npm audit or similar
|
|
- Set up dependency vulnerability checking
|
|
- Add security headers for web applications
|
|
- Configure environment-specific security settings
|
|
|
|
10. **Project Validation**
|
|
- Verify all dependencies install correctly
|
|
- Run initial build to ensure configuration is working
|
|
- Execute test suite to validate testing setup
|
|
- Check linting and formatting rules are applied
|
|
- Validate that development server starts successfully
|
|
- Create initial commit with proper project structure |