Projects
Here's a list of many of the projects that I've worked on and teams I've worked in, in no particular order.
Coputer
Coputer is my current big project! It (hopefully) will be a decentralised and collaborative network for running Luau programs.
The codebase is very much a work-in-progress, and currently rather fragmented from attempts to modularise the system. It's available at github.com/Heliodex/coputer.
Litecode
Litecode is a deterministic virtual machine, execution server, and library toolkit for Luau. It's useful as a server for remotely running Luau scripts or as a VM library to hook into and offer custom functionality, similarly to a runtime.
Litecode is part of the Coputer project. It's available at github.com/Heliodex/coputer/litecode.
Mercury Core
Mercury Core is the ultimate community-driven secure, flexible,
and stable foundation for the future of your MMO game creation
platform, allowing for easy customisation or complete overhaul
and possible integration with multiple clients and external
services.
If you don’t know what any of those things are, Mercury Core is a
build-your-own-Roblox.
Built from the foundations of Mercury 2, Mercury Core is set up by cloning the repository. Check it out at github.com/tp-link-extender/MercuryCore!
Mercury
Mercury 2 is a project built to revive and recreate the experience of old versions of a popular MMO game. Similar to the previous version of Mercury, though with a completely rewritten website and backend, providing more stability and security, as well as a whole host of new features.
Mercury 2 is the largest project I've worked on, and concluded in June 2024 with the announcement of its pivot and rebranding to Mercury Core. It was previously accessible at mercury2.com. (archive link)
eChat
eChat is a messaging application built as the successor to a previous project, DocSocial, and also designed to be used during school without getting caught. It was built with Svelte and Centrifugo.
The app was made to work in a bookmarklet, and the popup would appear on the page upon clicking the bookmark.
The original server will no longer be online, but both server and client have been made open source at github.com/Heliodex/eChat. It was previously available at echat.cf.
DocSocial
DocSocial was a simple messaging application. It was designed to appear like a Google document from a quick glance, or from a look at your browser history.
DocSocial used Scaledrone for its backend and for transferring messages.
It was designed to work best with one specific device and OS, our school-assigned chromebooks, so pupils could chat with others in class and not be caught by a teacher.
DocSocial was previously available at docsocial.tk and docsocial.cf. Its (very disorganised and minified) code can be found at github.com/DocSocial/DocSocial.
Crazy Calculations
Crazy Calculations is a simple maths game that tests you through
10 levels of increasingly difficult maths questions.
It was programmed in about a week for a Computer Science class (the
assignment was "make anything you want") where a video had to be
recorded explaining the project.
The project was started on 23 September 2021, and submitted 11 days
later.
The game was inspired by (and much of the code ported from) You Can't Do Simple Maths Under Pressure by UsVsTh3m.
Crazy Calculations is playable at roblox.com/games/7557207546.
PF Range Calculator
This is a small web tool designed to calculate how far weapons
in the game Phantom Forces by StyLiS Studios deal a certain
amount of damage to.
You can input some values provided by the in-game statistics, and
the tool will calculate how far it will deal that damage to.
This was created by me in a few days, after I realised how long
it would take to calculate all the range values manually.
I remade the site a few months later, being my first time using Svelte.
You can find the calculator at pfcalc.heliodex.cf.
Confetti
This is a collection of implementations of the Confetti configuration language, an extremely simple and remarkably flexible
typeless configuration file format.
These were some of the first alternative implementations of the language,
and made me able to give useful feedback and suggest features for
the specification and reference implementation.
It's been a long time since I wrote a lexer and parser for a language like this, so it helped me to learn more about the process and refresh my knowledge.
The implementations (a working Go library and a work-in-progress TS implementation) are available at github.com/Heliodex/confetti.
Sprig Shooter
Sprig shooter is a game for the Hack Club Sprig, a small handheld game console. While the engine usually uses a tile-based approach, the game uses a raster-based renderer for more graphical freedom. Creating the game was a fun challenge, and the console was delivered to me shortly after it was complete.
Shoot enemies while avoiding them to get the highest score, and
the game steadily gets more difficult with higher scores. Sprig
Shooter is playable at sprig.hackclub.com/gallery/Sprig_Shooter.
Typing Tester
Typing Tester is a game that helps to improve your typing
accuracy, stamina, and speed. It was released on 25 December
2022 after sixteen months of feature creep.
Type words to earn experience and typing tokens, level up and earn
ranks, and use typing tokens to buy new wordlists!
Typing Tester is written in Luau and uses several frameworks, including Fusion, Knit, and ProfileService.
The game is playable at roblox.com/games/10061236122.
Reviso
Reviso is a website that gives random SQA past paper questions for revision purposes, providing answers and marking schemes for each question. Levels and subjects can be chosen for targeted revision.
Questions are normalised into a common and more easily editable and readable format. This requires tedious effort to extract these from the original papers, but allows for much more freedom in display and styling, as well as improved accessibility.
Reviso doesn't have many questions or subjects at the moment, but more will be added in future. It's inspired by other great revision sites, including the Dynamic Maths Question Bank.
Reviso is accessible at reviso.netlify.app or previously at reviso.ml, and the source code is visible at github.com/Heliodex/Reviso.
Heliodex.cf
The website you're browsing right now!
The current version of the website is a static site using Svelte and SvelteKit.
The website's source code can be found at github.com/Heliodex/Heliodex.cf.
Older versions of the website can be seen at old.heliodex.cf.
Python Calculator Collection
This is a collection of calculator programs I wrote on my
calculator's python interpreter during maths classes.
There are programs for calculating interest over time, areas or volumes
of polytopes, angles of arcs of circles, and much more.
I cannot guarantee the accuracy of these programs, but while
they should be decently accurate, please submit an issue to the repo if you find
an error in any of the programs.
They are available at github.com/Heliodex/PythonCalculators.
HybridOS
HybridOS is a collection of experimental operating systems, written in a variety of languages and using many different methods.
The first version (v2) of HybridOS was worked on throughout 2019 as a fusion of 2 similar programs, BlakBird by me, and Vortex by Taskmanager. We had the desire to build an operating system long before developing the skills necessary to do so, but we tried anyway.
HybridOS 2 totalled 1100 lines of Python, and had features such
as a multi-user signup and login system, a number of games and
useful applications, plenty of colourful ASCII art, and a root
admin system.
As we developed more skills, HybridOS was ported to many different
languages, including C, C++, Java, C#, and Batch. Linux distros were
made as well, and basic bootloaders and kernels were built as our
skills advanced.
HybridOS 2 was largely abandoned after the beginning of 2020,
and the code for this version can be found at
github.com/Heliodex/HybridOS. A recreation in JS of this version, for our own nostalgia, is available
at github.com/Heliodex/HybridJS.
Something big may be coming soon, though...