Dev-Craft is a powerful CLI tool designed to streamline the setup and management of development environments for various types of projects. It ensures that necessary software is installed, creates GitHub repositories, sets up project directories, and generates initial README files using AI.
- Automatically installs necessary software (VSCode, Git, Python)
- Creates GitHub repositories
- Sets up project directories with common subfolders
- Generates comprehensive README files using AI
- Installs base packages for various project templates
- Opens project in VSCode
Prerequisites: Python 3.6+
-
Clone the repository:
git clone https://github.com/yourusername/dev-craft.git cd dev-craft -
Run the install script:
chmod +x install.sh ./install.sh
-
Install dependencies manually (if not using the install script):
pip install .
After installation, you can use the dev-craft command to initialize your projects. The CLI provides various commands to automate the setup process.
dev-craft create_repo my-new-project "A description of my new project" "web application" --private --env-file /path/to/.envThis command will:
- Create a new private GitHub repository named
my-new-project - Set up a project folder with necessary subfolders
- Generate a comprehensive README file
- Initialize a Git repository and push the initial commit
- Create a Python virtual environment
- Install base packages for a web application
- Open the project in VSCode
After running dev-craft, your project directory will look like this:
my-new-project/
├── README.md
├── env/
├── src/
├── tests/
└── docs/
Follow the steps below to run Dev-Craft locally
- Clone the project
git clone https://github.com/pythonicforge/Dev-Craft.git- Go to the project directory
cd Dev-Craft- Install dependencies
pip install -r reuqirements.txt- Run the App
python dev_craft/cli.py --helpEnsure you have a .env file in the root of your project or specify its path using the --env-file option. The .env file should contain the following variables:
GITHUB_TOKEN = <your_github_personal_access_token>
EMAIL_ADDRESS = <your_email_address>
PASSWORD = <your_password>
Creates a new GitHub repository and sets up the project directory.
Arguments:
repo_name: Name of the repositorydescription: Description of the repositorytemplate: Project template type (choose from: "web application", "data science", "machine learning")
Options:
--private: Create a private repository--env-file: Path to the.envfile (default:.env)
Client: Python-argparse, Shell scripting
Server: Python
We welcome contributions to Dev-Craft! Please follow these steps to contribute:
- Fork the repository
- Create a new branch (
git checkout -b feature-branch) - Make your changes
- Commit your changes (
git commit -m 'Add some feature') - Push to the branch (
git push origin feature-branch) - Open a pull request
This project is licensed under the MIT License. See the LICENSE file for details.
