You are browsing as a guest. Sign up (or log in) to start making projects!

aamosm

@aamosm

Joined June 30th, 2026

  • 27Devlogs
  • 5Projects
  • 7Ships
  • 67Votes
wannabe game dev. 17 in the big 26
Ship

heith.me - shipping

This site started from a pretty simple motivation: I wanted the portfolio itself to be part of the work, not just a page containing it.

I wanted to see how far I could push a plain HTML, CSS and JavaScript site without a framework or build system, while still making it work properly across different devices.

The visual direction came from a lot of different sites and ideas I liked, but the final site ended up being its own thing.

The site tries to break all molds while being simple as well, If not a portfolio it serves as a learning experience.

So yeah, it’s done.

heith.me

  • 3 devlogs
  • 13h
Try project → See source code →
Open comments for this post

6h 12m 39s logged

devlog 03 - i think we’re done

I think heith.me is done.


Everything I wanted to implement is in now. The full site, the effects, the different device cases, the lite mode, the mobile mode, the interactions, the performance fallbacks, all of it.

I’ve also finished the design process stuff I wanted to document, so the site isn’t just showing the final result. There is actually an explanation behind why I chose certain colours, fonts, layouts and effects.


I wanted to build the whole thing as one process instead of constantly adding random features forever.

So I’m stopping here.

I don’t really plan on committing changes later down the line unless something is actually broken or I absolutely need to change something. I wanted this to be a finished piece, not another project that keeps getting new features until the original idea is gone.


The only thing left is getting the domain.

I’m waiting for the website domain grant to go through so I can finally buy the domain I designed this site around.

So yeah.

here guys.

https://aamosm.github.io/heith.me/

..the attached image is the portfolio page. also a note i wanted to add.. : this website has taken much longer than what is timed. the actual pen paper designs. getting together failed projects in other folders. designing in figma etc. was not tracked. This happens a lot with the projects i do in missions but somehow it affected a chunk of this one too. also i just realised this project has been listed as hardware???? its software. and i cant change it now. ill have to get help from support

0
0
30
Open comments for this post

2h 13m 22s logged

devlog 02 - making the site work everywhere

The site has changed quite a bit since the first version.


the new look

I’ve changed a lot of the actual interface and started pushing the visual direction much further.

I also added the custom cursor from xenobiota. I really liked how something that small could change the whole feel of the site, so I wanted to try it here too.

I’ve also been taking a lot of inspiration from Awwwards sites. One thing I’ve noticed is that the best sites aren’t just crazy because they have crazy effects. The really good ones make those effects work properly across devices.

That became a pretty big focus for me.


performance

I added separate cases for different hardware.

If a device has hardware acceleration, it can use the full experience. If it doesn’t, the site falls back to a lighter version so the effects don’t completely destroy performance.

There’s also a separate lite mode and a mobile mode. I don’t want the site to only look good on the machine I built it on.


small things

I’ve also been making the interactions a bit more obvious, especially around muting and unmuting.

There are still a lot of little things like this that I’m catching as I actually use the site instead of just looking at it.


documenting the process

I’m also working on something I want to add directly to the site: a breakdown of the design process.

I want to explain why certain colours, fonts, layouts and effects were chosen instead of just putting the finished site in front of someone and leaving them to guess.

The site is the portfolio piece, but the process behind making it should be part of it too.

0
0
70
Open comments for this post

5h 3m 32s logged

devlog 01 - starting the site

I went into this with a pretty clear idea of what I wanted, I just didn’t expect the actual design to stay the same.


The main references were:

I liked how all of them had their own identity instead of looking like a normal portfolio template. That was the main thing I wanted here too.

Visually I was going for a Wes Anderson-ish kind of thing. Not copying it, more the controlled layouts, odd colour combinations and slightly theatrical feeling.

The idea behind heith.me is also kinda recursive. The site itself is one of my portfolio pieces, and I’m going to be breaking it down in my portfolio too.


landing

I knew I wanted the opening to feel more like entering something than just seeing a hero section.

I went through multiple versions of the opening before landing on the torn-paper idea. The paper tear gave me a way to make the video feel like it was underneath the page instead of just sitting in a box.

I changed the tear quite a few times too, especially the shape and colours.

The video is an old render of mine, and one of my first animation attempts. I didn’t really want to make a completely new video just for the site, so I reused it and messed with the presentation instead.

I chopped it up, added the scanline treatment and made it more chaotic. It felt way more fitting than just putting the original render there normally.

I also originally had the text arranged diagonally.

It looked cool, but once everything was actually on the page it started fighting with the person in the centre, so I straightened it out.

A lot of the site has basically been this. I have an idea, build it, realise it doesn’t fit as well as I thought, change it.

The colours went through a lot of versions too. I have not even made a proper repo for this on github. or hosted it yet. The plan is to get the website to how i want it to look and finish it off in one commit. and ofc future changes will be committed, but i want something to show first. The entire thing is just pure html, css, and js. no frameworks.

0
0
57
Ship

Obscure - Shipping

A new tab page for finding things that aren’t always easy to find.


It’s out … again.

Obscure started as a simple new tab page.

It now has:

  • Multiple search engines
  • Custom search engine dropdown
  • Themes and custom accent colours
  • Adjustable background blur and text length
  • Clock and greeting controls
  • NASA’s Astronomy Picture of the Day
  • Local APOD caching
  • Theme-matching favicon

What’s next?

The actual reason I made Obscure is still coming.

I want people to be able to make their own search engines and have them discoverable through Obscure.

That means YouTubers, students, Stardance hackers, or basically anyone making something interesting can have their own little search engine instead of everything having to go through the same few places.

this is only the beginning.

Try it. Break it. Tell me what sucks.

  • 2 devlogs
  • 4h
  • 15.47x multiplier
  • 60 Stardust
Try project → See source code →
Open comments for this post

42m 28s logged

Obscure - Devlog 4


Making it feel better

This update was mostly about making Obscure nicer to actually use.

I added a custom search engine dropdown that matches the current theme, along with controls for the background box and text length. The dropdown also got a few fixes after I found some problems with it not closing properly and text becoming hard to read.


Small details

The favicon now changes with the selected theme, so even the browser tab matches the page.

I also added local caching for the APOD response, so the same day’s image doesn’t need to be fetched again every time the page is opened.


What now

I am probably going to work on my other projects unless I need to finish off tasks here. One glaringly obvious update I need to do is to update the weather API. Also the logging I made in the console straight up doxxes the api keys.

2
0
72
Open comments for this post

3h 8m 45s logged

Obscure - Devlog 3


Customisation

This update was mostly about making Obscure feel more personal.

The appearance settings are now fully wired up. Things like custom accent colours, blur, greeting, clock and theme switching all work properly instead of just being placeholders.


Fixing the little things

A lot of the work went into fixing issues that only showed up after actually using the page.

I fixed theme colours, improved native control contrast, stopped APOD from randomly changing when switching image quality, fixed stale descriptions after failed requests and handled video APOD entries properly by falling back to their thumbnail.

There were also a few small tweaks to make theme switching behave more naturally, like clearing custom accents when selecting a new theme.

0
0
25
Ship

Obscure is a customizable new tab page built around search and discovery.

Right now it supports multiple search engines and displays NASA’s Astronomy Picture of the Day, but that’s only the starting point.

The long-term goal is to let anyone create and share their own search engine. Whether it’s for a niche topic, a personal website, or a small community, Obscure aims to make discovering and using those search engines as simple as selecting them from a list while keeping the overall UI very minimal.

Current Main Features :
Search (Guide)
NASA API (Guide)
Implementation of different Search Engines

Features to Add:

  • More options for engine
  • Better categorization
  • Remove redundant engines that have shifted url (make more dynamic)
  • Add themes (with NASA SPACE being one of the themes)
  • Keyboard shortcuts
  • Better customization
Try project → See source code →
Open comments for this post

16m 14s logged

Obscure - Devlog 2


Search is working

The new tab page now has a working search interface with support for multiple search engines. I’ll be adding more over time, especially community-made ones once that part of the project is ready.


NASA APOD

I also added NASA’s Astronomy Picture of the Day to the homepage.

At first I used the high-resolution images, but they took noticeably longer to load. I switched to the standard image instead, which makes the page feel much more responsive without losing much quality.


Small fixes

There were a few setup issues along the way too.

I fixed a GitHub Actions dependency problem and cleaned up a few things so deployments are a bit smoother.

0
0
28
Open comments for this post

21m 24s logged

Obscure - Devlog 1


Getting started

I started by following the guide, but as usual I ended up taking it in my own direction.

For now, the project is a custom new tab page, but the long-term goal is much bigger. I want Obscure to support search engines created by other people, whether that’s YouTubers, fellow Stardance hackers or students.

The idea came from FaceDev’s video where he built his own internet protocol. It wasn’t meant to replace the web, but to create a much smaller network where people could host their own websites. I want to bring a similar idea to Obscure by making it easy to discover and search through community-made search engines.


Setting things up

This project also gave me a chance to work with GitHub’s deployment workflow instead of the hosting setup I normally use.

While setting everything up, I used a placeholder value for the API while wiring things together. Before adding the real key, I realised I’d forgotten to ignore the .env file. I fixed the .gitignore immediately, verified nothing sensitive had been committed, and only then added the actual credentials.

It was a small mistake, but a good reminder to check the repository before introducing any secrets.

1
0
137
Open comments for this post

52m 3s logged

VoyagerOS - Devlog 7


Alien Registry

The Alien Registry is finally here.

VoyagerOS can now browse user-submitted species as if they were discoveries made by Voyager-9. Alongside the 4 billion procedurally generated species from This Alien Does Not Exist, anyone can now contribute their own interpretations to the registry.


Try it yourself

I want to start building a community registry.

  1. Visit the VoyagerOS repository.
  2. Draw your alien in the WebOs
  3. Follow the README
  4. Open a pull request.

I’d love to see how different people imagine the same species and watch the registry grow over time, and try to forgive my bad drawing.


Guide for submitting your .alr : https://github.com/aamosm/VoyagerOS/blob/main/alr/README.md
Project README:
https://github.com/aamosm/VoyagerOS/blob/main/README.md

0
0
13
Ship

VoyagerOS is a browser-based operating system built for the fictional Voyager-9 deep-space probe. It includes a desktop environment, terminal, virtual filesystem, built-in applications and an alien registry, all designed to feel like software that could exist aboard a spacecraft. There is also so much lore to explore.

The registry is powered by This Alien Does Not Exist, allowing 4.2 billion unique procedurally generated species to be browsed, searched and documented as part of the mission. Each entry is presented as if it were an official survey record created by Voyager-9.

The long-term goal is to expand the registry into a collaborative database inspired by Hack Club’s Dinosaur project, users will be able to submit their own discovered species, building a shared archive that grows over time while staying grounded in the project’s universe.

The 3 new features are -
Paint App
Alien Registry App
Better themes
Image Viewer

  • 2 devlogs
  • 2h
  • 15.71x multiplier
  • 38 Stardust
  • WebOS 2
Try project → See source code →
Open comments for this post

1h 32m 6s logged

VoyagerOS - Devlog 6


Alien registry

The biggest addition in this update is the Alien Registry.

VoyagerOS can now browse, search and view procedurally generated alien species from This Alien Does Not Exist as if they were real discoveries stored aboard Voyager-9. Each entry includes its own observations, classification and registry information while remaining tied to its original seed.

The Paint app also allows exporting a custom file (basically a zip with a diff extension) as custom Aliens. I want them to be able to be uploaded to the repo and work like the dinosaur repo of hackclub.


Bringing the projects together

This is the first step towards connecting the two projects into the same universe.

Instead of existing separately, VoyagerOS now has a purpose beyond being an operating system. It acts as the place where alien records can be documented, searched and explored.

Also made themes better.


Next

The registry is only the beginning.

The next step is expanding it with better search, filtering, observations and more tools for exploring discovered species. also allowing user inputted aliens alongside the already 4.something billion ones.

0
0
34
Open comments for this post

53m 36s logged

VoyagerOS - Devlog 4


Building the world

This update focused on making VoyagerOS feel like it has a history instead of just an interface.

I introduced the Compact, a shared registry that keeps track of delegates, records, archived documents and historical events. Rather than placing lore in random text files, everything now lives inside the virtual filesystem and can be explored through normal terminal commands.


Dynamic files

One problem I ran into was keeping certain files up to date.

Things like registry records and submission logs shouldn’t be static, so I changed the file viewer and terminal to generate them when they’re opened. Commands like read, grep, stat and the file viewer all use the same underlying data, keeping everything consistent regardless of how it’s accessed.


New system commands

The shell also gained a few new commands including whois, delegates, charter, access and submit.

Instead of being standalone features, they’re connected directly to the registry and filesystem, making the terminal feel more like a real administration tool rather than just a command prompt.


One thing I’ve noticed while building VoyagerOS is that adding content is becoming just as important as adding features.
The very next thing I want to do is add my project “This Alien Does Not Exist” which has procedurally generated aliens, to make a registry. It could be like, aliens recorded till now.

0
0
6
Ship

VoyagerOS is a browser-based operating system built for the fictional Voyager-9 deep-space probe.

It features a desktop environment, terminal, virtual filesystem and built-in applications, all designed to feel like software that could exist aboard a spacecraft.

The long-term goal is to connect it with “This Alien Does Not Exist” (my other project), allowing VoyagerOS to act as an in-universe registry where procedurally generated alien species can be searched and documented.

The project is still evolving, with future work focused on expanding the operating system, adding more onboard software and making the environment feel even more believable. I wanna add a feature in WebOS 2 for people to registry their own OS they same way Hackclub registers Orpheus in their dinosaur repository. These will be shown alongside the Procedurally generated aliens.

You can use ls -r to search up basically anything and It uses the Internet archive to deliver a proper formatted embed within.

Try project → See source code →
Open comments for this post

24m 59s logged

VoyagerOS - Devlog 3


Improving the desktop

This update was mostly about making VoyagerOS feel less like a collection of windows and more like a real desktop.

I expanded the virtual filesystem with proper file operations and added more shell commands like find, grep, stat, df and man. The manual was also rewritten to make the terminal easier to use.


Desktop workflow

The desktop gained right-click context menus, a system monitor and better file management.

Dragging windows and icons also needed a rewrite. The old mouse-based system became unreliable, so I switched it over to Pointer Events, which made dragging much smoother and fixed several issues.

Desktop icon positions are now saved using LocalStorage, so the workspace stays the way you left it.


Small improvements

There were a lot of smaller changes too:

  • Better mobile support using 100dvh
  • File properties and rename improvements
  • Cleaner terminal output
  • Improved process information
  • General UI polish

Next

The desktop is now in a much better place.

Next I’ll be expanding the ship software itself, adding more applications and filling the filesystem with logs, manuals and mission data.

0
0
8
Open comments for this post

1h 21m 57s logged

VoyagerOS - Devlog 2


Desktop environment

VoyagerOS is no longer just a terminal.

The interface now boots into a desktop environment with draggable windows, a taskbar and a cleaner workspace. Multiple applications can stay open at the same time, making the OS feel much closer to a real operating system.


Applications

Several built-in applications have been added to the system.

These include a file explorer, settings panel, media viewer and a simple browser for navigating mounted data. They all share the same window manager and integrate with the rest of the desktop instead of acting as separate pages.


File system

The file explorer now uses a virtual filesystem instead of static content.

Directories can be browsed through the desktop interface, giving VoyagerOS a proper file hierarchy to build future features on.


Interface improvements

A lot of the interface was cleaned up during this update.

The desktop now has a proper wallpaper, improved window styling, better spacing and a more consistent visual style across the operating system. Small changes like these make the whole environment feel much more cohesive.


Observations

Moving from a terminal-only interface to a desktop introduced a lot of state management problems.

Keeping track of active windows, focus order and application state ended up being much more involved than expected, but it also made the rest of the system easier to expand in the future.


Next

The desktop is now in place.

The next step is adding more applications, expanding the filesystem and continuing to make VoyagerOS feel like software that could actually exist aboard Voyager-9 and fixing drag of icons.

0
0
3
Open comments for this post

1h 24m 50s logged

VoyagerOS - Devlog 1


The idea

VoyagerOS is an experiment to see how far a browser could be pushed to feel like a real operating system.

The goal isn’t to make another futuristic UI. I wanted it to feel like software that actually belonged on a deep-space probe. Everything is built around a terminal interface where the user interacts with the system through commands instead of buttons and menus.


Building the foundation

The project is built entirely with HTML, CSS and JavaScript.

The first milestone was getting the boot sequence and terminal working. The boot process now transitions into a persistent shell with command history, input parsing and a window manager capable of handling multiple processes at once.

The interface is still simple, but the focus has been on making it feel consistent rather than flashy.


Internet Archive integration

One of the main ideas behind VoyagerOS is that it can mount real data from outside the system.

The first approach was embedding the Internet Archive directly, but it quickly became obvious that it broke the illusion. Logos, navigation bars and the surrounding website made it feel like a browser instead of an operating system.

I scrapped that approach and rebuilt it around the Internet Archive Metadata API instead.

Instead of displaying web pages, VoyagerOS now requests metadata, lets the user choose what to mount, and renders the data inside its own interface. Everything stays inside the OS instead of sending the user to another website.


Current state

At the moment VoyagerOS has:

  • A boot sequence
  • A persistent terminal
  • Command history and parsing
  • A native window manager
  • Internet Archive integration through the Metadata API
  • Dynamic mounting of external data inside the operating system

Next

The next step is expanding the shell itself.

I want to add more system commands, improve the filesystem, introduce more ship subsystems and continue making the environment feel like a real operating system rather than just a terminal running in a browser.

0
0
7
Open comments for this post

1h 35m 41s logged

This Alien Does Not Exist - Devlog 8


Better creatures

I’ve spent a lot of time making the generator produce creatures that make more biological sense.

Instead of every value being generated independently, more of the genome is now constrained by the rest of the creature. Large heads need thicker necks, heavier creatures get proportionally stronger limbs, tails are limited by body size, and posture now affects how the whole body is built rather than just changing a few numbers.

I also added several posture types like upright, forward-leaning, arched, slouched and coiled. They all change the way the spine, shoulders, hips and tail are generated, which makes creatures feel much less repetitive.


Similar creature search

I finally started building the registry side of the project.

Every creature already stores a deterministic generation trace, but now that information is actually being used.

Each alien gets converted into physical and behavioural vectors which can be compared against every other creature. The registry can now find the most similar alien based on body structure, behaviour, or an overall weighted similarity score.

I also spent quite a while refining the comparison logic so it isn’t just comparing raw numbers anymore. Behaviour vectors are aligned automatically, similarity is calculated using both Euclidean distance and cosine similarity, and the weighting system is much more stable now.

This is eventually going to power species grouping, reverse lookups and the registry website I’m planning.


Observation engine

The information panel also got a pretty big upgrade.

Instead of only showing generated facts like diet or locomotion, the engine now generates observations written from the perspective of an automated survey system.

These aren’t random sentences. They come directly from the generated anatomy and registry values, so every observation is deterministic for that seed.

The idea is to make every creature feel less like a render and more like something that has actually been catalogued.


UI improvements

The website changed quite a bit too.

The biggest headache was making the information panel scale as more systems were added. It was becoming difficult to navigate once the registry and observations were included.

I ended up reorganising everything into collapsible sections, improved the responsive layout, added seed copying, better sharing, smarter canvas padding for different body shapes, and cleaned up a lot of the navigation code.

It feels much easier to explore creatures now instead of just generating one and moving on.


Next

The renderer is still the weakest part of the project.

Large body parts can still merge together because everything is rendered as one continuous SDF surface. The next thing I want to work on is adding proper depth ordering and occlusion so limbs, necks and snouts separate naturally when they overlap.

After that, it’ll be time to start building the online registry.

0
0
4
Open comments for this post

1h 2m 21s logged

This Alien Does Not Exist - Devlog 7

changed from Doesn’t to Does Not


Deterministic generation

One thing I’ve wanted for a while was for every alien to be more than just an image.

The engine now keeps track of every important random value it uses while generating a creature. Things like body proportions, head shape, limbs and colours are all recorded as they’re generated.

That means a seed doesn’t just recreate the same alien, it recreates the exact decisions that built it. It’ll also make future updates a lot easier without changing existing creatures.

I also wanted to work on the WebOS mission, so this is the first step towards that. The plan is to build a space-themed registry where every alien can have its own record.


Registry

With the generation trace in place, I started building the registry system.

Instead of only showing the final creature, the engine now derives extra information from how it was generated. Things like curiosity, watchfulness and a physical signature are calculated from the generation process itself.

Eventually I want to use this for things like:

  • finding similar creatures
  • rarity
  • grouping species together
  • procedural descriptions
  • a searchable registry

Since everything comes from the seed, it’ll always stay consistent.


Rendering

I also spent some time improving how creatures look.

Skin patterns are now a lot more varied instead of just making parts of the body darker. Different aliens can have different coloured markings, and the patterns themselves have more variation.

The information panel also shows a few more generated traits now, like mouth type, pigment, tail type and mass.

It’s a small change, but it makes the creatures feel more like actual entries in a database.


Next

The next thing I want to tackle is depth.

Right now everything exists on the same layer, so thicker body parts can swallow smaller ones. A large torso can hide the legs, and a long snout can blend into the neck.

I’m going to experiment with giving different body parts their own depth so overlapping features stay separate while keeping everything fully procedural.

0
0
4
Loading more…

Followers

Loading…