ASP.NET/JavaScript developer (Quincy,IL/Burlington, IA area)
About me
I'm just a simple software developer trying to make my way in the universe.
I've made my way as far into the tech world as C#, JavaScript, and a handful of other languages that I don't use regularly such as Java and Python. I have a lot of experience customing Bootstrap by customizing the SASS variables and building from source. I also do a lot of work in the Blazor framework, including several website frontends built on Blazor WASM, a cross-platform mobile app built on .NET MAUI, and a cross-platform desktop app built on Electron.NET and Blazor Server.
I'm a Christian (the Jesus kind, not the Trump kind). I'm also an aspiring polyglot, occasional Magic: The Gathering player, sci-fi fanatic, and unapologetic Jetbrains stan.
Code
C#
I specialize in building ASP.NET Core services wrapped around hand-crafted third-party REST API integrations. In my previous role at Locum Life, I spend most of my time integrating their internal tools with multiple third-party platforms. For example, no suitable .NET package existed to integrate with PCRecruiter, so I built one for them. On top of that, I built a service that synchronizes Locum Life's PCRecruiter data with their own servers, allowing their recruiters to leverage the powerful tools available with PCRecruiter while still allowing them to use custom workflows as well.
Nuget packages
I have authored two Nuget packages, mainly for my own use. The first is RazorForms, a package that creates customizable form controls for MVC/Razor Pages apps. Building out reusable form UIs in Razor Pages is pretty painful, but most apps don't really need a true SPA experience. You could write React or Vue code directly in your Razor templates and compile them on the client-side for each page load, or you could use RazorForms. It supports Bootstrap, Materialize, and Bulma out of the box, and it also has a fairly extensive customization system that allows you to integrate your own custom CSS solution as well (or add a different third-party library that isn't supported yet).
The second is Autoinjector, a package that scans your assemblies at startup and adds your services to DI. There are several packages that already do this, but I don't like the way any of them work, so I made my own. This package greatly reduces the size of your Program.cs
file - by using Autoinjector, you only have to load third-party services, then write a single line for each assembly you want to inject services from. It supports specifying a ServiceLifetime
and specifying multiple Type
s for each service.
JS/TS
Most of my JavaScript experience is in writing VueJS applications. At Locum Life LTD, I built the frontend for their internal tools in VueJS (before rewriting in Blazor WASM last year). My current role at CBS through Workstate is primarily React-based.