tedivm - Overview

Robert Hafner's Projects

Terraform in Depth

My book, Terraform in Depth, is available from Manning Publications! Whether you're brand new to Terraform or are looking to take your team to the next level this book will have something for you.

Open Source Portfolio

Here's a selection of projects that I've open sourced over the years. There's a variety of applications, infrastructure as code modules, libraries from various languages, and even some game development.

These 60 repositories have 773 forks, 4101 stars, 224 watchers, and 5799 commits.

My professional history can be found on LinkedIn.

Project Templates

Favorites

Applications

Multi-Py

Multi-Py is a collection of python images with amd64, arm64, and arm v7 support.

Python Development

These tools were specifically designed to make development with Python easier.

  • Python Lockfile Update Python Lockfile Update - A Github Action that uses pip-tools to update a project's requirements.txt files using a Pull Request.

Libraries

Digital Art

CLIs

Terraform

Puppet

Misc

Screeps

Screeps is an an open-source sandbox MMO RTS game for programmers, wherein the core mechanic is programming your units' AI.

  • Quorum Quorum - The Quorum project is an experiment that uses Screeps, GitConsensus, and the ScreepsAutoSpawner to see what happens when the community has to vote to accept new pull requests- and any vote that passes gets pulled. It initially started as being written primarily by me and overtime has gotten more community involvement.
  • ScreepsAutoSpawner ScreepsAutoSpawner - This program checks the Screeps world to see if the player is still alive, and if not it automatically respawns them into the world. This requires scanning the world to find appropriate locations, scoring them, and then placing the first spawn automatically in the selected room.
  • ScreepsDashboard ScreepsDashboard - This dashboard was created for the Quorum project and lets the public view all of the otherwise hidden Screeps player information. This application exposed wallet, memory, segment, and console data (which gets stored in ElasticSearch to allow querying of historic data).
  • python-screeps python-screeps - This library was the first third party library for the Screeps API and has been responsible for spawning a large third party ecosystem.
  • screeps_console screeps_console - This ncurses based terminal application provides a standalone console for the Screeps world.
  • screeps_notify screeps_notify - This bridges the Screeps world with the real world by allowing users to send notifications programmatically from in game to a number of providers, including Text Messages and Slack Notifications.
  • screeps-stats screeps-stats - Using a reverse engineered API this project takes data saved inside the game “Screeps”, transforms it and injects it into elasticsearch.
  • Spawn1 Spawn1 - This is a mobile client for the Screeps game built using NativeScript. It has a built in messenger, profiles of different alliances, a websocket based console for interacting with the system, and other informational pages such as the wallet and market order pages.
  • screepsmod-konami screepsmod-konami - Konami is a Screeps Server mod that changes the world settings to allow AI to grow significantly faster. This makes development easier as longer term issues will show up in smaller amounts of time.
  • screeps-backup screeps-backup - This tool takes a backup of an existing account's memory and segments and provides the ability to restore from those backups.