Skip to content

opskraken/lazy-cli

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

27 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

LazyCLI Logo

โšก LazyCLI โ€“ Automate your dev flow like a lazy pro

Automate your development workflow like a lazy pro ๐Ÿ’ค

MIT License Version Open Source

A powerful, Bash-based command-line interface that simplifies your development and deployment workflow โ€” from initializing projects to pushing code to GitHub โ€” all in a single CLI tool.


๐Ÿš€ Installation

Install globally with one command (macOS/Linux):

# Standard installation
curl -s https://lazycli.xyz/install.sh | bash

# Custom version installation
curl -s https://lazycli.xyz/install.sh | bash -s version_name

๐Ÿ’ก Windows users: Requires WSL or Git Bash โ€” See installation guide โ†’


โœ… Current Features

๐Ÿ™ GitHub Automation

  • lazy github init - Initialize a new Git repository
  • lazy github clone <repo-url> - Clone repository with auto-setup
  • lazy github push "<message>" - Stage, commit, and push changes
  • lazy github pull <base-branch> "<title>" - Create simple pull request
  • lazy github pr <base-branch> "<message>" - Full PR workflow (pull, build, commit, push, create PR)

๐Ÿ“ฆ Node.js Development

  • lazy node-js init - Initialize Node.js + TypeScript project
  • lazy node-js structure - Create comprehensive Node.js project structure with templates
    • 6 Project Templates Available:
      1. Basic API - Express + TypeScript + Essential middleware
      2. Full-stack API - Express + TypeScript + Database integration
      3. Microservice - Express + TypeScript + Docker setup
      4. CLI Tool - TypeScript + Commander.js framework
      5. Library - TypeScript + Rollup bundling
      6. Custom - Manual structure selection
    • Complete Project Structure:
      src/
      โ”œโ”€โ”€ controllers/     # Route controllers
      โ”œโ”€โ”€ models/         # Data models
      โ”œโ”€โ”€ routes/         # Route definitions
      โ”œโ”€โ”€ middleware/     # Custom middleware
      โ”œโ”€โ”€ services/       # Business logic
      โ”œโ”€โ”€ utils/          # Utility functions
      โ”œโ”€โ”€ config/         # Configuration files
      โ””โ”€โ”€ index.ts        # Main server entry
      tests/
      โ”œโ”€โ”€ unit/           # Unit tests
      โ””โ”€โ”€ integration/    # Integration tests
      docs/               # Documentation
      scripts/            # Build/deployment scripts
      
    • Built-in Features:
      • โœ… Auto-detects package manager (bun > pnpm > yarn > npm)
      • โœ… Complete TypeScript setup with all necessary type definitions
      • โœ… Ready-to-run server with hot reloading (nodemon)
      • โœ… Express.js with essential middleware (cors, helmet, morgan)
      • โœ… Environment variables (.env) configuration
      • โœ… Error handling middleware
      • โœ… Health check endpoint
      • โœ… Git ignore and TypeScript config
      • โœ… NPM scripts: dev, build, start, test, lint
      • โœ… All dependencies installed automatically

๐Ÿ Django Development

  • curl -s https://lazycli.xyz/mahamudh472/lazy.sh | bash -s django_init <project_name> - Complete Django project initialization
    • Smart Virtual Environment Management:
      • โœ… Auto-detects existing virtual environments
      • โœ… Creates new venv only when needed (virtualenv or python3 -m venv)
      • โœ… Activates environment automatically
    • Complete Project Setup:
      • โœ… Django installation and project creation
      • โœ… Pre-configured project structure with essential directories
      • โœ… Static files directory (static/)
      • โœ… Templates directory (templates/)
      • โœ… Media files directory (media/)
    • Auto-configured Settings:
      • โœ… Static files configuration
      • โœ… Templates directory setup
      • โœ… Media files handling
      • โœ… Ready-to-run Django project

Contributed by: mahamudh472

โš›๏ธ Next.js Scaffolding

  • lazy next-js create - Create Next.js app with modern defaults
  • TypeScript, Tailwind CSS, and ESLint pre-configured
  • Optional packages: Zod, bcrypt, js-cookie, SWR, Lucide React, react-hot-toast
  • shadcn/ui integration support

โšก Vite.js Projects

  • lazy vite-js create - Multi-framework Vite project creation
  • Supports: Vanilla JS, React, Vue, Svelte
  • Optional packages: axios, clsx, zod, react-hot-toast, react-router-dom, lucide-react
  • Modern Tailwind CSS integration with DaisyUI support

๐Ÿ“ฑ React Native Development

  • lazy react-native create - Cross-platform mobile app creation
  • Supports: Expo (beginner-friendly) and React Native CLI (advanced)
  • Navigation: React Navigation with stack and tab navigation
  • State management: Redux Toolkit, Zustand options
  • UI libraries: NativeWind (Tailwind), React Native Elements
  • Essential packages: Async Storage, Vector Icons, React Hook Form, Axios

๐Ÿ”ง System Features

  • lazy --version - Show current version
  • lazy upgrade - Auto-upgrade to latest version
  • lazy --help - Comprehensive help system
  • Smart package manager detection
  • Cross-platform compatibility

๐Ÿ”ฎ Upcoming Features

These features are planned for future updates:

  • Python project bootstrapping
  • Docker containerization support
  • Deployment via PM2 and SSH
  • Flutter, Go, Rust, .NET support
  • Environment and secret management
  • Auto-updating CLI (lazycli update)

๐Ÿงช Usage

Run commands globally from anywhere in your terminal:

GitHub Workflow

# Initialize new repository
lazy github init

# Clone and setup project
lazy github clone https://github.com/iammhador/repo.git

# Quick commit and push
lazy github push "Add new feature"

# Create pull request with full workflow
lazy github pr main "Implement user authentication"

Project Creation

# Node.js with TypeScript
lazy node-js init

# Node.js with comprehensive structure (6 templates)
lazy node-js structure

# Next.js with modern stack
lazy next-js create

# Vite + React with Tailwind
lazy vite-js create

# React Native mobile app
lazy react-native create

๐Ÿ–ฅ๏ธ Platform Support

Platform Status Requirements
๐ŸŽ macOS โœ… Full Support Bash 4.0+
๐Ÿง Linux โœ… Full Support Bash 4.0+
๐ŸชŸ Windows โš ๏ธ Partial Support WSL or Git Bash

๐Ÿค Contributing

We welcome contributions! LazyCLI is an open-source project built for the developer community.

Quick Start

git clone https://github.com/iammhador//lazycli
cd lazycli

Contribution Guidelines

  • ๐Ÿ“ Follow existing code style and patterns
  • ๐Ÿงช Test your changes thoroughly
  • ๐Ÿ“š Update documentation for new features
  • ๐Ÿ” Ensure cross-platform compatibility

For detailed guidelines, visit lazycli.xyz/contribute


๐Ÿ”ฎ Roadmap

Coming Soon

  • ๐Ÿ Python project scaffolding
  • ๐Ÿณ Docker containerization support
  • ๐Ÿš€ Deployment automation (PM2, SSH)
  • ๐Ÿ“ฑ Flutter mobile development support
  • ๐Ÿฆ€ Rust & Go project templates
  • ๐Ÿ” Environment & secret management
  • ๐ŸŒ Multi-language support

Future Versions

  • Plugin system for custom commands
  • GUI companion app
  • Cloud integration (AWS, Vercel, Netlify)
  • Team collaboration features

๐Ÿ“„ License

This project is licensed under the MIT License.


๐Ÿ™Œ Credits

Built and maintained by iammhador. Inspired by the simplicity of automation.

About

Bash-based CLI tool to automate development workflows

Topics

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •