Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .devcontainer/additions/install-dev-php-laravel.sh
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ PACKAGES_PYTHON=()
PACKAGES_PWSH=()

# VS Code extensions (PHP/Laravel-specific only)
# Note: For database management and API testing, install: install-tool-dev-utils.sh
# Note: For database management and API testing, install: install-tool-sql-rest.sh
EXTENSIONS=(
"PHP Intelephense (bmewburn.vscode-intelephense-client) - Advanced PHP language support with IntelliSense"
"PHP Debug (xdebug.php-debug) - Debug PHP applications using Xdebug"
Expand Down Expand Up @@ -315,7 +315,7 @@ post_installation_message() {
echo " - Use port 8000 in browser (Vite runs in background)"
echo
echo "Optional: Install database and API testing tools:"
echo " .devcontainer/additions/install-tool-dev-utils.sh"
echo " .devcontainer/additions/install-tool-sql-rest.sh"
echo " (Installs SQLTools for databases and REST Client for API testing)"
echo
echo "Docs: https://laravel.com/docs/12.x"
Expand Down
2 changes: 1 addition & 1 deletion .devcontainer/additions/install-tool-kubernetes.sh
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ SCRIPT_ABSTRACT="Kubernetes development tools with kubectl, k9s terminal UI, and
SCRIPT_LOGO="tool-kubernetes-logo.webp"
SCRIPT_WEBSITE="https://kubernetes.io"
SCRIPT_SUMMARY="Kubernetes development toolkit including kubectl CLI for cluster management, k9s terminal UI for interactive cluster exploration, Helm for package management, and VS Code Kubernetes extension. Sets up .devcontainer.secrets for secure kubeconfig storage."
SCRIPT_RELATED="tool-iac tool-azure-dev tool-dev-utils"
SCRIPT_RELATED="tool-iac tool-azure-dev tool-sql-rest"

# Commands for dev-setup.sh menu integration
SCRIPT_COMMANDS=(
Expand Down
Original file line number Diff line number Diff line change
@@ -1,46 +1,44 @@
#!/bin/bash
# file: .devcontainer/additions/install-tool-dev-utils.sh
# file: .devcontainer/additions/install-tool-sql-rest.sh
#
# Installs general development utilities useful across multiple programming languages.
# These tools are language-agnostic and can be used with PHP, Python, Node.js, Java, C#, etc.
# For usage information, run: ./install-tool-dev-utils.sh --help
# Installs SQL database management (SQLTools) and REST API testing (REST Client)
# VS Code extensions. Language-agnostic tools useful for any backend project.
# For usage information, run: ./install-tool-sql-rest.sh --help
#
#------------------------------------------------------------------------------
# CONFIGURATION - Modify this section for each new script
#------------------------------------------------------------------------------

# --- Script Metadata ---
SCRIPT_ID="tool-dev-utils"
SCRIPT_ID="tool-sql-rest"
SCRIPT_VER="0.0.1"
SCRIPT_NAME="Development Utilities"
SCRIPT_DESCRIPTION="Database management (SQLTools), API testing (REST Client), and container management (Docker) for multi-language development"
SCRIPT_NAME="SQL & REST Tools"
SCRIPT_DESCRIPTION="Database management (Database Client) and REST API testing (REST Client) for multi-language development"
SCRIPT_CATEGORY="INFRA_CONFIG"

# NOTE: We check only the primary extension (SQLTools) instead of all extensions
# NOTE: We check only the primary extension (Database Client) instead of all extensions
# to avoid tight coupling between SCRIPT_CHECK_COMMAND and the EXTENSIONS array.
# This makes the script more maintainable - if someone adds/removes extensions,
# they don't need to update this check. The extension installer is idempotent anyway.
SCRIPT_CHECK_COMMAND="code --list-extensions 2>/dev/null | grep -q 'mtxr.sqltools'"
SCRIPT_CHECK_COMMAND="code --list-extensions 2>/dev/null | grep -q 'cweijan.vscode-database-client2'"

# --- Extended Metadata (for website documentation) ---
SCRIPT_TAGS="database sql docker containers rest http utilities"
SCRIPT_ABSTRACT="Development utilities for database management, API testing, and Docker container management."
SCRIPT_LOGO="tool-dev-utils-logo.webp"
SCRIPT_WEBSITE="https://vscode-sqltools.mteixeira.dev"
SCRIPT_SUMMARY="Language-agnostic development utilities including SQLTools for database management (MySQL, PostgreSQL, SQLite, MSSQL, MongoDB), REST Client for HTTP API testing, and Docker extension for container, image, and volume management."
SCRIPT_TAGS="database sql rest http api mongodb redis"
SCRIPT_ABSTRACT="SQL/NoSQL database management and REST API testing tools for VS Code."
SCRIPT_LOGO="tool-sql-rest-logo.webp"
SCRIPT_WEBSITE="https://database-client.com"
SCRIPT_SUMMARY="Language-agnostic VS Code extensions: Database Client by cweijan for database management (MySQL, PostgreSQL, SQLite, MSSQL, MongoDB, Redis, ClickHouse, ElasticSearch — all drivers bundled, no separate driver install) and REST Client for HTTP API testing. Docker CLI is provided by the devcontainer feature — no separate install needed."
SCRIPT_RELATED="tool-api-dev tool-kubernetes"

# Commands for dev-setup.sh menu integration
SCRIPT_COMMANDS=(
"Action||Install development utilities||false|"
"Action|--uninstall|Uninstall development utilities||false|"
"Action||Install SQL & REST tools||false|"
"Action|--uninstall|Uninstall SQL & REST tools||false|"
"Info|--help|Show help and usage information||false|"
)

# System packages
PACKAGES_SYSTEM=(
"docker.io" # Docker CLI for container management
)
# System packages (none — Docker CLI is provided by devcontainer feature)
PACKAGES_SYSTEM=()

# Node.js packages
PACKAGES_NODE=()
Expand All @@ -50,9 +48,8 @@ PACKAGES_PYTHON=()

# VS Code extensions
EXTENSIONS=(
"SQLTools (mtxr.sqltools) - Database management and SQL query tool for MySQL, PostgreSQL, SQLite, MSSQL, MongoDB"
"Database Client (cweijan.vscode-database-client2) - Database management for MySQL, PostgreSQL, SQLite, MSSQL, MongoDB, Redis, ClickHouse, ElasticSearch — all drivers bundled"
"REST Client (humao.rest-client) - Send HTTP requests and view responses directly in VS Code"
"Docker (ms-azuretools.vscode-docker) - Manage containers, images, volumes, networks, and Dockerfiles"
)

#------------------------------------------------------------------------------
Expand Down Expand Up @@ -83,16 +80,14 @@ post_installation_message() {
echo "🎉 Installation complete!"
echo
echo "Quick start:"
echo " - Test Docker: docker ps"
echo " - Docker UI: Click Docker icon in VS Code sidebar"
echo " - SQLTools: Click database icon in VS Code sidebar"
echo " - REST Client: Create .http file and write HTTP requests"
echo " - Database Client: Click database icon in VS Code sidebar, then 'Create Connection'"
echo " (Drivers for MySQL, PostgreSQL, SQLite, MSSQL, MongoDB, Redis are bundled)"
echo " - REST Client: Create .http file and write HTTP requests"
echo
echo "Example .http file:"
echo " GET https://api.github.com/users/octocat"
echo
echo "Docs: https://marketplace.visualstudio.com/items?itemName=ms-azuretools.vscode-docker"
echo " https://marketplace.visualstudio.com/items?itemName=mtxr.sqltools"
echo "Docs: https://marketplace.visualstudio.com/items?itemName=cweijan.vscode-database-client2"
echo " https://marketplace.visualstudio.com/items?itemName=humao.rest-client"
echo
}
Expand Down
85 changes: 56 additions & 29 deletions .devcontainer/manage/tools.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"version": "1.0.0",
"generated": "2026-03-20T17:55:40+01:00",
"generated": "2026-04-08T13:07:55+02:00",
"tools": [
{
"id": "dev-ai-claudecode",
Expand Down Expand Up @@ -325,6 +325,33 @@
},
"extensions": ["esbenp.prettier-vscode", "dbaeumer.vscode-eslint"]
}
,
{
"id": "fwk-docusaurus",
"version": "0.1.0",
"type": "install",
"file": "install-fwk-docusaurus.sh",
"name": "Docusaurus",
"description": "Installs a Docusaurus documentation site with GitHub Pages deployment.",
"category": "FRAMEWORKS",
"tags": ["docusaurus static-site-generator ssg framework web documentation react"],
"abstract": "Docusaurus documentation site with TypeScript, Mermaid, local search, and GitHub Pages CI/CD.",
"logo": "fwk-docusaurus-logo.webp",
"website": "https://docusaurus.io",
"summary": "Installs a complete Docusaurus 3.x documentation site in website/ with TypeScript configuration, Mermaid diagram support, local search, image zoom, auto-generated sidebars, and a GitHub Actions workflow for deploying to GitHub Pages.",
"related": ["fwk-hugo"],
"checkCommand": "[ -d /workspace/website ]",
"packages": {
"system": [],
"node": [],
"python": [],
"cargo": [],
"go": [],
"powershell": [],
"dotnet": []
},
"extensions": ["unifiedjs.vscode-mdx", "eliostruyf.vscode-front-matter"]
}
,
{
"id": "fwk-hugo",
Expand Down Expand Up @@ -568,33 +595,6 @@
},
"extensions": ["databricks.databricks", "ms-toolsai.jupyter", "ms-python.python", "ms-python.vscode-pylance", "redhat.vscode-yaml", "humao.rest-client"]
}
,
{
"id": "tool-dev-utils",
"version": "0.0.1",
"type": "install",
"file": "install-tool-dev-utils.sh",
"name": "Development Utilities",
"description": "Database management (SQLTools), API testing (REST Client), and container management (Docker) for multi-language development",
"category": "INFRA_CONFIG",
"tags": ["database sql docker containers rest http utilities"],
"abstract": "Development utilities for database management, API testing, and Docker container management.",
"logo": "tool-dev-utils-logo.webp",
"website": "https://vscode-sqltools.mteixeira.dev",
"summary": "Language-agnostic development utilities including SQLTools for database management (MySQL, PostgreSQL, SQLite, MSSQL, MongoDB), REST Client for HTTP API testing, and Docker extension for container, image, and volume management.",
"related": ["tool-api-dev tool-kubernetes"],
"checkCommand": "code --list-extensions 2>/dev/null | grep -q mtxr.sqltools",
"packages": {
"system": ["docker.io"],
"node": [],
"python": [],
"cargo": [],
"go": [],
"powershell": [],
"dotnet": []
},
"extensions": ["mtxr.sqltools", "humao.rest-client", "ms-azuretools.vscode-docker"]
}
,
{
"id": "tool-iac",
Expand Down Expand Up @@ -636,7 +636,7 @@
"logo": "tool-kubernetes-logo.webp",
"website": "https://kubernetes.io",
"summary": "Kubernetes development toolkit including kubectl CLI for cluster management, k9s terminal UI for interactive cluster exploration, Helm for package management, and VS Code Kubernetes extension. Sets up .devcontainer.secrets for secure kubeconfig storage.",
"related": ["tool-iac tool-azure-dev tool-dev-utils"],
"related": ["tool-iac tool-azure-dev tool-sql-rest"],
"checkCommand": "command -v kubectl >/dev/null 2>&1 || command -v k9s >/dev/null 2>&1 || command -v helm >/dev/null 2>&1",
"packages": {
"system": [],
Expand Down Expand Up @@ -730,6 +730,33 @@
},
"extensions": ["ms-vscode.powershell"]
}
,
{
"id": "tool-sql-rest",
"version": "0.0.1",
"type": "install",
"file": "install-tool-sql-rest.sh",
"name": "SQL & REST Tools",
"description": "Database management (Database Client) and REST API testing (REST Client) for multi-language development",
"category": "INFRA_CONFIG",
"tags": ["database sql rest http api mongodb redis"],
"abstract": "SQL/NoSQL database management and REST API testing tools for VS Code.",
"logo": "tool-sql-rest-logo.webp",
"website": "https://database-client.com",
"summary": "Language-agnostic VS Code extensions: Database Client by cweijan for database management (MySQL, PostgreSQL, SQLite, MSSQL, MongoDB, Redis, ClickHouse, ElasticSearch — all drivers bundled, no separate driver install) and REST Client for HTTP API testing. Docker CLI is provided by the devcontainer feature — no separate install needed.",
"related": ["tool-api-dev tool-kubernetes"],
"checkCommand": "code --list-extensions 2>/dev/null | grep -q cweijan.vscode-database-client2",
"packages": {
"system": [],
"node": [],
"python": [],
"cargo": [],
"go": [],
"powershell": [],
"dotnet": []
},
"extensions": ["cweijan.vscode-database-client2", "humao.rest-client"]
}
,
{
"id": "config-ai-claudecode",
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ Done! The container starts in seconds. Run `dev-setup` to install tools.
| **Cloud & Infrastructure Tools** | API, Azure Dev, Azure DevOps CLI, Azure Ops, Okta, Power Platform |
| **Data & Analytics Tools** | Data Analytics, Databricks |
| **Background Services & Daemons** | Nginx Reverse Proxy, OpenTelemetry Monitoring |
| **Infrastructure & Configuration** | Dev Utilities, Terraform, Ansible, Kubernetes |
| **Infrastructure & Configuration** | Terraform, Ansible, Kubernetes, SQL & REST |
| **Contributor Tools** | Image Processing |
| **Frameworks & Standalone Binaries** | Docusaurus, Hugo Extended |

Expand Down
2 changes: 1 addition & 1 deletion version.txt
Original file line number Diff line number Diff line change
@@ -1 +1 @@
1.7.32
1.7.33
Loading
Loading