UNPKG

archgenie

Version:

A powerful Node.js CLI tool to quickly scaffold project folder structures based on popular software architecture patterns.

116 lines (83 loc) 2.12 kB
# ArchGenie CLI A powerful Node.js CLI tool to quickly scaffold project folder structures based on popular software architecture patterns. --- ## Features - Supports multiple architecture patterns like MVC, MVP, MVVM, PAC, HMVC, Layered, Microservices, Serverless, Clean Architecture, Hexagonal, Onion, REST, GraphQL, gRPC, Event-Driven, CQRS, Pub/Sub, Client-Server, P2P, and more. - Easily switch between architectures with a simple command. - Automatically initializes git repo, npm project, installs Express and Nodemon. - Option to backup or delete existing project files before scaffolding a new structure. - Helps enforce clean project organization for better maintainability. --- ## Installation ```bash npm install -g archgenie ``` --- ## Usage ```bash archgenie@create <architecture-flag> ``` ## Help ```bash archgenie@create --help ``` ### Available Flags ``` --mvc --mvp --mvvm --pac --hmvc --layered --monolithic --microservices --soa --serverless --clean --hexagonal --onion --rest --graphql --grpc --event_driven --cqrs --pub_sub --client_server --p2p --master_slave --leader_follower --load_balanced_cluster --blackboard --pipes_filters --microkernel --service_mesh --reactive --help --version ``` --- ## Examples ```bash archgen-cli --mvc ``` Creates folders for the MVC pattern including models, views, controllers, and related folders. --- ## How it works - Checks if a previous architecture was scaffolded. - Prompts you to delete existing files or back them up before creating the new folder structure. - Initializes git and npm, installs dependencies (`express` and `nodemon`). - Creates folders and adds basic `.gitignore` and `server.js` files. --- ## Version `1.1.3` --- ## Author Praveen KR Email: [coder.praveenkr@gmail.com](mailto:coder.praveenkr@gmail.com) LinkedIn: [https://www.linkedin.com/in/mepraveenkr/](https://www.linkedin.com/in/mepraveenkr/) GitHub: [https://github.com/frontenddeveloperpraveen](https://github.com/frontenddeveloperpraveen) --- ## License MIT License --- Feel free to contribute, raise issues, or request new architectures!