Daniel Oaks

Software Development

Here's a selection of my software development projects. Some are personal projects and some were made for employers, but I'm proud of all of them. If you'd like to discuss what I can do for your company, organisation, or project, please reach out to me.

print-openapi

This tool takes an OpenAPI file and spits out a printable, static HTML file. I wrote this tool to address our internal documentation needs at Sendle, and to let our software developers easily create updatable, externally-sharable API docs with third parties.

github.com/sendle/print-openapi

Skills: Typescript, Node.js, npm/yarn, Jest, YAML, JSON, OpenAPI, specifications, markdown.

Ergo IRC Server

Ergo is the most modern and complete Golang server implementation of the Internet Relay Chat protocol. I created it to be simple to setup and test bleeding-edge IRCv3 features and proposals.

ergo.chat/about

Skills: Golang, service, server, protocol design, specifications, tcp.

n8n-nodes-irc

This node for the n8n automation tool lets you send messages to IRC servers from your n8n workflows.

github.com/DanielOaks/n8n-nodes-irc

Skills: Typescript, Node.js, npm, plugin, n8n, protocol, tcp.

Game2

The Squiggly River Games Collective, a Brisbane-based arts community, invited me to make a game for their Play//Space exhibition. The result is a medley of mysterious experiences created in Godot.

pixienop.itch.io/game2 github.com/DanielOaks/game2

Skills: Game development, scripting languages, OO, GDScript, GLSL, game design.

IRC.com Script Runner and Docker Suite

At IRC.com, I was responsible for testing a suite of chat servers to confirm that their protocol acted as expected. To do so, I created and maintained a suite of Docker images and a test runner to confirm compatibility.

github.com/irccom/script-runner github.com/irccom/test-servers

Skills: Golang, Docker, testing, scripting, tcp.

Private Internet Access Internal Tooling

During my time at PIA I put together an internal uptime checker to assist our DevOps team. This tool helped us respond to website and service outages long before they would otherwise be detected. As QA lead, I also created and hosted internal tooling to let my team check various VPN, DNS, SMTP, and other functionality.

privateinternetaccess.com/

Skills: Golang, Python, software architecture, networking, DevOps, uptime, Slack notifications, tcp/udp.

ircdog

I developed ircdog for the Internet Relay Chat developer community. It's a tool that lets you connect to IRC servers and send/receive raw IRC protocol lines, with extra features that using telnet or ncat does not give you.

github.com/ergochat/ircdog

Skills: Golang, protocol, tcp, command line, terminal.

GitHub Profile

I've got more projects to see on my GitHub profile! I've been working with code for so long that there I can't include all of them, but feel free to search by language if you'd like to see examples.

github.com/DanielOaks