A standardized toolkit like this delivers value for both management and developers: it ensures consistent, compliant environments that reduce onboarding time, minimize configuration errors, and support reliable software delivery. Management benefits from improved governance, easier tracking, and integrated security, while developers gain faster setup, fewer environment-related bugs, and streamlined workflows. This alignment accelerates productivity and quality across the team.
Follow these steps to set up your development environment using the repository's project files. This guide covers both local and containerized workflows.
- Windows 10/11 (recommended)
- PowerShell (latest)
- .NET 8/9 SDK
- Visual Studio 2022 (any edition)
- Git Client
- Docker Desktop (for container workflows)
- SQL Server Instance (local or containerized)
Optional but recommended:
- Visual Studio Code
- SQL Server Management Studio
- Azure CLI & Functions Core Tools
- Postman, Bruno, LINQPad, JetBrains Toolbox, Notepad++
git clone https://github.com/AGameEmpowerment/Developer-Toolbox.git
cd Developer-ToolboxRun as administrator:
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope LocalMachine
Set-ExecutionPolicy -ExecutionPolicy Unrestricted -Scope CurrentUserUse winget to install dependencies:
winget install Microsoft.DotNet.SDK.8
winget install Microsoft.DotNet.SDK.9
winget install Microsoft.PowerShell
winget install Git.Git
winget install Docker.DockerDesktop
winget install Microsoft.VisualStudio.2022.Community
winget install Microsoft.SQLServer.2022.ExpressRun the setup script to start Docker containers and dependencies:
./docker_setup.ps1This will:
- Build and start all containers defined in
containers/docker-compose-common.yml - Set up SQL Server, Service Bus, smtp4dev, and other local services
- Prepare example files and mappings for local use
To stop containers:
./docker_down.ps1Open the solution in Visual Studio and build to restore NuGet packages.
To initialize the database:
- Build and publish the
Database.Exampleproject using the profileStartupExample.Docker.publish.xml(default password:P@ssword123!). - Connection strings are managed in
appsettings.json.
⚠️ Security Warning: The default passwordP@ssword123!is provided for local development environments only and must never be used in production. Always use strong, unique passwords and secure credential management solutions (e.g., Azure Key Vault, HashiCorp Vault) for production deployments.
After building and initializing the database, you can run any application in the solution as needed.
For reproducible environments and easy onboarding:
- Install Docker Desktop and Visual Studio Code.
- Install the VS Code extension:
ms-vscode-remote.remote-containers. - Open the project folder in VS Code and select "Reopen in Container".
- The devcontainer will build and start all required services automatically.
- If containers fail to start, ensure Docker Desktop is running and you have sufficient resources.
- For database issues, check SQL Server logs in the container or local instance.
- Use
Delete_Old_Git_Tags.ps1to clean up old Git Repo tags if needed. - Use
Delete_Old_Docker_Tags.ps1to clean up old Docker images/tags if needed. - For advanced configuration, review files in
containers/,devops/, andterraform/.
This guide provides a clear, step-by-step process for setting up your development environment using the repository's scripts and container files. For further details, see documentation in the devops/ and containers/ folders.