heyjarvis
v1.0.9
Published
J.A.R.V.I.S. - Advanced Node.js MVC Framework with ORM, built-in validation, soft delete, and query builder
Downloads
10
Maintainers
Readme
🤖 J.A.R.V.I.S. Framework CLI
Advanced Node.js MVC Framework Generator - Just A Rather Very Intelligent System
📦 Installation
# Global installation (recommended)
npm install -g heyjarvis
# Or use directly with npx
npx heyjarvis create my-project🚀 Quick Start
# Interactive project creation
jarvis init
# Or direct creation
jarvis create my-awesome-project
# Navigate and start
cd my-awesome-project
npm run devCreate Project
# Basic project
jarvis create my-project
# With specific template and database
jarvis create my-api --template api --database postgres
# Skip npm install
jarvis create my-project --no-installGenerate Components
# Generate model
jarvis generate model User --fields name:string,email:string,age:integer
# Generate controller
jarvis g controller UserController
# Generate route
jarvis g route usersDatabase Operations
# Setup database configuration
jarvis database:setup
jarvis db:setupInteractive Mode
# Step-by-step project creation
jarvis init🎨 Templates
1. Basic Template (basic)
- Express.js + Sequelize
- MVC architecture
- Session management
- Basic folder structure
2. API Template (api)
- REST API focused
- CORS & Helmet security
- Rate limiting
- Test structure
- API documentation
3. Full Template (full)
- Complete full-stack setup
- Authentication system
- File uploads
- Email system
- Job queues
- Database migrations
🗄️ Database Support
- MySQL (default)
- PostgreSQL
- SQLite
📊 Generated Project Structure
my-project/
├── src/
│ ├── app.js # Application entry
│ ├── config/ # Configuration
│ │ └── database.js # Database config
│ ├── controllers/ # Route controllers
│ ├── models/ # Sequelize models
│ ├── routes/ # Express routes
│ ├── middleware/ # Custom middleware
│ ├── helpers/ # Utility functions
│ ├── services/ # Business logic
│ └── views/ # Templates (if applicable)
├── public/ # Static files
├── tests/ # Test files
├── package.json
├── .env # Environment variables
├── .gitignore
└── README.md⚙️ Configuration
Environment Variables
PORT=3000
NODE_ENV=development
SESSION_SECRET=your-secret-key
# Database
DB_HOST=localhost
DB_NAME=jarvis_db
DB_USER=root
DB_PASS=
DB_PORT=3306🔧 Development
Prerequisites
- Node.js >= 14.0.0
- npm >= 6.0.0
Setup Development Environment
# Clone repository
git clone https://github.com/your-username/heyjarvis
cd heyjarvis
# Install dependencies
npm install
# Link for local development
npm link
# Test CLI
jarvis --help📚 Examples
Creating a Blog Project
jarvis create my-blog --template full --database mysql
cd my-blog
jarvis g model Post --fields title:string,content:text,published:boolean
jarvis g controller PostController
jarvis g route postsCreating an API Service
jarvis create my-api --template api --database postgres
cd my-api
jarvis g model User --fields name:string,email:string
jarvis db:setup
npm run dev🤝 Contributing
- Fork the repository
- Create feature branch (
git checkout -b feature/amazing-feature) - Commit changes (
git commit -m 'Add amazing feature') - Push to branch (
git push origin feature/amazing-feature) - Open Pull Request
📄 License
This project is licensed under the MIT License - see the LICENSE file for details.
🛠️ Roadmap
- [ ] Authentication generators
- [ ] Docker support
- [ ] GraphQL template
- [ ] TypeScript support
- [ ] Database seeding
- [ ] API documentation generator
- [ ] Deployment tools
- [ ] Plugin system
💡 Support
- 📧 Email: [email protected]
- 🐛 Issues: GitHub Issues
- 📖 Docs: Documentation
Made with ❤️ by J.A.R.V.I.S. Framework Team
