Skip to content

Commit a773e53

Browse files
fix: align install examples and runtime package refs with pyproject rename to devforge-tools by reviewer-A
1 parent 1612b2f commit a773e53

2 files changed

Lines changed: 122 additions & 122 deletions

File tree

README.md

Lines changed: 118 additions & 118 deletions
Original file line numberDiff line numberDiff line change
@@ -1,118 +1,118 @@
1-
# DevForge CLI
2-
3-
[![GitHub stars](https://img.shields.io/github/stars/Coding-Dev-Tools/devforge?style=social)](https://github.com/Coding-Dev-Tools/devforge/stargazers)
4-
5-
**The `devforge` command — one install, ten developer CLI tools.**
6-
7-
[![PyPI](https://img.shields.io/pypi/v/devforge)](https://pypi.org/project/devforge/)
8-
[![Python Versions](https://img.shields.io/pypi/pyversions/devforge)](https://pypi.org/project/devforge/)
9-
[![License](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE)
10-
11-
Ten production-ready CLI tools for API contracts, SQL generation, infrastructure diffs, config drift, API mocking, key management, env syncing, schema conversion, MCP servers, and dead code removal — in a single package. Install one meta-package and get immediate access to all tools via the unified `devforge` command.
12-
13-
---
14-
15-
[🏠 Landing Page](https://coding-dev-tools.github.io/devforge/) · [📝 Blog](https://coding-dev-tools.github.io/devforge/blog.html) · [🐛 Report a Bug](https://github.com/Coding-Dev-Tools/devforge/issues)
16-
17-
---
18-
19-
## Why the Suite?
20-
21-
Instead of installing ten separate tools and learning ten different CLIs, `pip install devforge[all]` gives you:
22-
23-
- **Single CLI** (`devforge`) to invoke any tool — no context switching
24-
- **Consistent flags, output formats, and help** across all tools
25-
- **Shared configuration** — one install, all tools
26-
27-
## Installation
28-
29-
```bash
30-
# Install everything (recommended)
31-
pip install devforge[all]
32-
33-
# Or install individual tools
34-
pip install devforge[guard] # API Contract Guardian
35-
pip install devforge[sql] # json2sql
36-
pip install devforge[deploy] # DeployDiff
37-
pip install devforge[drift] # ConfigDrift
38-
pip install devforge[ghost] # APIGhost
39-
pip install devforge[auth] # APIAuth
40-
pip install devforge[envault] # Envault
41-
pip install devforge[schema] # SchemaForge
42-
pip install devforge[mcp] # click-to-mcp
43-
pip install devforge[deadcode] # DeadCode
44-
```
45-
46-
## Usage
47-
48-
```bash
49-
devforge --version # Show version info
50-
devforge tools # List all available tools
51-
devforge tools guard # Show details about a specific tool
52-
devforge versions # Show installed tool versions
53-
```
54-
55-
Run any tool directly through `devforge`:
56-
57-
```bash
58-
# API Contract Guardian — detect OpenAPI breaking changes
59-
devforge guard check spec-v1.yaml spec-v2.yaml
60-
61-
# json2sql — convert JSON to SQL INSERT statements
62-
devforge sql convert data.json --dialect postgres
63-
64-
# DeployDiff — preview infrastructure changes with cost estimates
65-
devforge deploy preview plan.json
66-
67-
# ConfigDrift — catch config drift between environments
68-
devforge drift check dev.yaml prod.yaml
69-
70-
# APIGhost — spawn mock API server from OpenAPI spec
71-
devforge ghost serve openapi.yaml
72-
73-
# APIAuth — generate API keys and JWTs
74-
devforge auth generate --type api-key
75-
76-
# Envault — sync .env files across environments
77-
devforge envault diff .env.dev .env.prod
78-
79-
# SchemaForge — convert between ORM formats
80-
devforge schema convert schema.prisma --to drizzle
81-
82-
# click-to-mcp — wrap CLI as MCP server
83-
devforge mcp wrap my-cli --transport http
84-
85-
# DeadCode — find unused exports in React/Next.js
86-
devforge deadcode scan src/
87-
```
88-
89-
## Tools
90-
91-
| Command | Package | Description |
92-
|---------|---------|-------------|
93-
| `guard` | api-contract-guardian | Detect breaking API changes, generate migration guides, gate CI pipelines on contract violations |
94-
| `sql` | json2sql | Convert JSON datasets to SQL with smart type inference across PostgreSQL, MySQL, and SQLite |
95-
| `deploy` | deploydiff | Preview infra changes with cost estimates and automatic rollback commands for Terraform, CloudFormation, and Pulumi |
96-
| `drift` | configdrift | Compare configs across environments, flag missing keys, deprecated values, and compliance violations |
97-
| `ghost` | apighost | Mock API server from OpenAPI specs with VCR cassette recording and realistic fake data |
98-
| `auth` | apiauth | API key and JWT lifecycle management with AES-256-GCM encrypted local store |
99-
| `envault` | envault | Env variable syncing, diffing, and secret rotation with Vault/AWS SSM/Doppler/1Password support |
100-
| `schema` | schemaforge | Bidirectional ORM schema converter — 11 formats with zero-loss roundtripping |
101-
| `mcp` | click-to-mcp | Auto-wrap any Click/typer CLI as an MCP server — zero code changes |
102-
| `deadcode` | deadcode | Detect unused exports, dead routes, orphaned CSS in TypeScript/React/Next.js projects |
103-
104-
## Links
105-
106-
- [Landing Page](https://coding-dev-tools.github.io/devforge/)
107-
- [GitHub Organization](https://github.com/Coding-Dev-Tools)
108-
- [Report an Issue](https://github.com/Coding-Dev-Tools/devforge/issues)
109-
110-
## License
111-
112-
MIT — see [LICENSE](LICENSE) for details.
113-
114-
## Test
115-
116-
```bash
117-
pytest -q
118-
```
1+
# DevForge CLI
2+
3+
[![GitHub stars](https://img.shields.io/github/stars/Coding-Dev-Tools/devforge?style=social)](https://github.com/Coding-Dev-Tools/devforge/stargazers)
4+
5+
**The `devforge` command — one install, ten developer CLI tools.**
6+
7+
[![PyPI](https://img.shields.io/pypi/v/devforge)](https://pypi.org/project/devforge/)
8+
[![Python Versions](https://img.shields.io/pypi/pyversions/devforge)](https://pypi.org/project/devforge/)
9+
[![License](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE)
10+
11+
Ten production-ready CLI tools for API contracts, SQL generation, infrastructure diffs, config drift, API mocking, key management, env syncing, schema conversion, MCP servers, and dead code removal — in a single package. Install one meta-package and get immediate access to all tools via the unified `devforge` command.
12+
13+
---
14+
15+
[🏠 Landing Page](https://coding-dev-tools.github.io/devforge/) · [📝 Blog](https://coding-dev-tools.github.io/devforge/blog.html) · [🐛 Report a Bug](https://github.com/Coding-Dev-Tools/devforge/issues)
16+
17+
---
18+
19+
## Why the Suite?
20+
21+
Instead of installing ten separate tools and learning ten different CLIs, `pip install devforge-tools[all]` gives you:
22+
23+
- **Single CLI** (`devforge`) to invoke any tool — no context switching
24+
- **Consistent flags, output formats, and help** across all tools
25+
- **Shared configuration** — one install, all tools
26+
27+
## Installation
28+
29+
```bash
30+
# Install everything (recommended)
31+
pip install devforge-tools[all]
32+
33+
# Or install individual tools
34+
pip install devforge-tools[guard] # API Contract Guardian
35+
pip install devforge-tools[sql] # json2sql
36+
pip install devforge-tools[deploy] # DeployDiff
37+
pip install devforge-tools[drift] # ConfigDrift
38+
pip install devforge-tools[ghost] # APIGhost
39+
pip install devforge-tools[auth] # APIAuth
40+
pip install devforge-tools[envault] # Envault
41+
pip install devforge-tools[schema] # SchemaForge
42+
pip install devforge-tools[mcp] # click-to-mcp
43+
pip install devforge-tools[deadcode] # DeadCode
44+
```
45+
46+
## Usage
47+
48+
```bash
49+
devforge --version # Show version info
50+
devforge tools # List all available tools
51+
devforge tools guard # Show details about a specific tool
52+
devforge versions # Show installed tool versions
53+
```
54+
55+
Run any tool directly through `devforge`:
56+
57+
```bash
58+
# API Contract Guardian — detect OpenAPI breaking changes
59+
devforge guard check spec-v1.yaml spec-v2.yaml
60+
61+
# json2sql — convert JSON to SQL INSERT statements
62+
devforge sql convert data.json --dialect postgres
63+
64+
# DeployDiff — preview infrastructure changes with cost estimates
65+
devforge deploy preview plan.json
66+
67+
# ConfigDrift — catch config drift between environments
68+
devforge drift check dev.yaml prod.yaml
69+
70+
# APIGhost — spawn mock API server from OpenAPI spec
71+
devforge ghost serve openapi.yaml
72+
73+
# APIAuth — generate API keys and JWTs
74+
devforge auth generate --type api-key
75+
76+
# Envault — sync .env files across environments
77+
devforge envault diff .env.dev .env.prod
78+
79+
# SchemaForge — convert between ORM formats
80+
devforge schema convert schema.prisma --to drizzle
81+
82+
# click-to-mcp — wrap CLI as MCP server
83+
devforge mcp wrap my-cli --transport http
84+
85+
# DeadCode — find unused exports in React/Next.js
86+
devforge deadcode scan src/
87+
```
88+
89+
## Tools
90+
91+
| Command | Package | Description |
92+
|---------|---------|-------------|
93+
| `guard` | api-contract-guardian | Detect breaking API changes, generate migration guides, gate CI pipelines on contract violations |
94+
| `sql` | json2sql | Convert JSON datasets to SQL with smart type inference across PostgreSQL, MySQL, and SQLite |
95+
| `deploy` | deploydiff | Preview infra changes with cost estimates and automatic rollback commands for Terraform, CloudFormation, and Pulumi |
96+
| `drift` | configdrift | Compare configs across environments, flag missing keys, deprecated values, and compliance violations |
97+
| `ghost` | apighost | Mock API server from OpenAPI specs with VCR cassette recording and realistic fake data |
98+
| `auth` | apiauth | API key and JWT lifecycle management with AES-256-GCM encrypted local store |
99+
| `envault` | envault | Env variable syncing, diffing, and secret rotation with Vault/AWS SSM/Doppler/1Password support |
100+
| `schema` | schemaforge | Bidirectional ORM schema converter — 11 formats with zero-loss roundtripping |
101+
| `mcp` | click-to-mcp | Auto-wrap any Click/typer CLI as an MCP server — zero code changes |
102+
| `deadcode` | deadcode | Detect unused exports, dead routes, orphaned CSS in TypeScript/React/Next.js projects |
103+
104+
## Links
105+
106+
- [Landing Page](https://coding-dev-tools.github.io/devforge/)
107+
- [GitHub Organization](https://github.com/Coding-Dev-Tools)
108+
- [Report an Issue](https://github.com/Coding-Dev-Tools/devforge/issues)
109+
110+
## License
111+
112+
MIT — see [LICENSE](LICENSE) for details.
113+
114+
## Test
115+
116+
```bash
117+
pytest -q
118+
```

src/devforge/cli.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -75,8 +75,8 @@ def list_tools(
7575
)
7676

7777
console.print(table)
78-
console.print("\n[dim]Install individually:[/dim] [green]pip install devforge[guard][/green]")
79-
console.print("[dim]Install all:[/dim] [green]pip install devforge[all][/green]")
78+
console.print("\n[dim]Install individually:[/dim] [green]pip install devforge-tools[guard][/green]")
79+
console.print("[dim]Install all:[/dim] [green]pip install devforge-tools[all][/green]")
8080

8181

8282
@app.command()
@@ -95,7 +95,7 @@ def install(
9595
console.print(f"Available: {', '.join(TOOLS.keys())}, 'all'")
9696
raise typer.Exit(code=1)
9797

98-
pkg = f"devforge[{extras}]"
98+
pkg = f"devforge-tools[{extras}]"
9999
console.print(f"[yellow]Installing {pkg}...[/yellow]")
100100
try:
101101
result = subprocess.run([sys.executable, "-m", "pip", "install", pkg], capture_output=True, text=True)
@@ -161,7 +161,7 @@ def dispatch(
161161
except FileNotFoundError:
162162
console.print(
163163
f"[red]Tool '{tool_name}' not installed.[/red]\n"
164-
f"Install with: [green]pip install devforge[{tool_name}][/green]"
164+
f"Install with: [green]pip install devforge-tools[{tool_name}][/green]"
165165
)
166166
raise typer.Exit(code=1) from None
167167

0 commit comments

Comments
 (0)