I am Morgan, an independent programmer with experience in front-end, back-end, and game development.
Contact me at [email protected].
I built an ERP system for a food logistics company in Hong Kong. Initially a simple order entry tool, it has since grown to include inventory management, sales history, and reporting capabilities.
Since deployment, salespeople have been able to submit orders without calling the office. With real-time access to product information, inventory, and sales history, they no longer have to cross-reference product codes against huge paper catalogues.
Support staff no longer manually enter orders or generate routine reports by hand. They can also create professional-looking product brochures in seconds for sending to clients. Management estimates these features save support staff 3-4 hours of work per day.
Management now has access to performance metrics to inform decisions. Reports that previously took hours of manual compilation can now be generated in seconds.
The system integrates with a legacy off-the-shelf platform that has accrued significant technical debt. I had to reverse-engineer their legacy database structure, with hundreds of tables and columns likely machine-generated by an ORM.
I continue to add new features to the platform and have collaborated with the company on other projects.
I've built and maintained a number of marketing websites for clients, including one for a food logistics company in Hong Kong. The original WordPress site was slow and locked into an overpriced hosting plan. I rebuilt it using SvelteKit, which slashed load times in half, added added localization features (5 languages) as well as support for every screen size.
I developed an Outlook add-in for a compliance company in Hong Kong. It includes a template system that supports rich-text, images, and automatic time zone conversion features.
I was contracted to develop this add-in as a replacement for a legacy system that was built with VBA, which is being deprecated by Microsoft.
I continue to maintain and add new features to the system.
Heledron.com is my personal website, where I host art projects and tools for solving niche problems I encounter.
A few notable examples:
A tool for exploring the Mandelbrot in 6 dimensions, inspired by this YouTube video by 2swap.
A 3D rendering pipeline that outputs ASCII characters instead of pixels. This was featured on BxJS Weekly.
A tool for generating Reuleaux polygons. This project was featured in a successful Kickstarter campaign. I made it for a maths assignment as there were no public alternatives at the time.
A tool for visualizing 11+ sorting algorithms. Although other tools for this already exist, I wanted to build one that would work on the web and visualize auxiliary memory.
A compiler that converts my own programming language (EMCL), into Minecraft functions, a verbose, low-level language with some similarities to assembly.
The compiler features a lexical-analyser, syntax-analyser, semantic-analyser, optimizer, and code generator, all built from scratch without any external libraries or generators.
It also includes a companion VS Code extension for syntax highlighting and code snippets.
Here are some projects I built using this tool:
I've worked on a few Minecraft programming projects with companion YouTube tutorials.
I've also worked with the design studio Varuna. I was the sole programmer for The Alfie Templeman Minecraft Festival, and Nijisanji Prism Cup 2023.
An LLM client that integrates with several model providers, supporting text, image, audio, and video.
A work-in-progress ECS game engine inspired by Bevy. It currently features a 2D physics engine and a tilemap system.
A 2D game engine I built when I was a beginner, which I used for a few games. It was abandoned as my evolving standards for code quality made it easier to begin from scratch.
My first major project, a code editor for both web and desktop. It featured a code editor with syntax highlighting, a JSON editor capable of editing complex nested JSON objects defined by a schema, and multiple graphical editors, all built from scratch. It was abandoned due to a lack of users, and my improved standards for code quality and UX.