diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 4688280..d9e620e 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -35,7 +35,7 @@ jobs: steps: - uses: actions/checkout@v4 - name: Validate HTML - uses: Cyb3r-Jak3/html5validator-action@v2 + uses: Cyb3r-Jak3/html5validator-action@v7.2.0 with: root: . ignore: "ja,verbose" @@ -63,4 +63,3 @@ jobs: - name: Deploy to GitHub Pages id: deployment uses: actions/deploy-pages@v4 - diff --git a/_audit_reqs.txt b/_audit_reqs.txt new file mode 100644 index 0000000..9fb4f0e --- /dev/null +++ b/_audit_reqs.txt @@ -0,0 +1,2 @@ +# This file was autogenerated by uv via the following command: +# uv pip compile C:/Users/jomie/Documents/Github\devforge-fix\pyproject.toml -o C:/Users/jomie/Documents/Github\devforge-fix\_audit_reqs.txt diff --git a/alternatives.html b/alternatives.html index 9f63edb..da3eedf 100644 --- a/alternatives.html +++ b/alternatives.html @@ -620,7 +620,7 @@
Code Quality CI
Find and remove dead code. Scans JavaScript/TypeScript/React projects for unused exports, components, and modules. Integrates into CI pipelines so dead code never reaches production.
-pip install deadcode-cli
+pip install git+https://github.com/Coding-Dev-Tools/deadcode.git
deadcode scan ./src
@@ -98,7 +98,7 @@ 2. DeadCode
3. JSON2SQL
Data
Query JSON files with SQL. No database needed. Pipe a JSON file into json2sql and run SQL SELECT/WHERE/GROUP BY against it. Perfect for log analysis, API response exploration, and data pipeline debugging.
-pip install json2sql-cli
+pip install git+https://github.com/Coding-Dev-Tools/json2sql.git
cat data.json | json2sql "SELECT count(*) GROUP BY status"
@@ -108,7 +108,7 @@ 3. JSON2SQL
4. Envault
Security DevOps
Secure environment variable manager. Encrypt, share, and rotate secrets across environments. Works with .env files, CI/CD systems, and container orchestration. Built-in audit logging.
-pip install envault-secrets
+pip install git+https://github.com/Coding-Dev-Tools/envault.git
envault init && envault set API_KEY=sk-xxx
@@ -118,7 +118,7 @@ 4. Envault
5. SchemaForge
Data
Database schema migrations, simplified. Define your schema in Python, TypeScript, or YAML. SchemaForge generates migrations for PostgreSQL, MySQL, SQLite, and more. Supports SQLAlchemy, Drizzle ORM, and raw SQL output.
-pip install schemaforge-cli
+pip install git+https://github.com/Coding-Dev-Tools/schemaforge.git
schemaforge init && schemaforge migrate
@@ -128,7 +128,7 @@ 5. SchemaForge
6. APIGhost
API MCP
Mock API server from OpenAPI specs. Generate a fully functional mock server from any OpenAPI 3.x specification. Supports realistic responses, validation, and delay simulation. Handy for frontend development and testing.
-pip install apighost
+pip install git+https://github.com/Coding-Dev-Tools/apighost.git
apighost serve openapi.yaml --port 4000
@@ -138,7 +138,7 @@ 6. APIGhost
7. ConfigDrift
DevOps Security
Catch configuration drift before it breaks things. Monitor config files, environment variables, and Kubernetes ConfigMaps for unexpected changes. Set baselines and get alerts when drift is detected.
-pip install configdrift
+pip install git+https://github.com/Coding-Dev-Tools/configdrift.git
configdrift baseline && configdrift check
@@ -148,7 +148,7 @@ 7. ConfigDrift
8. DeployDiff
DevOps
Preview infrastructure changes before deploying. Diff your Kubernetes manifests, Terraform plans, and Docker Compose files against the current state. Catch breaking changes before they hit production.
-pip install deploydiff
+pip install git+https://github.com/Coding-Dev-Tools/deploydiff.git
deploydiff diff --before deploy.yaml --after deploy-v2.yaml
@@ -158,7 +158,7 @@ 8. DeployDiff
9. DataMorph
Data
Batch data transformation in your terminal. Convert between JSON, CSV, YAML, XML, and Parquet. Filter, map, join, and aggregate datasets without writing scripts. Pipes compose naturally with jq, sed, and awk.
-pip install datamorph-cli
+pip install git+https://github.com/Coding-Dev-Tools/datamorph.git
datamorph convert input.csv --to json | jq '.[0]'
@@ -168,7 +168,7 @@ 9. DataMorph
10. API Contract Guardian
API CI
Breaking change detection for OpenAPI specs. Drop this into your CI pipeline and it catches every breaking API change — removed endpoints, changed response schemas, modified request bodies. Generates human-readable diffs.
-pip install api-contract-guardian
+pip install git+https://github.com/Coding-Dev-Tools/api-contract-guardian.git
api-contract-guardian check --before spec-v1.yaml --after spec-v2.yaml
diff --git a/blog/ai-built-cli-tools-zero-humans.html b/blog/ai-built-cli-tools-zero-humans.html
index 17f5c14..67dfa07 100644
--- a/blog/ai-built-cli-tools-zero-humans.html
+++ b/blog/ai-built-cli-tools-zero-humans.html
@@ -83,43 +83,43 @@ The Tool Suite
🔗 API Contract Guardian
- Catch breaking OpenAPI schema changes in CI — diff, detect, and block breaking changes before they reach production. pip install api-contract-guardian
+ Catch breaking OpenAPI schema changes in CI — diff, detect, and block breaking changes before they reach production. pip install git+https://github.com/Coding-Dev-Tools/api-contract-guardian.git
↻ json2sql
- Convert JSON files, API responses, and stdin streams to clean SQL INSERT statements. pip install json2sql
+ Convert JSON files, API responses, and stdin streams to clean SQL INSERT statements. pip install git+https://github.com/Coding-Dev-Tools/json2sql.git
☁️ DeployDiff
- Preview infrastructure cost and blast radius before you deploy. Terraform, CloudFormation, Pulumi. pip install deploydiff
+ Preview infrastructure cost and blast radius before you deploy. Terraform, CloudFormation, Pulumi. pip install git+https://github.com/Coding-Dev-Tools/deploydiff.git
⌘ ConfigDrift
- Detect config drift between dev, staging, and prod environments. Diff YAML, JSON, TOML. pip install configdrift
+ Detect config drift between dev, staging, and prod environments. Diff YAML, JSON, TOML. pip install git+https://github.com/Coding-Dev-Tools/configdrift.git
🔑 APIAuth
- Encrypted keystore for API key lifecycle management — generate, store, verify, rotate, and revoke. pip install apiauth
+ Encrypted keystore for API key lifecycle management — generate, store, verify, rotate, and revoke. pip install git+https://github.com/Coding-Dev-Tools/apiauth.git
👻 APIGhost
- Turn any OpenAPI spec into a running mock server with realistic fake data and VCR recording. pip install apighost
+ Turn any OpenAPI spec into a running mock server with realistic fake data and VCR recording. pip install git+https://github.com/Coding-Dev-Tools/apighost.git
🛡️ Envault
- Sync, diff, and rotate .env files across environments. Integrates with AWS SSM, Vault, Doppler. pip install envault
+ Sync, diff, and rotate .env files across environments. Integrates with AWS SSM, Vault, Doppler. pip install git+https://github.com/Coding-Dev-Tools/envault.git
🧩 SchemaForge
- Bidirectional ORM converter — 11 formats (SQL DDL, Prisma, Drizzle, TypeORM, Django, SQLAlchemy, GraphQL SDL, JSON Schema, Protobuf, Avro, OpenAPI). pip install schemaforge
+ Bidirectional ORM converter — 11 formats (SQL DDL, Prisma, Drizzle, TypeORM, Django, SQLAlchemy, GraphQL SDL, JSON Schema, Protobuf, Avro, OpenAPI). pip install git+https://github.com/Coding-Dev-Tools/schemaforge.git
🤖 click-to-mcp
- Auto-wrap any Click/Typer CLI as an MCP server. Zero code changes. One command. pip install click-to-mcp
+ Auto-wrap any Click/Typer CLI as an MCP server. Zero code changes. One command. pip install git+https://github.com/Coding-Dev-Tools/click-to-mcp.git
🧹 DeadCode
- Detect unused exports, dead routes, orphaned CSS in React/Next.js projects. pip install deadcode
+ Detect unused exports, dead routes, orphaned CSS in React/Next.js projects. pip install git+https://github.com/Coding-Dev-Tools/deadcode.git
How the Agents Work
diff --git a/blog/api-key-management-from-terminal.html b/blog/api-key-management-from-terminal.html
index a0841c7..d240ec9 100644
--- a/blog/api-key-management-from-terminal.html
+++ b/blog/api-key-management-from-terminal.html
@@ -105,7 +105,7 @@ Manage API Keys and JWTs from the Terminal
1. Install APIAuth
- $ pip install apiauth
+ $ pip install git+https://github.com/Coding-Dev-Tools/apiauth.git
Or from GitHub:
diff --git a/blog/apiauth-audit-api-credentials-catch-expired-revoked-keys.html b/blog/apiauth-audit-api-credentials-catch-expired-revoked-keys.html
index ac2e637..4224044 100644
--- a/blog/apiauth-audit-api-credentials-catch-expired-revoked-keys.html
+++ b/blog/apiauth-audit-api-credentials-catch-expired-revoked-keys.html
@@ -95,7 +95,7 @@ Quick Start: Your First Credential Audit
Step 1: Install APIAuth
-pip install apiauth
+pip install git+https://github.com/Coding-Dev-Tools/apiauth.git
Step 2: Generate Your First Key
@@ -288,7 +288,7 @@ Pattern 1: Pre-Deploy Audit Gate
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- - run: pip install apiauth
+ - run: pip install git+https://github.com/Coding-Dev-Tools/apiauth.git
- name: Audit credentials
run: |
@@ -324,7 +324,7 @@ Pattern 2: Scheduled Weekly Audit
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- - run: pip install apiauth
+ - run: pip install git+https://github.com/Coding-Dev-Tools/apiauth.git
- name: Audit and report
run: |
@@ -556,7 +556,7 @@ Real-World Scenario: Multi-Service Startup
Install APIAuth
-pip install apiauth
+pip install git+https://github.com/Coding-Dev-Tools/apiauth.git
# Generate your first key
apiauth generate api-key --name "My First Key" --service "api-gateway" --expiry-days 90
diff --git a/blog/apiauth-verify-api-keys-runtime-import-revocation.html b/blog/apiauth-verify-api-keys-runtime-import-revocation.html
index 9fa9c6c..86bc775 100644
--- a/blog/apiauth-verify-api-keys-runtime-import-revocation.html
+++ b/blog/apiauth-verify-api-keys-runtime-import-revocation.html
@@ -103,7 +103,7 @@ Quick Start: Verify Your First Key
Step 1: Generate a Key
# Install APIAuth
-pip install apiauth
+pip install git+https://github.com/Coding-Dev-Tools/apiauth.git
# Generate an API key
apiauth generate api-key \
@@ -297,7 +297,7 @@ Pattern 3: CI/CD Gate — Block Deploys with Expired Keys
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- - run: pip install apiauth
+ - run: pip install git+https://github.com/Coding-Dev-Tools/apiauth.git
# Audit the keystore — exit 1 if any expired keys
- name: Check for expired/revoked keys
@@ -545,7 +545,7 @@ Real-World Scenario: Multi-Service API Gateway
Install APIAuth
# pip
-pip install apiauth
+pip install git+https://github.com/Coding-Dev-Tools/apiauth.git
# Generate your first key
apiauth generate api-key --name "My First Key" --service "test"
diff --git a/blog/apiauth-vs-dotenv-vs-aws-secrets-manager-vs-vault.html b/blog/apiauth-vs-dotenv-vs-aws-secrets-manager-vs-vault.html
index c11d723..caf101d 100644
--- a/blog/apiauth-vs-dotenv-vs-aws-secrets-manager-vs-vault.html
+++ b/blog/apiauth-vs-dotenv-vs-aws-secrets-manager-vs-vault.html
@@ -374,7 +374,7 @@ Where APIAuth is limited
# Full API key lifecycle in 6 commands
-pip install apiauth
+pip install git+https://github.com/Coding-Dev-Tools/apiauth.git
# Generate
apiauth generate api-key -n "Production API" -s api-gateway --expiry-days 90
@@ -722,7 +722,7 @@ Cost Comparison for a 5-Person Team
Install APIAuth
# pip
-pip install apiauth
+pip install git+https://github.com/Coding-Dev-Tools/apiauth.git
# Generate your first key
apiauth generate api-key --name "My First Key" --service "test"
diff --git a/blog/apiauth-zero-downtime-key-rotation-cicd.html b/blog/apiauth-zero-downtime-key-rotation-cicd.html
index cf89b3f..585ecad 100644
--- a/blog/apiauth-zero-downtime-key-rotation-cicd.html
+++ b/blog/apiauth-zero-downtime-key-rotation-cicd.html
@@ -209,7 +209,7 @@ Automated Rotation in GitHub Actions
- uses: actions/checkout@v4
- name: Install APIAuth
- run: pip install apiauth
+ run: pip install git+https://github.com/Coding-Dev-Tools/apiauth.git
- name: Rotate the key
id: rotate
@@ -381,7 +381,7 @@ Scheduled Audit in CI/CD
runs-on: ubuntu-latest
steps:
- name: Install APIAuth
- run: pip install apiauth
+ run: pip install git+https://github.com/Coding-Dev-Tools/apiauth.git
- name: Run audit
env:
@@ -462,7 +462,7 @@ When to Rotate vs. When to Revoke
Install and Start Rotating
# pip
-pip install apiauth
+pip install git+https://github.com/Coding-Dev-Tools/apiauth.git
# Homebrew (macOS / Linux)
brew tap Coding-Dev-Tools/tap
diff --git a/blog/apicontractguardian-ci-cd-gating-breaking-api-changes.html b/blog/apicontractguardian-ci-cd-gating-breaking-api-changes.html
index 8f46e7b..5fe4e13 100644
--- a/blog/apicontractguardian-ci-cd-gating-breaking-api-changes.html
+++ b/blog/apicontractguardian-ci-cd-gating-breaking-api-changes.html
@@ -95,7 +95,7 @@ Quick Start: Detect Breaking Changes in One Command
Step 1: Install API Contract Guardian
-pip install api-contract-guardian
+pip install git+https://github.com/Coding-Dev-Tools/api-contract-guardian.git
Step 2: Compare Two Spec Files
@@ -195,7 +195,7 @@ CI/CD Integration: GitHub Actions
fetch-depth: 0 # Need full history for branch diffing
- name: Install API Contract Guardian
- run: pip install api-contract-guardian
+ run: pip install git+https://github.com/Coding-Dev-Tools/api-contract-guardian.git
- name: Check for breaking changes
run: |
@@ -242,7 +242,7 @@ CI/CD Integration: GitLab CI
- changes:
- openapi.yaml
script:
- - pip install api-contract-guardian
+ - pip install git+https://github.com/Coding-Dev-Tools/api-contract-guardian.git
- |
# Get the target branch spec
git checkout origin/$CI_MERGE_REQUEST_TARGET_BRANCH_NAME -- openapi.yaml
@@ -417,7 +417,7 @@ Combining with Other DevForge CI Gates
Install API Contract Guardian
-pip install api-contract-guardian
+pip install git+https://github.com/Coding-Dev-Tools/api-contract-guardian.git
# Check your first spec pair
api-contract-guardian check openapi-old.yaml openapi-new.yaml
diff --git a/blog/apicontractguardian-generate-api-migration-guides.html b/blog/apicontractguardian-generate-api-migration-guides.html
index b0b46f9..e15f66d 100644
--- a/blog/apicontractguardian-generate-api-migration-guides.html
+++ b/blog/apicontractguardian-generate-api-migration-guides.html
@@ -106,7 +106,7 @@ Quick Start: Generate Your First Migration Guide
Step 1: Install
# pip
-pip install api-contract-guardian
+pip install git+https://github.com/Coding-Dev-Tools/api-contract-guardian.git
# Homebrew (macOS / Linux)
brew tap Coding-Dev-Tools/tap
@@ -338,7 +338,7 @@ Pattern 1: Generate Migration Guide on PR
fetch-depth: 0 # Need full history for diff
- name: Install API Contract Guardian
- run: pip install api-contract-guardian
+ run: pip install git+https://github.com/Coding-Dev-Tools/api-contract-guardian.git
- name: Get base spec
run: |
@@ -378,7 +378,7 @@ Pattern 2: Gate PRs on Breaking Changes + Generate Guide
with: { fetch-depth: 0 }
- name: Install
- run: pip install api-contract-guardian
+ run: pip install git+https://github.com/Coding-Dev-Tools/api-contract-guardian.git
- name: Get base spec
run: |
@@ -424,7 +424,7 @@ Pattern 3: Auto-Commit Migration Guide on Version Bump
- uses: actions/checkout@v4
- name: Install
- run: pip install api-contract-guardian
+ run: pip install git+https://github.com/Coding-Dev-Tools/api-contract-guardian.git
- name: Get previous version spec
run: |
@@ -543,7 +543,7 @@ YAML for Kubernetes-Native Workflows
Install API Contract Guardian
# pip
-pip install api-contract-guardian
+pip install git+https://github.com/Coding-Dev-Tools/api-contract-guardian.git
# Homebrew (macOS / Linux)
brew tap Coding-Dev-Tools/tap
diff --git a/blog/apicontractguardian-git-branch-openapi-diff-pr-review.html b/blog/apicontractguardian-git-branch-openapi-diff-pr-review.html
index 584c60b..3912966 100644
--- a/blog/apicontractguardian-git-branch-openapi-diff-pr-review.html
+++ b/blog/apicontractguardian-git-branch-openapi-diff-pr-review.html
@@ -144,7 +144,7 @@ GitHub Actions
fetch-depth: 0 # Full history for branch diffing
- name: Install API Contract Guardian
- run: pip install api-contract-guardian
+ run: pip install git+https://github.com/Coding-Dev-Tools/api-contract-guardian.git
- name: Extract base spec from target branch
run: |
@@ -195,7 +195,7 @@ GitLab CI
- openapi.yaml
- specs/**/*
script:
- - pip install api-contract-guardian
+ - pip install git+https://github.com/Coding-Dev-Tools/api-contract-guardian.git
- |
git fetch origin $CI_MERGE_REQUEST_TARGET_BRANCH_NAME
git show origin/$CI_MERGE_REQUEST_TARGET_BRANCH_NAME:openapi.yaml > /tmp/spec-base.yaml
@@ -360,7 +360,7 @@ Getting Started
Guard your API contracts on every PR
Stop relying on reviewers to catch breaking API changes manually. Automate the check, gate the merge, generate the migration guide.
- pip install api-contract-guardian
+ pip install git+https://github.com/Coding-Dev-Tools/api-contract-guardian.git
api-contract-guardian check main:openapi.yaml HEAD:openapi.yaml
View on GitHub →
diff --git a/blog/apicontractguardian-vs-oasdiff-vs-optic-vs-openapi-diff.html b/blog/apicontractguardian-vs-oasdiff-vs-optic-vs-openapi-diff.html
index 3449a54..983b1ed 100644
--- a/blog/apicontractguardian-vs-oasdiff-vs-optic-vs-openapi-diff.html
+++ b/blog/apicontractguardian-vs-oasdiff-vs-optic-vs-openapi-diff.html
@@ -199,7 +199,7 @@ API Contract Guardian — Breaking Change Detection, Migration Guides, and C
Core workflow
# Install
-pip install api-contract-guardian
+pip install git+https://github.com/Coding-Dev-Tools/api-contract-guardian.git
# Compare two spec files
api-contract-guardian check spec-v1.yaml spec-v2.yaml
@@ -521,7 +521,7 @@ API Contract Guardian
# GitHub Actions
- name: Check API contract
run: |
- pip install api-contract-guardian
+ pip install git+https://github.com/Coding-Dev-Tools/api-contract-guardian.git
api-contract-guardian check \
--base origin/main \
--head HEAD \
@@ -531,7 +531,7 @@ API Contract Guardian
# GitLab CI
check-api-contract:
script:
- - pip install api-contract-guardian
+ - pip install git+https://github.com/Coding-Dev-Tools/api-contract-guardian.git
- api-contract-guardian check --base $CI_MERGE_REQUEST_TARGET_BRANCH_NAME --head HEAD
oasdiff
@@ -668,7 +668,7 @@ Cost Comparison
Install API Contract Guardian
# pip
-pip install api-contract-guardian
+pip install git+https://github.com/Coding-Dev-Tools/api-contract-guardian.git
# Check your API for breaking changes
api-contract-guardian check spec-v1.yaml spec-v2.yaml
diff --git a/blog/apighost-openapi-mock-server-60-seconds.html b/blog/apighost-openapi-mock-server-60-seconds.html
index eaae370..5525f92 100644
--- a/blog/apighost-openapi-mock-server-60-seconds.html
+++ b/blog/apighost-openapi-mock-server-60-seconds.html
@@ -84,7 +84,7 @@ The 60-Second Version
Have an OpenAPI spec? You have a mock server.
# Install
-pip install apighost-cli
+pip install git+https://github.com/Coding-Dev-Tools/apighost.git
# Run
apighost serve petstore.yaml
@@ -334,7 +334,7 @@ GitHub Actions
- uses: actions/checkout@v4
- name: Install APIGhost
- run: pip install apighost-cli
+ run: pip install git+https://github.com/Coding-Dev-Tools/apighost.git
- name: Start mock server
run: |
@@ -445,7 +445,7 @@ APIGhost vs. Other Mock Tools
Install and Start Mocking
# pip
-pip install apighost-cli
+pip install git+https://github.com/Coding-Dev-Tools/apighost.git
# Homebrew (macOS / Linux)
brew tap Coding-Dev-Tools/tap
diff --git a/blog/apighost-vs-prism-vs-wiremock-vs-mockoon.html b/blog/apighost-vs-prism-vs-wiremock-vs-mockoon.html
index 56f7d21..67031f4 100644
--- a/blog/apighost-vs-prism-vs-wiremock-vs-mockoon.html
+++ b/blog/apighost-vs-prism-vs-wiremock-vs-mockoon.html
@@ -190,7 +190,7 @@ APIGhost — OpenAPI Spec → Mock Server with VCR
How it works
# Install
-pip install apighost
+pip install git+https://github.com/Coding-Dev-Tools/apighost.git
# Start mock from spec — zero config
apighost serve petstore.yaml
@@ -561,7 +561,7 @@ APIGhost
# GitHub Actions
- name: Start mock API
run: |
- pip install apighost
+ pip install git+https://github.com/Coding-Dev-Tools/apighost.git
apighost serve api-spec.yaml -p 8080 &
sleep 2
@@ -707,7 +707,7 @@ Cost Comparison
Install APIGhost
# pip
-pip install apighost
+pip install git+https://github.com/Coding-Dev-Tools/apighost.git
# Start a mock server from your OpenAPI spec
apighost serve your-api-spec.yaml
diff --git a/blog/autonomous-ai-experiment.html b/blog/autonomous-ai-experiment.html
index df1cd6b..2249f5d 100644
--- a/blog/autonomous-ai-experiment.html
+++ b/blog/autonomous-ai-experiment.html
@@ -183,7 +183,7 @@ Try the Tools
Built by AI, for developers
All 11 tools are free and open source. Install the suite in one command.
- pip install git+https://github.com/Coding-Dev-Tools/devforge.git
+ pip install git+https://github.com/Coding-Dev-Tools/apiauth.git
Browse all tools on GitHub →
diff --git a/blog/catch-breaking-api-changes-in-ci.html b/blog/catch-breaking-api-changes-in-ci.html
index 1196a5a..c00928e 100644
--- a/blog/catch-breaking-api-changes-in-ci.html
+++ b/blog/catch-breaking-api-changes-in-ci.html
@@ -134,7 +134,7 @@ 1. Install API Contract Guardian
API Contract Guardian is a Python CLI — install it in seconds:
- $ pip install api-contract-guardian
+ $ pip install git+https://github.com/Coding-Dev-Tools/api-contract-guardian.git
Or install directly from GitHub:
@@ -412,7 +412,7 @@ 6. CI/CD Integration (GitHub Actions)
fetch-depth: 2
- name: Install API Contract Guardian
- run: pip install api-contract-guardian
+ run: pip install git+https://github.com/Coding-Dev-Tools/api-contract-guardian.git
- name: Diff OpenAPI specs
run: |
diff --git a/blog/catch-config-drift-before-production.html b/blog/catch-config-drift-before-production.html
index abd904a..8a70282 100644
--- a/blog/catch-config-drift-before-production.html
+++ b/blog/catch-config-drift-before-production.html
@@ -128,7 +128,7 @@ 1. Install ConfigDrift
ConfigDrift is a Python CLI — install it in seconds:
- $ pip install configdrift
+ $ pip install git+https://github.com/Coding-Dev-Tools/configdrift.git
Or install directly from GitHub:
@@ -317,7 +317,7 @@ 6. CI/CD Integration (GitHub Actions)
- uses: actions/checkout@v4
- name: Install ConfigDrift
- run: pip install configdrift
+ run: pip install git+https://github.com/Coding-Dev-Tools/configdrift.git
- name: Check for config drift
run: |
diff --git a/blog/ci-cd-python-cli-tools-guide.html b/blog/ci-cd-python-cli-tools-guide.html
index d0686e0..bfaba79 100644
--- a/blog/ci-cd-python-cli-tools-guide.html
+++ b/blog/ci-cd-python-cli-tools-guide.html
@@ -83,7 +83,7 @@ Step 1: The Minimal CI Workflow
- uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- - run: pip install -e ".[dev]"
+ - run: pip install -e".[dev]"
- run: ruff check .
- run: pytest --cov --cov-report=term-missing
@@ -146,7 +146,7 @@ Step 4: API Contract Checks (for CLI Tools with API Integration)
- name: Check API contracts
run: |
- pip install api-contract-guardian
+ pip install git+https://github.com/Coding-Dev-Tools/api-contract-guardian.git
acg diff --base main --head HEAD --spec-path openapi.yaml
This prevents the "works on my machine" problem when your CLI depends on external APIs that evolve independently.
@@ -157,7 +157,7 @@ Step 5: Config Drift Detection
- name: Check config drift
run: |
- pip install configdrift
+ pip install git+https://github.com/Coding-Dev-Tools/configdrift.git
configdrift diff tests/fixtures/config-v1.yaml tests/fixtures/config-v2.yaml
Step 6: Automated PyPI Publishing
diff --git a/blog/cli-tools-as-mcp-servers.html b/blog/cli-tools-as-mcp-servers.html
index 626c842..9513f02 100644
--- a/blog/cli-tools-as-mcp-servers.html
+++ b/blog/cli-tools-as-mcp-servers.html
@@ -192,7 +192,7 @@ Real Workflows, Not Demos
Getting Started
# Install any tool
-pip install deploydiff envault configdrift
+pip install git+https://github.com/Coding-Dev-Tools/deploydiff.git git+https://github.com/Coding-Dev-Tools/envault.git git+https://github.com/Coding-Dev-Tools/configdrift.git
# Verify MCP mode works
deploydiff mcp # starts stdio MCP server
diff --git a/blog/click-to-mcp-intro.html b/blog/click-to-mcp-intro.html
index 8df3134..f26a2f0 100644
--- a/blog/click-to-mcp-intro.html
+++ b/blog/click-to-mcp-intro.html
@@ -91,7 +91,7 @@ How It Works
Quick Start
# Install
-pip install click-to-mcp
+pip install git+https://github.com/Coding-Dev-Tools/click-to-mcp.git
# Discover all Click/Typer CLIs in your environment
click-to-mcp discover
@@ -236,7 +236,7 @@ What's Next
Custom tool names — override how CLI commands are exposed as tool names
Streaming tools — support MCP streaming for long-running commands
Plugin system — custom parameter transformers for non-standard Click patterns
- PyPI publishing — click-to-mcp is already on PyPI via pip install click-to-mcp
+ PyPI publishing — click-to-mcp is already on PyPI via pip install git+https://github.com/Coding-Dev-Tools/click-to-mcp.git
diff --git a/blog/click-to-mcp-three-distribution-channels.html b/blog/click-to-mcp-three-distribution-channels.html
index ad6bdb9..c8f6f22 100644
--- a/blog/click-to-mcp-three-distribution-channels.html
+++ b/blog/click-to-mcp-three-distribution-channels.html
@@ -71,7 +71,7 @@ Three Ways to Distribute Your CLI to AI Agents
Try it now
- pip install click-to-mcp · Apache 2.0 · Free forever
+ pip install git+https://github.com/Coding-Dev-Tools/click-to-mcp.git · Apache 2.0 · Free forever
View on GitHub →
@@ -96,7 +96,7 @@ Channel 1: MCP Server (The Foundation)
This is what click-to-mcp was built for. Wrap any Click or Typer CLI as an MCP server with a single command:
-pip install click-to-mcp
+pip install git+https://github.com/Coding-Dev-Tools/click-to-mcp.git
click-to-mcp serve your-package.cli:app
Every CLI command becomes an MCP tool. Every @click.option() becomes a typed input parameter. No boilerplate, no schema writing, no maintenance burden when your CLI changes.
@@ -229,7 +229,7 @@ The Bigger Picture: CLIs Are the New API Surface
Get started
- pip install click-to-mcp · Three channels, zero boilerplate.
+ pip install git+https://github.com/Coding-Dev-Tools/click-to-mcp.git · Three channels, zero boilerplate.
View on GitHub →
diff --git a/blog/click-to-mcp-three-transport-modes.html b/blog/click-to-mcp-three-transport-modes.html
index c078a7c..4fd5ae4 100644
--- a/blog/click-to-mcp-three-transport-modes.html
+++ b/blog/click-to-mcp-three-transport-modes.html
@@ -72,7 +72,7 @@ click-to-mcp Transport Modes: stdio, HTTP+SSE, and Streamable HTTP
Try it now
- pip install click-to-mcp · Apache 2.0 · Free forever
+ pip install git+https://github.com/Coding-Dev-Tools/click-to-mcp.git · Apache 2.0 · Free forever
View on GitHub →
@@ -425,7 +425,7 @@ What's Next
The MCP transport landscape is still evolving. The spec team is actively refining HTTP transport semantics, and more clients are adopting Streamable HTTP as the default. click-to-mcp tracks the spec — when a new transport lands, you'll get it as a pip install --upgrade away.
- In the meantime, if you're building with Click or Typer and want your tools available to AI agents, the path is clear: pip install click-to-mcp, click-to-mcp discover, click-to-mcp serve. The transport you need is one flag away.
+ In the meantime, if you're building with Click or Typer and want your tools available to AI agents, the path is clear: pip install git+https://github.com/Coding-Dev-Tools/click-to-mcp.git, click-to-mcp discover, click-to-mcp serve. The transport you need is one flag away.
diff --git a/blog/click-to-mcp-usage-guide.html b/blog/click-to-mcp-usage-guide.html
index 1efceeb..0ed1ab2 100644
--- a/blog/click-to-mcp-usage-guide.html
+++ b/blog/click-to-mcp-usage-guide.html
@@ -80,7 +80,7 @@ Quick Refresher: What Is click-to-mcp?
The core workflow is:
# 1. Install
-pip install click-to-mcp
+pip install git+https://github.com/Coding-Dev-Tools/click-to-mcp.git
# 2. Scan for CLI tools in your environment
click-to-mcp discover
diff --git a/blog/click-vs-typer-vs-argparse-python-cli.html b/blog/click-vs-typer-vs-argparse-python-cli.html
index b91bab5..c0b145e 100644
--- a/blog/click-vs-typer-vs-argparse-python-cli.html
+++ b/blog/click-vs-typer-vs-argparse-python-cli.html
@@ -256,7 +256,7 @@ Beyond the CLI: MCP Integration
The Model Context Protocol (MCP) lets AI coding agents (Claude, Cursor, Codex) use your CLI tools as tools. If you built your CLI with Click or Typer, you can wrap it as an MCP server in one command with click-to-mcp:
-pip install click-to-mcp
+pip install git+https://github.com/Coding-Dev-Tools/click-to-mcp.git
click-to-mcp convert mycli.py
# Now Claude/Cursor/Codex can call your CLI as an AI tool
diff --git a/blog/configdrift-vs-driftctl-vs-terraform-plan-vs-checkov.html b/blog/configdrift-vs-driftctl-vs-terraform-plan-vs-checkov.html
index f636b13..8923d97 100644
--- a/blog/configdrift-vs-driftctl-vs-terraform-plan-vs-checkov.html
+++ b/blog/configdrift-vs-driftctl-vs-terraform-plan-vs-checkov.html
@@ -485,7 +485,7 @@ ConfigDrift CI/CD pipeline
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- - run: pip install configdrift
+ - run: pip install git+https://github.com/Coding-Dev-Tools/configdrift.git
# Gate: block deploy if breaking config drift
- name: Config drift check
diff --git a/blog/datamorph-data-conversion-batch-processing.html b/blog/datamorph-data-conversion-batch-processing.html
index 0b5218e..bfa2d0e 100644
--- a/blog/datamorph-data-conversion-batch-processing.html
+++ b/blog/datamorph-data-conversion-batch-processing.html
@@ -130,7 +130,7 @@ DataMorph: Streaming from Day One
DataMorph is built on a streaming architecture. Every format pair (CSV ? Parquet, JSON ? YAML, etc.) processes rows one at a time. This means you can convert files of any size on any machine � from a Raspberry Pi to a production CI runner.
# Install once
-pip install datamorph
+pip install git+https://github.com/Coding-Dev-Tools/datamorph.git
# Convert anything to anything � streamed
datamorph convert sales_2025.csv sales_2025.parquet
@@ -246,7 +246,7 @@ Getting Started
Install DataMorph and start converting in under a minute:
# Install
-pip install datamorph
+pip install git+https://github.com/Coding-Dev-Tools/datamorph.git
# Verify
datamorph --help
diff --git a/blog/datamorph-validate-data-schema-ci-pipeline.html b/blog/datamorph-validate-data-schema-ci-pipeline.html
index eac6919..e183bc1 100644
--- a/blog/datamorph-validate-data-schema-ci-pipeline.html
+++ b/blog/datamorph-validate-data-schema-ci-pipeline.html
@@ -170,7 +170,7 @@ Pattern 1: Validate Data Files on PR
- uses: actions/checkout@v4
- name: Install DataMorph
- run: pip install datamorph-cli
+ run: pip install git+https://github.com/Coding-Dev-Tools/datamorph.git
- name: Validate all CSV files against schemas
run: |
@@ -211,7 +211,7 @@ Pattern 2: Schema Drift Detection on Schedule
- uses: actions/checkout@v4
- name: Install DataMorph
- run: pip install datamorph-cli
+ run: pip install git+https://github.com/Coding-Dev-Tools/datamorph.git
- name: Download latest data files
run: |
@@ -441,7 +441,7 @@ Scenario 3: Parquet Schema Evolution Without Backward Compatibility
Install DataMorph
# pip
-pip install datamorph-cli
+pip install git+https://github.com/Coding-Dev-Tools/datamorph.git
# Homebrew (macOS / Linux)
brew tap Coding-Dev-Tools/tap
diff --git a/blog/datamorph-vs-pandas-vs-nifi-vs-aws-glue.html b/blog/datamorph-vs-pandas-vs-nifi-vs-aws-glue.html
index ecbced8..18ace96 100644
--- a/blog/datamorph-vs-pandas-vs-nifi-vs-aws-glue.html
+++ b/blog/datamorph-vs-pandas-vs-nifi-vs-aws-glue.html
@@ -141,7 +141,7 @@ DataMorph -- Convert Between Data Formats at Scale
Core workflow
# Install
-pip install datamorph-cli
+pip install git+https://github.com/Coding-Dev-Tools/datamorph.git
# Convert CSV to Parquet
datamorph convert data.csv --to parquet
@@ -653,7 +653,7 @@ The Complementary Stack
Install DataMorph
# Install via pip
-pip install datamorph-cli
+pip install git+https://github.com/Coding-Dev-Tools/datamorph.git
# Or via Homebrew (macOS/Linux)
brew tap Coding-Dev-Tools/tap
diff --git a/blog/deploydiff-cost-governance-before-you-deploy.html b/blog/deploydiff-cost-governance-before-you-deploy.html
index dc42ffa..4c40a9f 100644
--- a/blog/deploydiff-cost-governance-before-you-deploy.html
+++ b/blog/deploydiff-cost-governance-before-you-deploy.html
@@ -162,7 +162,7 @@ GitHub Actions: Block Deploys Over $500/month
terraform show -json tfplan > plan.json
- name: Check cost impact
run: |
- pip install deploydiff
+ pip install git+https://github.com/Coding-Dev-Tools/deploydiff.git
deploydiff cost --tf infra/plan.json \
--max-monthly-increase 500 \
--format json > cost_report.json
@@ -191,7 +191,7 @@ GitLab CI: Cost Thresholds Per Environment
cost-gate:prod:
stage: cost-gate
script:
- - pip install deploydiff
+ - pip install git+https://github.com/Coding-Dev-Tools/deploydiff.git
- deploydiff cost --tf plan.json
--max-monthly-increase 200
--fail-on-threshold
@@ -200,7 +200,7 @@ GitLab CI: Cost Thresholds Per Environment
cost-gate:staging:
stage: cost-gate
script:
- - pip install deploydiff
+ - pip install git+https://github.com/Coding-Dev-Tools/deploydiff.git
- deploydiff cost --tf plan.json
--max-monthly-increase 50
--fail-on-threshold
diff --git a/blog/deploydiff-preview-infrastructure-changes-before-apply.html b/blog/deploydiff-preview-infrastructure-changes-before-apply.html
index be4c4b7..c92387d 100644
--- a/blog/deploydiff-preview-infrastructure-changes-before-apply.html
+++ b/blog/deploydiff-preview-infrastructure-changes-before-apply.html
@@ -112,7 +112,7 @@ Quick Start: Preview Your First Plan
Step 1: Install DeployDiff
# pip
-pip install deploydiff
+pip install git+https://github.com/Coding-Dev-Tools/deploydiff.git
# Homebrew (macOS / Linux)
brew tap Coding-Dev-Tools/tap
@@ -278,7 +278,7 @@ Pattern 1: Gate PRs on Destructive Changes
- uses: actions/checkout@v4
- name: Install DeployDiff
- run: pip install deploydiff
+ run: pip install git+https://github.com/Coding-Dev-Tools/deploydiff.git
- name: Terraform Init & Plan
working-directory: terraform
@@ -317,7 +317,7 @@ Pattern 2: Destructive-Change Review with Auto-Label
- uses: actions/checkout@v4
- name: Install DeployDiff
- run: pip install deploydiff
+ run: pip install git+https://github.com/Coding-Dev-Tools/deploydiff.git
- name: Terraform Plan
working-directory: terraform
@@ -367,7 +367,7 @@ Pattern 3: Scheduled Drift Detection
- uses: actions/checkout@v4
- name: Install DeployDiff
- run: pip install deploydiff
+ run: pip install git+https://github.com/Coding-Dev-Tools/deploydiff.git
- name: Terraform Plan (refresh-only)
working-directory: terraform
@@ -550,7 +550,7 @@ Combining Preview with Cost and Rollback
Install DeployDiff
# pip
-pip install deploydiff
+pip install git+https://github.com/Coding-Dev-Tools/deploydiff.git
# Homebrew (macOS / Linux)
brew tap Coding-Dev-Tools/tap
diff --git a/blog/deploydiff-rollback-commands-terraform-cloudformation.html b/blog/deploydiff-rollback-commands-terraform-cloudformation.html
index ba2a45c..1398cb3 100644
--- a/blog/deploydiff-rollback-commands-terraform-cloudformation.html
+++ b/blog/deploydiff-rollback-commands-terraform-cloudformation.html
@@ -252,7 +252,7 @@ CI/CD Integration: Automatic Rollback on Failure
- uses: actions/checkout@v4
- name: Install DeployDiff
- run: pip install deploydiff
+ run: pip install git+https://github.com/Coding-Dev-Tools/deploydiff.git
- name: Terraform Plan
working-directory: infra
@@ -382,7 +382,7 @@ Option 3: MCP Server for AI Agent Rollback
Install DeployDiff
# pip
-pip install deploydiff
+pip install git+https://github.com/Coding-Dev-Tools/deploydiff.git
# Homebrew (macOS / Linux)
brew tap Coding-Dev-Tools/tap
diff --git a/blog/deploydiff-vs-terraform-plan-vs-pulumi-preview-vs-infracost.html b/blog/deploydiff-vs-terraform-plan-vs-pulumi-preview-vs-infracost.html
index af1aee6..6385aef 100644
--- a/blog/deploydiff-vs-terraform-plan-vs-pulumi-preview-vs-infracost.html
+++ b/blog/deploydiff-vs-terraform-plan-vs-pulumi-preview-vs-infracost.html
@@ -140,7 +140,7 @@ DeployDiff -- Preview Infrastructure Changes Before You Apply
Core workflow
# Install
-pip install deploydiff-cli
+pip install git+https://github.com/Coding-Dev-Tools/deploydiff.git
# Preview: render a Terraform plan as a readable diff
terraform plan -out=plan.tfplan
@@ -639,7 +639,7 @@ The Complementary Stack
Install DeployDiff
# Install via pip
-pip install deploydiff-cli
+pip install git+https://github.com/Coding-Dev-Tools/deploydiff.git
# Or via Homebrew (macOS/Linux)
brew tap Coding-Dev-Tools/tap
diff --git a/blog/envault-apiauth-rotate-keys-across-environments.html b/blog/envault-apiauth-rotate-keys-across-environments.html
index 430df97..a2d508c 100644
--- a/blog/envault-apiauth-rotate-keys-across-environments.html
+++ b/blog/envault-apiauth-rotate-keys-across-environments.html
@@ -302,7 +302,7 @@ Full CI/CD Workflow: Automated Multi-Environment Rotation
- name: Install tools
run: |
- pip install apiauth
+ pip install git+https://github.com/Coding-Dev-Tools/apiauth.git
pip install git+https://github.com/Coding-Dev-Tools/envault.git
- name: Check environment drift before rotation
@@ -529,7 +529,7 @@ Environments drift before rotation
Install Both Tools
# pip
-pip install apiauth
+pip install git+https://github.com/Coding-Dev-Tools/apiauth.git
pip install git+https://github.com/Coding-Dev-Tools/envault.git
# Homebrew (macOS / Linux)
diff --git a/blog/envault-serve-http-api-secrets.html b/blog/envault-serve-http-api-secrets.html
index 8438625..58aa05b 100644
--- a/blog/envault-serve-http-api-secrets.html
+++ b/blog/envault-serve-http-api-secrets.html
@@ -69,7 +69,7 @@ Envault Serve: Your Encrypted .env Files Now Have a REST API
Try it now
- pip install envault · envault serve --port 8080 · Your secrets are live over HTTP
+ pip install git+https://github.com/Coding-Dev-Tools/envault.git · git+https://github.com/Coding-Dev-Tools/envault.git serve --port 8080 · Your secrets are live over HTTP
View on GitHub →
@@ -346,7 +346,7 @@ Get Started
Start serving your secrets over HTTP
- pip install envault · Apache 2.0 · Free and open source
+ pip install git+https://github.com/Coding-Dev-Tools/envault.git · Apache 2.0 · Free and open source
View on GitHub →
Full command docs →
diff --git a/blog/envault-vs-doppler-vs-infisical-vs-dotenv-vault.html b/blog/envault-vs-doppler-vs-infisical-vs-dotenv-vault.html
index 5231fa7..878ddc4 100644
--- a/blog/envault-vs-doppler-vs-infisical-vs-dotenv-vault.html
+++ b/blog/envault-vs-doppler-vs-infisical-vs-dotenv-vault.html
@@ -574,7 +574,7 @@ CI/CD Integration Comparison
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- - run: pip install rh-envault
+ - run: pip install git+https://github.com/Coding-Dev-Tools/envault.git
# Check for drift — fail if prod is missing variables
- name: Environment drift check
diff --git a/blog/json2sql-cicd-automated-database-seeding.html b/blog/json2sql-cicd-automated-database-seeding.html
index be7545a..1199027 100644
--- a/blog/json2sql-cicd-automated-database-seeding.html
+++ b/blog/json2sql-cicd-automated-database-seeding.html
@@ -135,7 +135,7 @@ GitHub Actions
- uses: actions/checkout@v4
- name: Install json2sql
- run: pip install json2sql-cli
+ run: pip install git+https://github.com/Coding-Dev-Tools/json2sql.git
- name: Seed database from JSON fixtures
run: |
@@ -159,7 +159,7 @@ GitLab CI
POSTGRES_USER: test
POSTGRES_PASSWORD: test
script:
- - pip install json2sql-cli pytest
+ - pip install git+https://github.com/Coding-Dev-Tools/json2sql.git pytest
- |
for fixture in tests/fixtures/*.json; do
table=$(basename "$fixture" .json)
@@ -287,7 +287,7 @@ Complete GitHub Actions Example
options: --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5
steps:
- uses: actions/checkout@v4
- - run: pip install json2sql-cli
+ - run: pip install git+https://github.com/Coding-Dev-Tools/json2sql.git
- run: |
for f in tests/fixtures/*.json; do
json2sql convert "$f" --flatten --dialect postgres --table "$(basename "$f" .json)" \
@@ -305,7 +305,7 @@ Complete GitHub Actions Example
options: --health-cmd "mysqladmin ping" --health-interval 10s --health-timeout 5s --health-retries 5
steps:
- uses: actions/checkout@v4
- - run: pip install json2sql-cli
+ - run: pip install git+https://github.com/Coding-Dev-Tools/json2sql.git
- run: |
for f in tests/fixtures/*.json; do
json2sql convert "$f" --flatten --dialect mysql --table "$(basename "$f" .json)" \
@@ -317,7 +317,7 @@ Complete GitHub Actions Example
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- - run: pip install json2sql-cli
+ - run: pip install git+https://github.com/Coding-Dev-Tools/json2sql.git
- run: |
for f in tests/fixtures/*.json; do
json2sql convert "$f" --flatten --dialect sqlite --table "$(basename "$f" .json)" \
@@ -342,7 +342,7 @@ Getting Started
Automate your database seeding today
No more stale .sql files. No more hand-written INSERT statements. Just JSON fixtures and one command.
- pip install json2sql-cli
+ pip install git+https://github.com/Coding-Dev-Tools/json2sql.git
json2sql convert fixtures/users.json --flatten --dialect postgres | psql $DATABASE_URL
View on GitHub →
diff --git a/blog/json2sql-generate-create-table-from-json-schema-first.html b/blog/json2sql-generate-create-table-from-json-schema-first.html
index 1f20f50..c9e2293 100644
--- a/blog/json2sql-generate-create-table-from-json-schema-first.html
+++ b/blog/json2sql-generate-create-table-from-json-schema-first.html
@@ -124,7 +124,7 @@ Quick Start: Generate Your First Schema
Step 1: Install json2sql
# pip
-pip install json2sql
+pip install git+https://github.com/Coding-Dev-Tools/json2sql.git
# Homebrew (macOS / Linux)
brew tap Coding-Dev-Tools/tap
@@ -318,7 +318,7 @@ Workflow 3: Schema Drift Detection in CI
- uses: actions/checkout@v4
- name: Install json2sql
- run: pip install json2sql
+ run: pip install git+https://github.com/Coding-Dev-Tools/json2sql.git
- name: Fetch current API schema
run: |
@@ -450,7 +450,7 @@ Pattern 1: PR-Driven Schema Changes
- uses: actions/checkout@v4
- name: Install json2sql
- run: pip install json2sql
+ run: pip install git+https://github.com/Coding-Dev-Tools/json2sql.git
- name: Generate DDL for changed schemas
run: |
@@ -489,7 +489,7 @@ Pattern 2: Automated Migration Generation
- uses: actions/checkout@v4
- name: Install json2sql
- run: pip install json2sql
+ run: pip install git+https://github.com/Coding-Dev-Tools/json2sql.git
- name: Generate migration for each schema
run: |
@@ -531,7 +531,7 @@ Combining Schema-Only with Flatten
Install json2sql
# pip
-pip install json2sql
+pip install git+https://github.com/Coding-Dev-Tools/json2sql.git
# Homebrew (macOS / Linux)
brew tap Coding-Dev-Tools/tap
diff --git a/blog/json2sql-nested-json-relational-tables.html b/blog/json2sql-nested-json-relational-tables.html
index 54a8aa3..3003ecf 100644
--- a/blog/json2sql-nested-json-relational-tables.html
+++ b/blog/json2sql-nested-json-relational-tables.html
@@ -373,7 +373,7 @@ GitHub Actions Example
- uses: actions/checkout@v4
- name: Install json2sql
- run: pip install json2sql-cli
+ run: pip install git+https://github.com/Coding-Dev-Tools/json2sql.git
- name: Generate SQL from fixtures
run: |
@@ -452,7 +452,7 @@ When to Use --flatten vs. a Custom Script
Install and Try It Now
# Install
-pip install json2sql-cli
+pip install git+https://github.com/Coding-Dev-Tools/json2sql.git
# Basic flat conversion
json2sql convert data.json
diff --git a/blog/json2sql-vs-papa-parse-vs-aws-dms-vs-airbyte.html b/blog/json2sql-vs-papa-parse-vs-aws-dms-vs-airbyte.html
index ec71f69..d9964b4 100644
--- a/blog/json2sql-vs-papa-parse-vs-aws-dms-vs-airbyte.html
+++ b/blog/json2sql-vs-papa-parse-vs-aws-dms-vs-airbyte.html
@@ -140,7 +140,7 @@ json2sql -- Convert JSON Files to SQL INSERT Statements
Core workflow
# Install
-pip install json2sql-cli
+pip install git+https://github.com/Coding-Dev-Tools/json2sql.git
# Basic conversion -- JSON to SQL INSERTs
json2sql convert data.json
@@ -633,7 +633,7 @@ The Complementary Stack
Install json2sql
# Install via pip
-pip install json2sql-cli
+pip install git+https://github.com/Coding-Dev-Tools/json2sql.git
# Or via Homebrew (macOS/Linux)
brew tap Coding-Dev-Tools/tap
diff --git a/blog/license-key-rate-limiting-cli-tools.html b/blog/license-key-rate-limiting-cli-tools.html
index efae342..025e542 100644
--- a/blog/license-key-rate-limiting-cli-tools.html
+++ b/blog/license-key-rate-limiting-cli-tools.html
@@ -140,7 +140,7 @@ Try It Today
Get Started
Install any DevForge tool and start using it free, right now:
- pip install git+https://github.com/Coding-Dev-Tools/devforge.git
+ pip install git+https://github.com/Coding-Dev-Tools/apiauth.git
Or activate a Pro license:
diff --git a/blog/mcp-server-directories-where-to-list-your-server.html b/blog/mcp-server-directories-where-to-list-your-server.html
index 1f65562..1940e6b 100644
--- a/blog/mcp-server-directories-where-to-list-your-server.html
+++ b/blog/mcp-server-directories-where-to-list-your-server.html
@@ -266,7 +266,7 @@
Our Story: click-to-mcp
We built click-to-mcp to solve a specific problem: making existing Python CLIs available as MCP servers without rewriting them. It wraps any Click or Typer CLI and exposes it via the Model Context Protocol.
-pip install click-to-mcp
+pip install git+https://github.com/Coding-Dev-Tools/click-to-mcp.git
click-to-mcp wrap my_cli_app
The submission process taught us a lot. Our first awesome-mcp-servers PR was rejected for format issues (missing emoji, wrong name). mcp.so accepted us quickly after a GitHub issue. Glama required a browser session we couldn't automate. And several directories we considered (pulse.mcp, mcp-gpt.com) turned out to be dead or unmaintained.
diff --git a/blog/monetize-mcp-servers-x402-mpp.html b/blog/monetize-mcp-servers-x402-mpp.html
index 59baf1a..e244e3a 100644
--- a/blog/monetize-mcp-servers-x402-mpp.html
+++ b/blog/monetize-mcp-servers-x402-mpp.html
@@ -75,7 +75,7 @@ Monetize Your MCP Servers: How x402 and MPP Turn CLI Tools Into Paid Agent S
Try it now
- pip install click-to-mcp · Wrap any Click/Typer CLI · Add per-tool-call pricing with x402 or MPP
+ pip install git+https://github.com/Coding-Dev-Tools/click-to-mcp.git · Wrap any Click/Typer CLI · Add per-tool-call pricing with x402 or MPP
View on GitHub →
@@ -285,7 +285,7 @@ Get Started
Three steps to go from free CLI to paid MCP service:
# 1. Install click-to-mcp
-pip install click-to-mcp
+pip install git+https://github.com/Coding-Dev-Tools/click-to-mcp.git
# 2. Add pricing config
# Create mpp.json or x402.json with per-tool prices
@@ -297,7 +297,7 @@ Get Started
Start earning from your MCP tools
- pip install click-to-mcp · Apache 2.0 · Free and open source
+ pip install git+https://github.com/Coding-Dev-Tools/click-to-mcp.git · Apache 2.0 · Free and open source
View on GitHub →
Learn about MPP →
diff --git a/blog/python-cli-type-safe-pep561.html b/blog/python-cli-type-safe-pep561.html
index d6e964b..e06d971 100644
--- a/blog/python-cli-type-safe-pep561.html
+++ b/blog/python-cli-type-safe-pep561.html
@@ -169,7 +169,7 @@ Quick verification
Install any DevForge tool and run mypy on your code:
- $ pip install envault
+ $ pip install git+https://github.com/Coding-Dev-Tools/envault.git
$ mypy your_script.py
# Any import of envault now resolves to typed signatures
@@ -187,7 +187,7 @@ CI integration
- uses: actions/setup-python@v5
with:
python-version: "3.12"
- - run: pip install mypy envault apiauth
+ - run: pip install mypy git+https://github.com/Coding-Dev-Tools/envault.git git+https://github.com/Coding-Dev-Tools/apiauth.git
- run: mypy --strict src/
With py.typed markers, mypy checks your usage of DevForge imports against the actual signatures — not against Any. If you pass a str where dict is expected, the CI fails.
@@ -263,7 +263,7 @@ Why Most CLI Tools Skip This
Try It Now
- $ pip install envault apiauth click-to-mcp
+ $ pip install git+https://github.com/Coding-Dev-Tools/envault.git git+https://github.com/Coding-Dev-Tools/apiauth.git git+https://github.com/Coding-Dev-Tools/click-to-mcp.git
$ mypy --strict your_project/
diff --git a/blog/schemaforge-v0-5-0-sqlalchemy.html b/blog/schemaforge-v0-5-0-sqlalchemy.html
index 895f27c..36d2daf 100644
--- a/blog/schemaforge-v0-5-0-sqlalchemy.html
+++ b/blog/schemaforge-v0-5-0-sqlalchemy.html
@@ -111,7 +111,7 @@
What's New in v0.5.0
- 💡 v0.5.0 is a free upgrade. pip install --upgrade schemaforge and you're done.
+ 💡 v0.5.0 is a free upgrade. pip install --upgrade git+https://github.com/Coding-Dev-Tools/schemaforge.git and you're done.
SQLAlchemy → Prisma in One Command
@@ -228,7 +228,7 @@ Demo Fixtures
Want to try it right now? The repo includes a blog schema in all 6 formats:
- $ pip install schemaforge
+ $ pip install git+https://github.com/Coding-Dev-Tools/schemaforge.git
$ git clone https://github.com/Coding-Dev-Tools/schemaforge.git
$ cd schemaforge/fixtures
$ schemaforge convert --from sql --to prisma --input sample.sql
@@ -258,7 +258,7 @@ Next Steps
Try SchemaForge today — it's free and open source (Apache 2.0):
- $ pip install schemaforge
+ $ pip install git+https://github.com/Coding-Dev-Tools/schemaforge.git
Read the original v0.2.0 launch post for more on Drizzle support and batch conversion.
diff --git a/blog/schemaforge-v1-7-0-vscode-extension.html b/blog/schemaforge-v1-7-0-vscode-extension.html
index e57902e..f92c93f 100644
--- a/blog/schemaforge-v1-7-0-vscode-extension.html
+++ b/blog/schemaforge-v1-7-0-vscode-extension.html
@@ -180,7 +180,7 @@ VS Code Extension Features
Quick Start
Install the CLI:
- pip install schemaforge
+ pip install git+https://github.com/Coding-Dev-Tools/schemaforge.git
Convert a Prisma schema to SQLAlchemy models:
schemaforge convert schema.prisma --from prisma --to sqlalchemy
diff --git a/blog/sync-env-variables-across-environments.html b/blog/sync-env-variables-across-environments.html
index b4d0632..ff74881 100644
--- a/blog/sync-env-variables-across-environments.html
+++ b/blog/sync-env-variables-across-environments.html
@@ -108,7 +108,7 @@ Sync and Secure Environment Variables Across Environments
1. Install Envault
- $ pip install envault
+ $ pip install git+https://github.com/Coding-Dev-Tools/envault.git
Or from GitHub:
@@ -323,7 +323,7 @@ 7. CI/CD Integration
- uses: actions/checkout@v4
- name: Install Envault
- run: pip install envault
+ run: pip install git+https://github.com/Coding-Dev-Tools/envault.git
- name: Check for drift
run: |
diff --git a/click-to-mcp-og.svg b/click-to-mcp-og.svg
index c97e9c6..528f839 100644
--- a/click-to-mcp-og.svg
+++ b/click-to-mcp-og.svg
@@ -20,7 +20,7 @@
- $ pip install click-to-mcp
+ $ pip install git+https://github.com/Coding-Dev-Tools/click-to-mcp.git
Installing...
$ click-to-mcp discover
Found 12 Click CLIs in your environment
diff --git a/docs.html b/docs.html
index 9adcff5..f92e5b6 100644
--- a/docs.html
+++ b/docs.html
@@ -23,8 +23,8 @@
-
-
+
+
@@ -154,10 +154,10 @@ Quickstart & Usage Guide
Install any tool in seconds and see it in action. Every CLI command below is a real, working example  copy, paste, and run.
✅ Available now via GitHub
- pip install git+https://github.com/Coding-Dev-Tools/devforge.git
+ pip install git+https://github.com/Coding-Dev-Tools/apiauth.git
✓ Available now via GitHub
- pip install git+https://github.com/Coding-Dev-Tools/devforge.git
+ pip install git+https://github.com/Coding-Dev-Tools/apiauth.git
@@ -577,7 +577,7 @@ 👻 APIGhost
View on GitHub →
- pip install apighost
+ pip install git+https://github.com/Coding-Dev-Tools/apighost.git
Requires Python 3.9+
@@ -608,7 +608,7 @@ ðŸâ€â€˜ APIAuth
View on GitHub →
- pip install apiauth
+ pip install git+https://github.com/Coding-Dev-Tools/apiauth.git
Requires Python 3.9+
@@ -642,7 +642,7 @@ 🛡 Envault
View on GitHub →
- pip install envault
+ pip install git+https://github.com/Coding-Dev-Tools/envault.git
Requires Python 3.10+
@@ -675,7 +675,7 @@ âš— SchemaForge
View on GitHub →
- pip install schemaforge
+ pip install git+https://github.com/Coding-Dev-Tools/schemaforge.git
Requires Python 3.9+
@@ -706,7 +706,7 @@ ðŸâ€Å
View on GitHub →
- pip install click-to-mcp
+ pip install git+https://github.com/Coding-Dev-Tools/click-to-mcp.git
Requires Python 3.9+
@@ -737,7 +737,7 @@ 🧹
View on GitHub →
- pip install deadcode
+ pip install git+https://github.com/Coding-Dev-Tools/deadcode.git
Requires Python 3.9+ & Node.js 18+
@@ -768,7 +768,7 @@ ⚒︠DevForge Suit
View on GitHub ?
-pip install git+https://github.com/Coding-Dev-Tools/devforge.git
+pip install git+https://github.com/Coding-Dev-Tools/apiauth.git
Installs all 11 tools as dependencies
â› DevForge Suite
@@ -796,7 +796,7 @@ â› DevForge Suite
- uses: actions/setup-python@v5
with:
python-version: '3.11'
- - run: pip install git+https://github.com/Coding-Dev-Tools/devforge.git
+ - run: pip install git+https://github.com/Coding-Dev-Tools/apiauth.git
# 1. API Contract Guardian  detect breaking schema changes
- run: api-contract-guardian check --base origin/main --head HEAD openapi.yaml
@@ -811,7 +811,7 @@ â› DevForge Suite
- run: configdrift check dev.yaml prod.yaml --output json
- Pro tip: Use the meta-package in CI so your pipeline automatically gets all new tools as they're released. Pin the major version for production stability: pip install git+https://github.com/Coding-Dev-Tools/devforge.git@v0.1
+ Pro tip: Use the meta-package in CI so your pipeline automatically gets all new tools as they're released. Pin the major version for production stability: pip install git+https://github.com/Coding-Dev-Tools/apiauth.git@v0.1
@@ -824,13 +824,13 @@ ⚙︠CI & Integration Guide
Per-tool install for minimal dependencies
# Install only what you need
-pip install git+https://github.com/Coding-Dev-Tools/api-contract-guardian.git # API contract checks
-pip install git+https://github.com/Coding-Dev-Tools/deploydiff.git # Infra change previews
-pip install git+https://github.com/Coding-Dev-Tools/json2sql.git # SQL validation
-pip install git+https://github.com/Coding-Dev-Tools/configdrift.git # Config drift detection
-pip install git+https://github.com/Coding-Dev-Tools/apighost.git # OpenAPI mock server
-pip install git+https://github.com/Coding-Dev-Tools/apiauth.git # API key & JWT management
-pip install git+https://github.com/Coding-Dev-Tools/envault.git # .env syncing & secret rotation
+pip install git+https://github.com/Coding-Dev-Tools/api-contract-guardian.git # API contract checks
+pip install git+https://github.com/Coding-Dev-Tools/deploydiff.git # Infra change previews
+pip install git+https://github.com/Coding-Dev-Tools/json2sql.git # SQL validation
+pip install git+https://github.com/Coding-Dev-Tools/configdrift.git # Config drift detection
+pip install git+https://github.com/Coding-Dev-Tools/apighost.git # OpenAPI mock server
+pip install git+https://github.com/Coding-Dev-Tools/apiauth.git # API key & JWT management
+pip install git+https://github.com/Coding-Dev-Tools/envault.git # .env syncing & secret rotation
pip install git+https://github.com/Coding-Dev-Tools/schemaforge.git # ORM schema converter
pip install git+https://github.com/Coding-Dev-Tools/click-to-mcp.git # MCP server wrapper
pip install git+https://github.com/Coding-Dev-Tools/deadcode.git # Dead code detector
@@ -840,14 +840,14 @@ ⚙︠CI & Integration Guide
Per-tool install for minimal dependencies
# Install only what you need
-pip install api-contract-guardian # API contract checks
-pip install deploydiff # Infra change previews
-pip install json2sql # SQL validation
-pip install configdrift # Config drift detection
-pip install apighost # OpenAPI mock server
-pip install apiauth # API key & JWT management
-pip install envault # .env syncing & secret rotation
-pip install schemaforge # ORM schema converter
+pip install git+https://github.com/Coding-Dev-Tools/api-contract-guardian.git # API contract checks
+pip install git+https://github.com/Coding-Dev-Tools/deploydiff.git # Infra change previews
+pip install git+https://github.com/Coding-Dev-Tools/json2sql.git # SQL validation
+pip install git+https://github.com/Coding-Dev-Tools/configdrift.git # Config drift detection
+pip install git+https://github.com/Coding-Dev-Tools/apighost.git # OpenAPI mock server
+pip install git+https://github.com/Coding-Dev-Tools/apiauth.git # API key & JWT management
+pip install git+https://github.com/Coding-Dev-Tools/envault.git # .env syncing & secret rotation
+pip install git+https://github.com/Coding-Dev-Tools/schemaforge.git # ORM schema converter
Exit codes (all tools)
0  Success (no issues found)
diff --git a/drafts/marketing-outreach-plan.md b/drafts/marketing-outreach-plan.md
index f87ae9c..f6b2e89 100644
--- a/drafts/marketing-outreach-plan.md
+++ b/drafts/marketing-outreach-plan.md
@@ -22,7 +22,7 @@
### Pre-Launch (T-7 days)
- [ ] Create maker profile on Product Hunt
- [ ] Prepare assets: logo (256x256), gallery images (1270x760), tagline
-- [ ] Record 60-sec demo video: `pip install click-to-mcp` → `click-to-mcp convert mycli` → instant MCP server
+- [ ] Record 60-sec demo video: `pip install git+https://github.com/Coding-Dev-Tools/click-to-mcp.git` → `click-to-mcp convert mycli` → instant MCP server
- [ ] Write maker comment with technical deep-dive
- [ ] Line up 5-10 hunter/upvoter supporters (indie dev communities)
@@ -59,15 +59,15 @@ I built SchemaForge because every time I switched projects, I spent hours manual
SchemaForge is a CLI + VS Code extension that does bidirectional conversion between 11 schema formats:
- SQL DDL, Prisma, Drizzle, TypeORM, Django, SQLAlchemy, Alembic migrations, JSON Schema, GraphQL SDL, EF Core (C#), Scala case classes
-That's 110 direction pairs, all with zero-loss roundtripping (preserves constraints, indexes, relations, defaults).
+That's 100 supported conversion directions. The shared representation preserves tables, columns, types, defaults, indexes, unique constraints, and enums — foreign-key constraints and ORM relationship fields require manual review after migration.
Key features:
-- 270 tests covering edge cases across all format pairs
- VS Code extension with live preview (Ctrl+Alt+S), format detection (Ctrl+Alt+D), and two-file diff
- Custom .schemaforge editor in VS Code
- Streaming for large schemas
+- MCP server for AI-tool integration
-Install: pip install schemaforge
+Install: pip install git+https://github.com/Coding-Dev-Tools/schemaforge.git
VS Code: Search "SchemaForge" in extensions
v1.7.0 adds the VS Code companion, custom editor, and format detection.
@@ -87,7 +87,7 @@ With the MCP (Model Context Protocol) ecosystem exploding (66M+ FastMCP download
click-to-mcp takes any Click or typer CLI and generates a fully compliant MCP server — one command:
- pip install click-to-mcp
+ pip install git+https://github.com/Coding-Dev-Tools/click-to-mcp.git
click-to-mcp convert your_cli_app
Now your CLI tools can be called by Claude, GPT, or any MCP-compatible agent.
@@ -104,9 +104,9 @@ Would love feedback — what CLIs would you wrap?
```
Title: Built a tool to convert between Prisma, Drizzle, TypeORM, SQL, and 7 more ORM formats
-Tired of manually rewriting schema definitions when switching between projects or ORMs. Built SchemaForge — bidirectional converter between 11 schema formats (110 direction pairs).
+Tired of manually rewriting schema definitions when switching between projects or ORMs. Built SchemaForge — bidirectional converter between 11 schema formats (100 supported conversion directions). Shared representation preserves tables, columns, types, defaults, indexes, unique constraints, and enums; foreign-key constraints and ORM relationship fields require manual review after migration.
- pip install schemaforge
+ pip install git+https://github.com/Coding-Dev-Tools/schemaforge.git
schemaforge convert input.prisma --to drizzle
Also has a VS Code extension with live preview and format detection.
@@ -122,7 +122,7 @@ Title: CLI tool to detect breaking API changes before they hit production
api-contract-guardian monitors OpenAPI schema diffs between git branches, detects breaking changes, and can block CI pipelines on contract violations.
- pip install api-contract-guardian
+ pip install git+https://github.com/Coding-Dev-Tools/api-contract-guardian.git
api-contract-guardian check main..feature
It also generates migration guides for the breaking changes it finds. Useful for teams with microservices where API contract violations cause production incidents.
@@ -138,7 +138,7 @@ Title: Open-source tools to expose your Python CLIs as MCP servers
The MCP ecosystem needs more tool servers. I built click-to-mcp to auto-wrap any Click/typer CLI as a compliant MCP server:
- pip install click-to-mcp
+ pip install git+https://github.com/Coding-Dev-Tools/click-to-mcp.git
click-to-mcp convert your_cli
This lets any MCP-compatible client (Claude Desktop, Continue, etc.) call your CLI tools directly.
@@ -167,7 +167,7 @@ That's where click-to-mcp comes in.
click-to-mcp auto-wraps any Click or typer CLI as a fully compliant MCP server. One command, zero code changes.
## Quick start
- pip install click-to-mcp
+ pip install git+https://github.com/Coding-Dev-Tools/click-to-mcp.git
click-to-mcp convert my_cli_app
click-to-mcp serve # Starts the MCP server
@@ -196,17 +196,17 @@ Now Claude can directly invoke AWS commands through MCP.
Every developer who switches projects has faced this: your last project used Prisma, this one uses Drizzle, and the schema definitions are completely incompatible. Manual conversion takes hours and loses constraints.
## SchemaForge solves this
-Bidirectional conversion between 11 schema formats — SQL DDL, Prisma, Drizzle, TypeORM, Django, SQLAlchemy, Alembic, JSON Schema, GraphQL SDL, EF Core, and Scala case classes. 110 direction pairs, all zero-loss.
+Bidirectional conversion between 11 schema formats — SQL DDL, Prisma, Drizzle, TypeORM, Django, SQLAlchemy, Alembic, JSON Schema, GraphQL SDL, EF Core, and Scala case classes. 100 supported conversion directions. The shared representation preserves tables, columns, types, defaults, indexes, unique constraints, and enums; foreign-key constraints and ORM relationship fields require manual review after migration.
## Quick start
- pip install schemaforge
+ pip install git+https://github.com/Coding-Dev-Tools/schemaforge.git
schemaforge convert schema.prisma --to drizzle
## VS Code Extension
Live preview, quick convert (Ctrl+Alt+S), format detection (Ctrl+Alt+D), and two-file diff — all inside VS Code.
-## 270 tests
-Every format pair is tested with real-world schemas covering constraints, indexes, relations, and defaults.
+## Tests and coverage
+Every format pair is tested with real-world schemas covering constraints, indexes, defaults, and edge cases.
## Try it
- GitHub: https://github.com/Coding-Dev-Tools/schemaforge
diff --git a/drafts/newsletter-outreach-email.md b/drafts/newsletter-outreach-email.md
new file mode 100644
index 0000000..b165128
--- /dev/null
+++ b/drafts/newsletter-outreach-email.md
@@ -0,0 +1,96 @@
+# Newsletter Outreach Email — DevForge / Coding-Dev-Tools
+
+**Source task:** Monthly calendar Week 4, Tue — "Outreach to dev tool newsletters (Console.dev, TLDR, Python Weekly)"
+**Status:** DRAFT — ready to send, requires human to dispatch from a real sender address.
+**Goal:** Earn a feature / mention in high-traffic dev newsletters to drive awareness + GitHub stars for the 11 CLI tools.
+
+---
+
+## Template (master)
+
+**Subject:** [Coding-Dev-Tools] 11 open-source dev CLI tools built by AI agents — worth a feature?
+
+Hi {EDITOR_FIRST_NAME},
+
+I'm part of the team behind Coding-Dev-Tools — a suite of 11 production-ready, open-source developer CLI tools (pip-installable, Apache-2.0 / MIT). We think your readers would find a few of them genuinely useful:
+
+- **click-to-mcp** — turn any Click/typer CLI into an MCP server in one command (zero competitors, rides the 66M+ FastMCP download wave)
+- **SchemaForge** — bidirectional conversion between 11 schema formats (100 conversion directions, with documentation that foreign-key and ORM relationship fields require manual review after migration)
+- **api-contract-guardian** — detect breaking OpenAPI changes in CI before they hit production
+- **apighost** — mock servers from any OpenAPI spec, with VCR-style recording
+- **DeadCode** — AST-based dead-code detection for React/Next.js
+- **Envault / ConfigDrift / DeployDiff / json2sql / DataMorph / APIAuth** — secrets, drift, cost-preview, data conversion, API-key rotation
+
+What makes the story interesting: the entire suite was built by a small team of coordinating AI agents (CEO / Engineer / Researcher / Marketer) with near-zero human-written code — a concrete case study on agent-driven dev-tool production.
+
+If you'd like, I can write a short, reader-first piece (tutorial or roundup) tailored to your format, or just hand you a test drive. Happy to send assets, demos, or a custom angle.
+
+Site: https://devforge.dev · Org: https://github.com/Coding-Dev-Tools
+
+Thanks for the great newsletter,
+{NAME} — Coding-Dev-Tools
+
+---
+
+## Variant A — Console.dev
+
+**Subject:** We shipped 11 open-source dev CLI tools with AI agents — want to feature one?
+
+Hi {EDITOR},
+
+Console.dev readers live for "tools that save dev time." Our suite is exactly that:
+
+- **click-to-mcp** — any Click/typer CLI → MCP server, one command
+- **api-contract-guardian** — breaking-change detection in CI
+- **DeadCode** — kill unused exports in React/Next.js
+- **apighost** — OpenAPI → mock server in 60s
+
+Open source, pip-installable, documented. We'd love a spot in your newsletter or a guest tutorial. Happy to provide a demo and a custom angle.
+
+— {NAME}, Coding-Dev-Tools · https://devforge.dev
+
+---
+
+## Variant B — TLDR (Tech, Leadership, Design, Revenue)
+
+**Subject:** [TLDR] 11 OSS dev CLI tools, agent-built, pip-installable
+
+Hi {EDITOR},
+
+Quick one for TLDR's dev audience: we maintain **Coding-Dev-Tools**, 11 open-source CLI tools for developers — all pip-installable and MIT/Apache-2.0:
+
+- click-to-mcp, SchemaForge, api-contract-guardian, apighost, DeadCode, Envault, ConfigDrift, DeployDiff, json2sql, DataMorph, APIAuth
+
+Notable: **click-to-mcp** bridges Python CLIs into the MCP ecosystem (a wide-open niche), and **api-contract-guardian** gates CI on breaking API changes. The whole suite was produced by coordinating AI agents.
+
+Open to a mention or a sponsored/community slot. Assets + demos on request.
+
+— {NAME} · https://github.com/Coding-Dev-Tools
+
+---
+
+## Variant C — Python Weekly
+
+**Subject:** [Python Weekly] Open-source Python CLI tools your readers can pip install today
+
+Hi {EDITOR},
+
+Python Weekly readers love practical, install-and-use tooling. We maintain 11 OSS Python CLI tools:
+
+- **click-to-mcp** — wrap any Click/typer CLI as an MCP server
+- **SchemaForge** — 11-format schema conversion (SQL, Prisma, Drizzle, Django…)
+- **APIAuth** — encrypted API-key / JWT rotation from the terminal
+- **json2sql**, **DataMorph**, **Envault**, **DeployDiff**, **ConfigDrift**, **apighost**, **api-contract-guardian**, **DeadCode**
+
+All pip-installable, documented, tested. We'd appreciate a community link or a short feature. Happy to contribute a tutorial.
+
+— {NAME} · https://devforge.dev
+
+---
+
+## Send checklist (human action)
+- [ ] Pick primary target(s): Console.dev, TLDR, Python Weekly (+ Hacker News digest, DevOps Weekly, Pycoder's Weekly as bonus)
+- [ ] Fill {EDITOR_FIRST_NAME} / {NAME} / sender address
+- [ ] Verify links resolve (devforge.dev, github org)
+- [ ] Send from a real domain (not no-reply) to maximize reply rate
+- [ ] Track opens/replies; follow up once after 5–7 days
diff --git a/drafts/product-hunt-click-to-mcp.md b/drafts/product-hunt-click-to-mcp.md
index e361944..d5f66ae 100644
--- a/drafts/product-hunt-click-to-mcp.md
+++ b/drafts/product-hunt-click-to-mcp.md
@@ -53,7 +53,7 @@ You have dozens of Python CLI tools. Your AI agent (Claude, GPT, etc.) can't use
click-to-mcp automatically wraps any Click or Typer CLI as a Model Context Protocol (MCP) server. Zero code changes. One command.
```bash
-pip install click-to-mcp
+pip install git+https://github.com/Coding-Dev-Tools/click-to-mcp.git
click-to-mcp convert my-cli-tool
```
diff --git a/drafts/reddit-posts.md b/drafts/reddit-posts.md
index ed26534..5255cf0 100644
--- a/drafts/reddit-posts.md
+++ b/drafts/reddit-posts.md
@@ -8,10 +8,10 @@
Hey r/Python,
-Tired of rewriting Django models to SQLAlchemy? Or Prisma schemas to Drizzle? I built SchemaForge — a CLI that converts between 11 schema formats with zero-loss roundtripping.
+Tired of rewriting Django models to SQLAlchemy? Or Prisma schemas to Drizzle? I built SchemaForge — a CLI that converts between 11 schema formats. The shared representation preserves tables, columns, types, defaults, indexes, unique constraints, and enums; foreign-key constraints and ORM relationship fields require manual review after migration.
```bash
-pip install schemaforge
+pip install git+https://github.com/Coding-Dev-Tools/schemaforge.git
# Django → SQLAlchemy
schemaforge convert models.py --from django --to sqlalchemy
@@ -23,9 +23,11 @@ schemaforge convert schema.sql --from sql-ddl --to prisma
schemaforge convert models.py --from sqlalchemy --to drizzle
```
-Supported formats: SQL DDL, Prisma, Drizzle, TypeORM, Django, SQLAlchemy, GraphQL SDL, JSON Schema, OpenAPI 3.0, Protobuf, Avro — that's 110 direction pairs.
+Supported formats: SQL DDL, Prisma, Drizzle, TypeORM, Django, SQLAlchemy, GraphQL SDL, JSON Schema, OpenAPI 3.0, Protobuf, Avro — that's 55 direction pairs (bidirectional) with 11 formats.
-It preserves relationships, indexes, defaults, and constraints. 270+ tests passing.
+It preserves tables, columns, types, defaults, indexes, unique constraints, and enums across conversions.
+
+It preserves tables, columns, types, defaults, indexes, unique constraints, and enums. 270+ tests passing.
There's also a VS Code extension (v1.7.0) with live preview, quick convert (Ctrl+Alt+S), and format detection.
@@ -51,7 +53,7 @@ Hey r/cli,
Built a tool that auto-wraps Python CLIs as MCP (Model Context Protocol) servers. Zero code changes needed.
```bash
-pip install click-to-mcp
+pip install git+https://github.com/Coding-Dev-Tools/click-to-mcp.git
click-to-mcp convert my-cli-tool
```
@@ -86,7 +88,7 @@ Built a CLI that detects dead code in React and Next.js projects:
- Orphaned CSS classes (styles with no matching elements)
```bash
-pip install deadcode
+pip install git+https://github.com/Coding-Dev-Tools/deadcode.git
deadcode scan ./src
```
@@ -114,28 +116,28 @@ Sharing 4 CLI tools we built for CI/CD workflows:
**1. API Contract Guardian** — catch breaking OpenAPI changes in CI
```bash
-pip install api-contract-guardian
+pip install git+https://github.com/Coding-Dev-Tools/api-contract-guardian.git
api-contract-guardian diff old.yaml new.yaml --check-breaking
```
Add to GitHub Actions: breaks the build if a PR introduces breaking API changes.
**2. DeployDiff** — preview infra cost before deploying
```bash
-pip install deploydiff
+pip install git+https://github.com/Coding-Dev-Tools/deploydiff.git
deploydiff preview terraform/ --provider aws
```
Shows estimated monthly cost changes and blast radius before you apply.
**3. ConfigDrift** — detect config drift between environments
```bash
-pip install configdrift
+pip install git+https://github.com/Coding-Dev-Tools/configdrift.git
configdrift diff dev/ staging/ prod/ --format yaml
```
Catches when staging and prod configs diverge silently.
**4. Envault** — sync and rotate .env files
```bash
-pip install envault
+pip install git+https://github.com/Coding-Dev-Tools/envault.git
envault sync .env.production --from .env.staging
```
Diff, sync, and rotate env variables across environments.
diff --git a/drafts/schemaforge-tutorial-devto.md b/drafts/schemaforge-tutorial-devto.md
index 5a794ae..f55a696 100644
--- a/drafts/schemaforge-tutorial-devto.md
+++ b/drafts/schemaforge-tutorial-devto.md
@@ -1,6 +1,6 @@
# SchemaForge: The Only Schema Converter You'll Ever Need
-> Bidirectional schema conversion between 11 formats with zero-loss roundtripping — SQL, Prisma, Drizzle, TypeORM, Django, and more.
+> Bidirectional schema conversion between 11 formats — SQL, Prisma, Drizzle, TypeORM, Django, and more, with faithful shared-representation roundtripping.
---
@@ -20,7 +20,7 @@ SchemaForge solves this.
## What SchemaForge Does
-SchemaForge is a CLI tool (and VS Code extension) that converts between 11 schema formats **bidirectionally** with **zero-loss roundtripping**.
+SchemaForge is a CLI tool (and VS Code extension) that converts between 11 schema formats **bidirectionally**. The shared representation preserves tables, columns, types, defaults, indexes, unique constraints, and enums accurately; foreign-key constraints and ORM relationships require manual review after migration.
```bash
# Convert Prisma to SQL
diff --git a/drafts/show-hn-launch.txt b/drafts/show-hn-launch.txt
index 20691e9..3b41fbc 100644
--- a/drafts/show-hn-launch.txt
+++ b/drafts/show-hn-launch.txt
@@ -13,22 +13,22 @@ For the past few weeks, autonomous AI agents (CEO, Engineer, Marketer, Researche
**The result:** 11 production-ready CLI tools, available on GitHub:
1. **API Contract Guardian** — catch breaking OpenAPI changes in CI (3★)
-2. **json2sql** — convert JSON to SQL INSERT statements (PG/MySQL/SQLite) — on PyPI
+2. **json2sql** — convert JSON to SQL INSERT statements (PG/MySQL/SQLite)
3. **DeployDiff** — preview infra cost and blast radius before deploying
4. **ConfigDrift** — detect config drift between dev/staging/prod
5. **APIAuth** — encrypted keystore for API key lifecycle management
6. **APIGhost** — turn any OpenAPI spec into a running mock server
-7. **Envault** — sync, diff, and rotate .env files across environments — on PyPI
-8. **SchemaForge** — bidirectional ORM converter (6 formats) — on PyPI
+7. **Envault** — sync, diff, and rotate .env files across environments
+8. **SchemaForge** — bidirectional ORM converter (11 formats)
9. **click-to-mcp** — wrap any Click/Typer CLI as an MCP server
-10. **DeadCode** — detect unused exports, dead routes, orphaned CSS in React/Next.js — on PyPI
+10. **DeadCode** — detect unused exports, dead routes, orphaned CSS in React/Next.js
All tools are:
- Open source (Apache 2.0 / MIT)
- Documented with 32 tutorials at devforge.dev
- Built with zero human-written code (agent-to-agent collaboration)
- Designed for CI/CD pipelines (GitHub Actions workflows included)
-- Some on PyPI, some coming soon
+- All pip-installable from source — not yet on public PyPI
**The interesting part isn't the tools — it's how they were built.**
diff --git a/drafts/show-hn-schemaforge.md b/drafts/show-hn-schemaforge.md
index 9c7da57..1f845ea 100644
--- a/drafts/show-hn-schemaforge.md
+++ b/drafts/show-hn-schemaforge.md
@@ -1,7 +1,7 @@
# Show HN: SchemaForge — Bidirectional ORM Converter (11 formats, VS Code extension)
## Title Options
-- Show HN: SchemaForge – Convert between SQL, Prisma, Drizzle, TypeORM, Django, SQLAlchemy, GraphQL, and JSON Schema (11 formats, 110 direction pairs)
+- Show HN: SchemaForge – Convert between SQL, Prisma, Drizzle, TypeORM, Django, SQLAlchemy, GraphQL, and JSON Schema (11 formats, 100 conversion directions)
- Show HN: I got tired of rewriting ORM schemas, so I built a converter for 11 formats
- Show HN: SchemaForge – The only bidirectional ORM schema converter with a VS Code extension
@@ -11,9 +11,9 @@
I've been converting ORM schemas between formats for years. Every time we evaluate a new ORM, rewrite the schema. Every time we add a language to the monorepo, rewrite the schema. Every migration from Prisma to Drizzle, or Django to SQLAlchemy — manual rewrite.
-So I built SchemaForge: a CLI that converts between 11 schema formats with zero-loss roundtripping.
+So I built SchemaForge: a CLI that converts between 11 schema formats. The shared representation preserves tables, columns, types, defaults, indexes, unique constraints, and enums faithfully; foreign-key constraints and ORM relationship fields require manual review after migration.
-**Supported formats (11, 110 direction pairs):**
+**Supported formats (11, bidirectional):**
1. SQL DDL (CREATE TABLE)
2. Prisma schema (.prisma)
3. Drizzle ORM (TypeScript)
@@ -28,7 +28,7 @@ So I built SchemaForge: a CLI that converts between 11 schema formats with zero-
**Example:**
```bash
-pip install schemaforge
+pip install git+https://github.com/Coding-Dev-Tools/schemaforge.git
# Prisma → SQLAlchemy
schemaforge convert schema.prisma --from prisma --to sqlalchemy
diff --git a/drafts/twitter-threads.md b/drafts/twitter-threads.md
index 9e25147..a0786f9 100644
--- a/drafts/twitter-threads.md
+++ b/drafts/twitter-threads.md
@@ -14,7 +14,7 @@ I built a tool that makes it realize its true potential.
**Tweet 2**
Meet click-to-mcp — it auto-wraps any Python CLI as an MCP server.
-`pip install click-to-mcp`
+`pip install git+https://github.com/Coding-Dev-Tools/click-to-mcp.git`
`click-to-mcp serve your-cli`
That's it. Your CLI is now available to Claude Code, Cursor, and any MCP client.
@@ -77,7 +77,7 @@ DeadCode scans your codebase and reports:
TypeScript, JSX, TSX — all supported.
**Tweet 3**
-`pip install deadcode`
+`pip install git+https://github.com/Coding-Dev-Tools/deadcode.git`
`deadcode scan ./src`
Output is actionable — tells you exactly what to remove and which files to edit.
@@ -270,7 +270,7 @@ Full guide covers:
**Tweet 6**
The best part? click-to-mcp works with ANY Click/Typer CLI. No modifications needed. No boilerplate.
-`pip install click-to-mcp`
+`pip install git+https://github.com/Coding-Dev-Tools/click-to-mcp.git`
`click-to-mcp serve your-cli`
Your CLI is now an MCP server. Zero code changes.
diff --git a/index.html b/index.html
index c202d44..cbc0c40 100644
--- a/index.html
+++ b/index.html
@@ -25,8 +25,8 @@
-
-
+
+
@@ -235,7 +235,7 @@ Developer CLI Tools
that ship revenue
@@ -521,7 +521,7 @@
Install All 10 Tools at Once
- pip install git+https://github.com/Coding-Dev-Tools/devforge.git
+ pip install git+https://github.com/Coding-Dev-Tools/apiauth.git
@@ -680,7 +680,7 @@ Get Early Access
"name": "Why install from GitHub instead of PyPI?",
"acceptedAnswer": {
"@type": "Answer",
- "text": "pip install git+https://github.com/Coding-Dev-Tools/tool.git works perfectly and always gives you the latest version. These are pure Python packages  no compiled wheels needed. PyPI publishing is planned once the licensing system is finalized."
+ "text": "pip install git+https://github.com/Coding-Dev-Tools/apiauth.git works perfectly and always gives you the latest version. These are pure Python packages  no compiled wheels needed. PyPI publishing is planned once the licensing system is finalized."
}
},
{
@@ -727,7 +727,7 @@
Why install from GitHub instead of PyPI?
- pip install git+https://github.com/Coding-Dev-Tools/tool.git works perfectly and always gives you the latest version. These are pure Python packages  no compiled wheels needed. PyPI publishing is planned once the licensing system is finalized.
+ pip install git+https://github.com/Coding-Dev-Tools/apiauth.git works perfectly and always gives you the latest version. These are pure Python packages  no compiled wheels needed. PyPI publishing is planned once the licensing system is finalized.
What does "Open-source" mean?
diff --git a/quickstart.html b/quickstart.html
index d311b19..4bc2ddd 100644
--- a/quickstart.html
+++ b/quickstart.html
@@ -165,7 +165,7 @@ Pick your tool
🧹 DeadCode
-Want all 11? pip install git+https://github.com/Coding-Dev-Tools/devforge.git installs the entire suite. Use the git+https install method shown below — no account or token needed.
+Want all 11? pip install git+https://github.com/Coding-Dev-Tools/apiauth.git installs the entire suite. Use the git+https install method shown below — no account or token needed.
@@ -185,7 +185,7 @@ Install
python -m venv .venv && source .venv/bin/activate
# Install the full suite (all 11 tools, one command)
-pip install git+https://github.com/Coding-Dev-Tools/devforge.git
+pip install git+https://github.com/Coding-Dev-Tools/apiauth.git
# Or install individual tools
pip install git+https://github.com/Coding-Dev-Tools/api-contract-guardian.git
diff --git a/sitemap.xml b/sitemap.xml
index c0f8a8e..39ddac6 100644
--- a/sitemap.xml
+++ b/sitemap.xml
@@ -34,7 +34,7 @@
https://coding-dev-tools.github.io/devforge/quickstart.html
2026-05-17
- https://coding-dev-tools.github.io/revenueholdings.dev/blog/openapi-diff-tools-comparison.html
+ https://revenueholdings.dev/blog/openapi-diff-tools-comparison.html
2026-05-15
monthly
0.9
@@ -454,19 +454,19 @@
0.6
- https://coding-dev-tools.github.io/revenueholdings.dev/alternatives.html
+ https://revenueholdings.dev/alternatives.html
2026-05-15
monthly
0.9
- https://coding-dev-tools.github.io/revenueholdings.dev/quickstart.html
+ https://revenueholdings.dev/quickstart.html
2026-05-15
monthly
0.9
- https://coding-dev-tools.github.io/revenueholdings.dev/blog/clean-up-react-dead-code.html
+ https://revenueholdings.dev/blog/clean-up-react-dead-code.html
2026-05-15
monthly
0.6