ForgeCLI is a Windows command-line tool designed to streamline the creation of new projects by leveraging reusable templates. It automates setup processes by executing real ecosystem commands such as npm, git, and uv, eliminating repetitive manual tasks.
Key Features:
Executes real tools like git, python, and npm for project initialization.
Supports both global and local templates for flexible customization.
Ensures safe and predictable execution of template-defined commands.
Delivered as a single Go binary with no external dependencies.
Windows-friendly installation via winget.
Audience & Benefit:
Ideal for developers and teams on Windows who frequently start projects with similar structures. ForgeCLI saves time, reduces errors, and ensures consistency by automating setup steps typically performed manually.
README
Forge β Windows Project Bootstrapper CLI
Forge is a Windows command-line tool that helps you start new projects using reusable templates.
It runs real tools like git, python, and uv for you, so you donβt have to repeat the same setup steps every time.
Open PowerShell in the folder where forge.exe was downloaded
Shift + Right Click β Open PowerShell here
Or open PowerShell and cd into the folder
Run:
.\forge.exe install
For silent/automated installation, use:
.\forge.exe install --yes
Close and reopen PowerShell
Verify:
forge --version
Basic Usage
### Create a project
```powershell
forge init [project-dir]
```
Examples:
```powershell
forge init python # initialize in current directory
forge init python app # creates the template inside app directory
```
### Initialize in current directory
```powershell
forge init git
```
Initializes the project in the **current working directory** which should be empty.
---
### Other Commands
```powershell
forge list # show available templates
forge pull python # download a template
forge new my-temp # create a new template
forge test my-temp # test a template safely
```
---
## Where Templates Are Stored
Forge looks for templates in this order:
1. `./templates` (project-local)
2. `$FORGE_TEMPLATES` (if set)
3. `%USERPROFILE%\.forge\templates` (global)
Global templates are stored in:
```
%USERPROFILE%\.forge\templates
```
---
## How Forge Works
* Forge runs commands exactly as written in the template
* It does not modify or replace your tools
* Interactive tools work normally during `forge init`
* Templates define **commands and files**, not generators
* Projects are never created in global directories
---
## Uninstall
```powershell
forge uninstall
```
This removes:
* Forge executable
* Global templates
* Forge configuration
If removal fails, you may need to delete `forge.exe` manually from your bin folder.
---
## Documentation
* `doc\INSTALL.md` β Installation details
* `doc\TEMPLATE-GUIDE.md` β Writing templates
* `doc\ARCHITECTURE.md` β Internal design
* `CONTRIBUTING.md` β Contribution guide
---
## License
MIT License
---
**Forge helps you start projects faster, with fewer mistakes and less repetition.**