The technology radar for the Sommerfeld.io GitHub organization. It provides an overview of technologies, tools, frameworks, and practices we use, assess, or have on our radar for future consideration.
The radar can also be customized to visualize your own technology landscape by providing a custom configuration file.
- sommerfeldio/tech-radar on Docker Hub
- GitHub Repository
- How to Contribute
- Where to file issues
- Project Board for Issues and Pull Requests
Note
This project represents a sort of PoC in regards to AI-assisted software development. The tech radar implementation (visualization, build scripts, and HTML/CSS/JS) is AI-generated. Adjacent code like pipelines, Dockerfile, etc. are not exclusively AI-generated. But the core tech radar code is generated completely by AI.
Learn about our tagging policy and the difference between rolling tags and immutable tags on our documentation page.
To run the image as-is with the default radar configuration (which contains the technologies we use at Sommerfeld.io), execute:
docker run --rm -it -p 8000:80 sommerfeldio/tech-radar:latestThe image comes in two variants:
- The
latestvariant serves the data from a pre-bundledradar-data.jsonfile or from a mountedradar-data.jsonfile. - The
latest-yaml2jsonvariant is a tool to convert aradar.ymlconfiguration file into the requiredradar-data.jsonformat.
To use a custom radar configuration, create a radar.yml file and populate it with your desired configuration.
---
title: "Tech Radar"
description: Your Technology Radar
copyright: "Copyright © sommerfeld.io" # optional
githubUrl: "https://github.com/<your-org>/<your-repo>" # optional
quadrants:
- name: "Languages, Frameworks and Tooling"
color: "#8e7cc3"
description: "Programming languages, frameworks, and libraries we use to build software"
- name: "Development and Delivery Practices"
color: "#6fa8dc"
description: "Methodologies, practices, and approaches for software development and delivery"
- name: "Platforms"
color: "#93c47d"
description: "Infrastructure platforms, cloud services, and deployment environments"
- name: "Infrastructure"
color: "#f6b26b"
description: "Tools, automation, and infrastructure management solutions"
rings:
- name: "Adopt"
description: "Technologies we have high confidence in and use in production"
color: "#6fae5e"
- name: "Trial"
description: "Technologies worth pursuing, being used successfully in some projects"
color: "#d4b636"
- name: "Assess"
description: "Technologies worth exploring to understand their potential"
color: "#e89850"
- name: "Hold"
description: "Technologies to proceed with caution or phase out"
color: "#c76b6b"
technologies:
- name: "Grafana k6"
quadrant: "Infrastructure"
ring: "Assess"
- name: "Arch Linux"
quadrant: "Platforms"
ring: "Adopt"
- name: "TDD"
quadrant: "Development and Delivery Practices"
ring: "Trial"
- name: "Java"
quadrant: "Languages, Frameworks and Tooling"
ring: "Hold"Transform the radar.yml file into JSON by running the following command in the folder where the radar.yml file is located:
docker run --rm -it -u "$(id -u):$(id -g)" \
--volume "$(pwd)/radar.yml:/src/radar/radar.yml" \
--volume "$(pwd):/src/radar/public" \
sommerfeldio/tech-radar:latest-yaml2jsonMount the generated radar-data.json file into the container to run the radar with your custom configuration:
docker run --rm -it --volume "$(pwd)/radar-data.json:/usr/share/nginx/html/radar-data.json" -p 8000:80 sommerfeldio/tech-radar:latestTHe radar.yml file is not required to be present when running the radar, only the generated radar-data.json file. But the radar.yml file allows for easier editing and is the foundation for generating the radar-data.json file.
Build and serve the radar (starts server on http://localhost:8080):
task radar:runFeel free to contact me via sebastian@sommerfeld.io or raise an issue in this repository.