Skip to content

spacecodee/software-development-tools

Repository files navigation

Software Development Tools (Docker)

This project centralizes essential software development tools using Docker.

Included Tools

  • PostgreSQL 18.3: Primary database.
  • pgAdmin 4: Web interface for managing PostgreSQL.
  • SonarQube Server 2026.2.1: Code quality and security platform.
  • Mailpit: SMTP testing server and web UI for email sandboxing.

Initial Setup

  1. Generate Credentials: Run the configuration script to generate random usernames and secure passwords in your .env file:

    ./scripts/setup-env.sh
  2. SonarQube Requirement (Host): SonarQube uses Elasticsearch, which requires the host system's vm.max_map_count parameter to be at least 262144.

    On Linux, you can set it temporarily with:

    sudo sysctl -w vm.max_map_count=262144

    To make it permanent, add vm.max_map_count=262144 to /etc/sysctl.conf.

  3. Start the Services:

    docker compose up -d
  4. Configure SonarQube Admin Password: Once the containers are running, you can automatically change the default admin/admin password to the secure one defined in .env:

    ./scripts/configure-sonar.sh

Access

Security

  • The .env file contains actual credentials and is ignored by git.
  • The .env.example file contains the required structure.
  • The setup-env.sh script generates random users (at least 10 characters) and secure passwords (24 characters).

Skills Management

To install project-specific skills, use the provided script:

./scripts/install-skills.sh

This script uses the official skills.sh syntax to add tools directly to the project.

MCP Servers

This project includes configurations for Model Context Protocol (MCP) servers.

Context7

Context7 provides up-to-date documentation and code examples for programming libraries.

  • Setup: Runs via local wrapper script (./scripts/mcp-context7.sh) that reads CONTEXT7_API_KEY from .env and passes it to npx @upstash/context7-mcp.
  • Environment Variable: Ensure CONTEXT7_API_KEY is set in your .env file (see .env.example).
  • Usage: Referenced in opencode.json.example, .mcp.json.example, .gemini/settings.json.example, and .copilot/mcp-config.json.example.

SonarQube

Allows the agent to interact with SonarQube for code quality and security analysis.

  • Setup: Runs via local wrapper script (./scripts/mcp-sonarqube.sh) that manages Docker execution and token retrieval from .env.
  • Usage: Referenced in .mcp.json.example and .gemini/settings.json.

About

Automated local dev stack with PostgreSQL, SonarQube, and Mailpit via Docker. Includes built-in MCP server support for AI-assisted development.

Topics

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages