bears_cli v1.0.5
Bear CLI
Bear CLI is a command-line interface tool designed to help students quickly set up basic project structures for learning different technologies—such as HTML,CSS and JavaScript. It creates a clean, organized folder structure with starter files to help you get started quickly.
Features
- Project Setup: Creates a basic file structure for a web project.
- Frontend: Sets up an
index.html
,styles.css
, andscript.js
file. - Backend: Sets up a Flask starter file (
app.py
).
- Frontend: Sets up an
- CLI Usage: Uses Yargs to parse command-line arguments.
- Stylish Output: Uses Chalk for colored terminal output, Boxen for attractive box messages, and Figlet for ASCII art banners.
Installation
Clone the Repository(Optional)
git clone https://github.com/lennythecreator/bearcli.git cd bearcli
Install Dependencies
npm install
or
npm install -g bears_cli
to install the package globally.
Link the CLI Globally (Optional)
This makes the
bearcli
command available from anywhere on your system.npm link
Usage
Once installed or linked globally, run Bear CLI from your terminal.
Command Syntax
bears_cli -p <project> -l <level>
-p, --project
: Specifies the type of project to set up. Currently, the supported type isweb
anddata
.-l, --level
: Specifies the level of experience, e.g.,beginner
oradvanced
the supported type isbeginner
.
Example
To set up a basic web project for beginners:
bears_cli -p web -l beginner
When executed, the CLI will:
- Display an ASCII art banner ("Bear CLI").
- Show a usage message inside a styled box.
- Create a folder named
web_project
in your current directory with the following structure:
web_project/
├── backend/
│ └── app.py # Flask starter code
└── frontend/
├── index.html # HTML starter file
├── styles.css # CSS file
└── script.js # JavaScript file
Customization
You can easily customize the generated content by editing the file creation logic in the bin/index.js
file. Update the HTML, CSS, JavaScript, and Python starter content to match your learning or project requirements.
Troubleshooting
Figlet or Boxen Not Displaying Correctly:
Ensure your terminal supports the required Unicode characters and colors.Permission Issues on Windows:
If you encounter permission issues, run your terminal as an Administrator or adjust your system's PATH variable after runningnpm link
.Project Creation Errors:
Make sure you’re providing the correct arguments. For example, use-p web -l beginner
to set up a basic web project.
Contributing
Contributions are welcome! Feel free to fork the repository and submit pull requests with your improvements. For any issues or suggestions, please open an issue on GitHub.
License
This project is licensed under the ISC License. See the LICENSE file for details.
Contact
For questions or support, please reach out via GitHub Issues or email chuwa1@morgan.edu.
Happy Coding! 🚀