You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

93 lines
3.9 KiB
Markdown

+++
title = "Projects"
+++
Here is a quick list of my personal projects, both previous and active! Most of them are MIT licensed, with a couple exceptions.
# Projects
### [yamlfmt](https://github.com/google/yamlfmt)
#### Language: Go
A command line yaml formatting tool, also structured as a library for extensibility or custom wrappers.
### [go-utf8-codepoint-converter](https://github.com/RageCage64/go-utf8-codepoint-converter)
#### Language: Go
Tool to convert UTF-8 codepoint text to the unicode character the text represents.
### [collections-go](https://git.ragecage64.com/RageCage64/collections-go)
#### Language: Go
A library that implements common data structures for Go with best possible time complexity and minimal allocations.
### [multilinediff](https://git.ragecage64.com/RageCage64/multilinediff)
#### Language: Go
A library to write multiline diff output to the command line.
### [eznet-cli](https://git.ragecage64.com/RageCage64/eznet-cli)
#### Language: Crystal
CLI to make common netstat operations easier. I originally wrote this to mess with Crystal, but I intend to rewrite it in Go with the same general API and include cross platform features.
### [bub-the-bot](https://git.ragecage64.com/RageCage64/bub-the-bot)
#### Language: Go
Bot for my Discord server(s). He also has a cute mascot that my partner drew!
### [js-test](https://git.ragecage64.com/RageCage64/js-test)
#### Language: JavaScript
I had a lot of issues at a previous job when we needed to ship the mocha library just to run integration tests up in a server. I figured there had to be a better way to programmatically run tests, and I wrote this proof of concept. I'm unsure whether I'll pick it back up and make it more fully featured, but it was an interesting dive into the way JavaScript testing utilities work.
# Open Source Work
Most of my open source work is done under my Google Github profile: https://github.com/braydonk
### [Fluent Bit](https://github.com/fluent/fluent-bit)
#### Language: C
An open source observability agent, which we use on my team at Google as part of the Ops Agent. I help fix a number of bugs in Fluent Bit, as well as doing code reviews and maintenance on the `out_stackdriver` plugin.
### [Monkey](https://github.com/monkey/monkey)
#### Language: C
An HTTP server written in C. It is a crucial component of Fluent Bit, and I have done some work on this repo to support fixes in Fluent Bit, as well as adding testing to the repo.
### [OpenTelemetry](https://github.com/open-telemetry)
#### Language: Go
Contributing to OpenTelemetry in a couple of ways, such as logging specification participation and contributing to the Collector. I also work a lot on [Google's OpenTelemetry Collector Distribution](https://github.com/GoogleCloudPlatform/opentelemetry-operations-collector).
# Gaming
### [TrustFall](https://git.ragecage64.com/RageCage64/TrustFall)
#### Language: C++
A Root Beer Tapper ripoff that I wrote as a school project. I am reasonably proud of the super basic art, music, and gameplay. Uses Allegro 5 because I had to (well technically I had to use 4 but I refused to do that and accepted the consequences).
### [SpaceForce](https://git.ragecage64.com/RageCage64/SpaceForce)
#### Language: C++
A SHMUP that I wrote also for a school project. It's a far worse game, but I think the code is better laid out given my skills at the time.
### [SeeNoEvil](https://git.ragecage64.com/RageCage64/SeeNoEvil)
#### Language: C#
My entry to the 8-bits-to-infinity game jam. I sadly did not save the assets, which is too bad but my partner who drew them insists they weren't worth keeping. I thought they looked pretty good. :D
The main thing I want to extract out of this is the code that worked with [Tiled](https://www.mapeditor.org/), I thought it was reasonably sophisticated for something I coded in under a week. Would be cool to extract it into a standalone library.