Matthew Dean Martin

Pythonist, Devops Engineer, and Govtech Specialist
Herndon, Virginia, USA
Mastodon | BlueSky | LinkedIn | Github

Projects using Python

ai_fish_tank

Fish tank that has a story going on

#aquarium #artificial-intelligence #game #interactive-fiction #simulation #storytelling #Python
ai_shell

OpenAI-centric shell for giving safe, chat-optimized, filesystem access to an Assistant as a "tool"

#openai-api #openai-assistant-api #openai-chatgpt #Python
always_free

AWS app framework that uses only the always-free tier

#Python
bash2gitlab

Compile bash to yaml pipelines to get IDE support for bash and import bash from template repos

#gitlab #gitlab-ci #Python
basic_python

BASIC interpreter written in python

#basic #basic-programming #Python
bitrab

A pipeline runner that runs Gitlab syntax pipelines without docker or admin rights. Minimal feature set.

#automation #ci #devops #gitlab #minimalism #no-docker #pipeline #Python
bug_trail

local static html error logger to use while developing python code

#development #error-logging #html #local-development #logging #python #static-site #Python
bug_trail_core

The error/log collecting part of bug_trail a sqlite-back logging tool for python apps

#bug-tracking #error-handling #logging #python #software-development #sqlite #utility #Python
c7n_make

An opinionated Cloud Custodian build script with examples

#automation #aws #cloud-custodian #devops #infrastructure-as-code #scripts #Python
caniuseonlywheels

Can I use only wheels and not insecure sdist?

#pip #pipenv #safety #wheels #Python
cheese_grader

Safely evaluate 3rd party library quality. Detect garbage. Sometimes detect goodness.

#Python
cli_tool_audit

Verify that a list of cli tools are available. Like a requirements.txt for cli tools, but without an installer component.

#package-management #tools #Python
dashc

Compile your code into a `python -c "..."` string executable in shell without filesystem access.

#cli-tools #code-compiler #executable #programming #python #shell #no-filesystem-access #Python
dedlin

Clone of edlin with improvements to make it into more of a DSL

#editor #edlin #line-editor #Python
disemoji

Make pretty disassembly visualizations. Not especially practical.

#artistic #assembly-language #disassembly #educational #graphics #programming #visualization #Python
examexam

Exam practice with LLM (AI) integrations

#ai #education #exam #llm #practice #Python
falling_food

Food falls and you catch it! Pygame game

#pygame #pygame-games #game #Python
fermi_problems

A game to see how good you are at solving order of magnitude estimation problems

#estimation #fermi-problems #game #interactive #learning #math #python #Python
find_known_secrets

Scan for known secrets in your source code before you check in

#data-protection #devops #git #scanning #secrets #security #source-code #Python
gh_status

summarize gihub activity for an llm

#activity #automation #data-analysis #github #llm #machine-learning #summarization #Python
git_help

attempting to do common git things with python as a learning exercise

#git #version-control #Python
git_mirror

Clone all your github repos and call pull on them.

#automation #clone #git #github #repository #version-control #Python
gizskyon

SMBC Numerology Comic Solution (ChatGPT did the hard work)

#Python
hermetic

run a python tool with certain APIs disabled

#cli-tool #configuration #development-tools #python #security #Python
hissbytenotation

Library to make it easy to use python literal syntax as a data format

#data-format #data-representation #library #programming #python #serialization #literal-syntax #Python
interview_challenges

All my leet code and interview challenges. This will become private after my job search is over.

#algorithm #coding-challenges #data-structures #interview-preparation #job-search #leetcode #software-engineering #Python
is_it_up

check if machine or service on remote machine is up primarily to be used as a library

#Python
isopod_django

Trivial text adventure game using Django REST API

#Python
jiggle_version

Opinionated, no config build version incrementer. No regex. Drop in and go.

#automation #build-tools #deployment #incrementer #no-config #software-development #versioning #Python
kata-python

Short python exercises you could do over and over

#algorithm #coding #development #exercises #kata #practice #python #Python
keepanauthorsfile

Keep an Author's file - parsing and generating AUTHORS files

#authors #code-management #documentation #file-parsing #git #python #N/A
keno

Maryland Keno simulations

#Python
kids_kata

Some coding exercises for teach very young kids to write code

#beginners #children #coding-exercises #education #kids #learning #programming #Python
mainframer

Suite of tools in python for gnucobol, gcobol development

#gnucobol #gcobol #cobol #Python
markmodule

Import python from markdown files.

#Python
markpickle

Lossy serialization of markdown to python and back

#data-conversion #markdown #python #serialization #text-processing #markpickle #Python
mastodon-finder

Find people to follow on mastodon.

#mastodon #mastodon-py #social-media #Python
metametameta

Generate dunder metadata file with __title__, __author__, etc. Also tools to discover these in other packages.

#python #python-metadata #Python
naive_backlink

Uncoordinated, accidental identity and trust. Because Alice and Bob are foreign state actors and this is better than nothing..

#identity #backlinks #web-crawling #Python
openmock

Python Opensearch Mock for test purposes (fork of elasticmock)

#development #mocking #opensearch #testing #elasticmock #Python
paipi

Pypi search, except the backend is an LLM's pixelated memory of Pypi.

#code-generation #llm-search #pypi #python-packaging #Python
pep541status

Gather info for pep 541 involuntary pypi account transfer

#Python
pick_three

Simulate Maryland Pick 3 Lotto Game

#Python
pyanide

tools for killing threads and making sure they stay that way

#concurrency #multithreading #python #software-development #thread-safety #utils #kill-threads #Python
pycodetags

PEP350 Code Tags. Data in your comments.

#codetags #pep-350 #pep350 #pycodetags #Python
pydoc_fork

Run pydoc on a build server to generate API docs

#docstrings #pydoc #python #Python
pypi_librarian

object oriented API client for pypi's various metadata APIs

#metadata #object-oriented #pypi #python #Python
python3

Hack to handle a missing alias/symlink, for example when you're on windows or don't want to be bothered

#alias #cross-platform #file-management #python #symlink #utilities #windows #Python
racetrax

Simulator and tools for Racetrax(TM)- A computer based lotto game in MD, DC and other places

#Python
random_names

Convert int to random name, like tree_dance and convert it back to same int.

#algorithm #data-encoding #integer-to-string #name-generation #python #random-names #string-to-integer #Python
raypack

Unofficial AWS Glue Ray.io packaging tool. Pure python or cross platform.

#Python
recython

use ai to assist in turning ordinary python into cython python

#ai #code-assistance #cython #performance #programming #python #Python
safe_run

Generate docker syntax to run a pypi package safely

#containerization #development-tools #docker #package-management #pypi #python #safety #HTML
skip_trace

Who owns your dependencies

#pypi #supply-chain-security #Python
smbc_scraper

Collect raw data from smbc comics for noble causes, such as machine learning.

#comics #data #data-collection #machine-learning #python #web-scraping #Python
so_pip

Turn an answer on StackOverflow into a python package you can vendorize

#stackoverflow #pypi #python #packaging-python #vendoring #Python
sparkle_log

Write a spark line graph of CPU, Memory, etc to the python log

#cpu #data-visualization #logging #memory #performance-monitoring #python #sparkline #Python
swimming_game

A two player rythm game.

#game #html5 #multiplayer #music #rhythm-game #two-player #Python
termcolor

Fork of termcolor, a two function library for printing colored text to your terminal

#Python
tkstatistics

stdlib-only statistical app backed only by what is available in the python stdlib

#data-analysis #statistical-models #statistics #Python
totalhelp

View help for all commands and subcommands for arbitrary commands or augment your app to do so.

#automation #cli-tools #command-line #documentation #help #user-guide #application-augmentation #Python
troml_dev_status

Project inspired by troml to suggest a Development Status based solely on objective criteria.

#development-status #python-packaging #trove-classifiers #Python
untruncate_json

Python library to repair truncated json. Translated directly from the typescript original version

#data-processing #data-repair #json #library #python #typescript #truncated-json #Python
useful_scripts

Generic scripts useful for software development in a CLI/TUI context

#automation #cli #command-line #scripts #software-development #tui #utilities #Python
vacay

Unknown expected value vacation themed lotto scratcher

#gaming #lotto #recreation #scratcher #vacation #game #Python
whats_that_code

detect programming language of source in pure python from an ensemble of classifiers

#data-science #ensemble-classifiers #machine-learning #natural-language-processing #python #source-code-analysis #programming-language-detection #Python
whose_module

Find what package on pypi has a module you want to import

#Python
xkcd_random

Drop in replacement for python's random module using the xkcd-221 algorithm

#python #random #xkcd #novelty #Python
ai-shell PyPI

Filesystem Shell interface that an OpenAI Assitant can use as a tool.

#openai #chatgpt
awscli-local-win PyPI

Thin wrapper around the 'aws' command line interface for use with LocalStack *for Windows*.

#aws #localstack #cli #windows
bash2gitlab PyPI

Compile bash to gitlab pipeline yaml

#bash #gitlab
bitrab PyPI

Compile bash to gitlab pipeline yaml

#bash #gitlab
bug-trail PyPI

Local static html error logger to use while developing python code.

#error #logging #html #log #report
bug-trail-core PyPI

Local static html error logger to use while developing python code.

#error #logging #html #log #report
caniuseonlywheels PyPI

Can I switch to installing only using wheels and never sdist?

#supply-chain #wheels
cli-tool-audit PyPI

Audit for existence and version number of cli tools.

#cli #tooling #version #numbers
cli_tool_audit PyPI

Audit for existence and version number of cli tools.

#cli #tooling #version #numbers
dashc PyPI

Tool to generate python -c bash as if it were a package format.

#bash #packaging
dedlin PyPI

Line editor, edlin clone with many improvements

#editor #edlin #line #editor
examexam PyPI

Let LLM generate tests, validate test, and then you take them. Useful for certs.

git-mirror PyPI

Make your local git repos look like github or gitlab. See readme for how this differs from the many other multi-repo tools.

#git #gitlab #github #polyrepo
hermetic-seal PyPI

User-space sandbox runner for Python console scripts

hissbytenotation PyPI

Serialize and deserialize data to python source notation (hbn)

#serializer #deserializer #hbn
jiggle-version PyPI

Increment version number found in source code without regex

#version #version-numbers
mainframer PyPI

GnuCOBOL environment and package manager.

#cobol #gnucobol
markdown-to-json PyPI

Markdown to dict and json deserializer

#serializer #deserializer #markdown
markmodule PyPI

Import python code in markdown as module

#markdown
markpickle PyPI

Lossy python to markdown serializer

#serializer #deserializer #markdown
mastodon-finder PyPI

Search for mastodon profiles, use mechanical and LLM filtering.

#mastodon
metametameta PyPI

Generate __about__.py with dunder meta.

#metadata #packaging
navio-builder-win PyPI

navio-builder, without sh dependency, works on windows.

#devops #build #tool
openmock PyPI

Python OpenSearch Mock for test purposes

#mocking #opensearch #testing
pyanide PyPI

Tools for killing processes and keeping them dead.

#kill #exit
pycodetags PyPI

TODOs in source code as a first class construct, follows PEP350

#FIXME #TODO #code-tag #code-tags #codetag #codetags #pep-350 #pep350 #pycodetags
pycodetags-issue-tracker PyPI

Plugin for pycodetags to track issues, e.g. bugs, TODO, etc in your code

#FIXME #TODO #code-tag #code-tags #codetag #codetags #pep-350 #pep350 #pycodetags
pydoc-fork PyPI

Fork of cpython's pydoc module to do just html document generation

#pydoc #html #documentation
pypi-librarian PyPI

Pypi metadata client. Client for metadata related API endpoints for Pypi.

#pypi #package #metadata
python3-alias PyPI

Hack to deal with a missing python3 alias on Windows

#python3 #alias
random-names PyPI

Convert int to random name, like tree_dance and convert it back to same int.

#mneumonic #pseudorandom #name-generator
raypack PyPI

Unofficial AWS Glue Ray.io packaging tool. Pure python or cross platform.

#awsglue #ray.io #aws #glue
skip-trace PyPI

Ownership Attribution for Python Packages

#PEP #541 #PyPI #maintainers #package #owners #package #provenance #software #supply #chain
so-pip PyPI

Generate packages from Stackoverflow answers

#packaging #stackoverflow
sparkle-log PyPI

Write sparkline graphs of CPU and memory usage to your logs.

#monitoring #logging
termcolor-whl PyPI

ANSI Color formatting for output in terminal, fork of termcolor, maintained as of 2023 by Matthew Martin

#terminals #ansi
terminaltables-whl PyPI

Generate simple tables in terminals from a nested list of strings. (has wheels!)

#Shell #Bash #ANSI #ASCII #terminal #tables
terminaltables3 PyPI

Generate simple tables in terminals from a nested list of strings. Fork of terminaltables.

#Shell #Bash #ANSI #ASCII #terminal #tables
totalhelp PyPI

Print help for all commands and subcommands for argparse applications

troml-dev-status PyPI

Objectively infer PyPI Development Status classifiers from code and release artifacts.

#development #status #python #packaging #trove #classifiers
whats-that-code PyPI

Guess programming language from a string or file.

#language #detection #programming #language #detection
xkcd-random-four PyPI

Drop in replacment for random that always returns 4 or 4/6

← Back to Resume