# Showcase

All the presentable projects I've made throughout the years


This page is navigable with vim keybindings btw

  • J and K to scroll up and down
  • H and L to navigate between slides
  • Drag your mouse or finger over images to zoom

An open source satirical tech news site that cross-posts to [X / Twitter ↗] and [Bluesky ↗]

Inspired by [The Babylon Bee ↗] and [Uncyclopedia ↗]

Anyone can open a Pull Request containing a new article or changes to the site

Every time a Pull Request is merged, a github action will automatically wait for the site to deploy, then broadcast the article to the respective [X / Twitter ↗] and [Bluesky ↗] pages

A shooter game where you play as a Salvadoran soldier reclaiming El Salvador from the MS-13 gangs under the command of President Nayib Bukele

This was my entry for [JS13kGames ↗] 2024, in which the theme was "Triskidephobia" (fear of the number 13)

The catch with JS13K is that the bundle size of your game is limited to just 13kb

At first progress seemed great, but then the limitation really started catching up to me

On top of having a full-time job, I also had to work on my entry. I really burned myself out after working on this

Despite the effort, I really enjoyed developing this game

A tool where you can visualize, create, and share side-by-side LLM comparisons

[Amjad Masad ↗], the CEO and Founder of [Replit ↗] reached out to me and asked if I would be interested in building an idea of a side project he had

He wanted a good way to visualize and compare the stats of different LLMs

After selecting the initial LLMs on the main page, you will be taken to the comparison page where you can select different stats and customize the what the output looks like

You can then copy the shareable link or download an image of the visualization

I also built a contribution system where you could add and edit new and existing LLMs

The auth system randomly broke in mid-2024, and since then the project has been unmaintained and left in the dust

My neovim configuration, available on github

Complete with a little too many plugins and keybindings

Hyperdome, short for "HTMX Thunderdome" is a chatbot with the humor of the legendary [CEO of HTMX ↗]

This was my first time building something with [HTMX ↗] and [HyperScript ↗]

To start chatting, you would first select a character, each with a different personality

And then go wild

I collected a ton of information regarding the humor and lore of HTMX, used Supabase to store the vector data, and then had the models do a similarity search on the context before generating a response

Way back when Replit was in startup mode, they made a deal with Google, allowing users to consume and use some lower-compute AI models for free

As of late 2024, they've axed the freely-available AI models, and now Hyperdome is broken

I built this website for [Liberty Cappy ↗], one of the Libertarian memers that radicalized me

After subscribing to him on X/Twitter, I reached out to him and asked to build him a website in exchange for some visibility, to which he agreed

I had a lot of fun implementing the fancy scroll animations with Framer Motion, SVG, and HTML canvas

As of late 2023, the client seems to have lost the password to his account and hasn't had time to reset it

As a result I haven't been able to push out any updates. While it still stands, it's outdated

The website for my dad's Chiropractic home business

Built with Next.js, Emotion CSS, and Framer Motion

Although it looks similar, this website predates the invention of ShadCN UI

I also built it before I started using Tailwind CSS

A time-based dungeon crawler game made for the [Huggingface Open Source AI Game Jam ↗] in 48 hours

Kaboom.js v3000 had just been released and I was eager to try it out

This game was heavily inspired by [Enter the Chronosphere ↗]. Playtesting it and trying to get the timing engine to work properly was a huge challenge

I had a lot of fun implementing the feature where you can deflect bullets

I stayed up for about 30-32 hours out of 48 working on this game. One of the shortest jams I have ever participated in

I didn't have enough time to work on my own graphics so I used Twemoji for the player and enemies

A chatbot trained to act like [Amjad Masad ↗], CEO and Founder of [Replit ↗] built with Langchain and Next.js

I built this project in early 2023 when Langchain was just becoming a thing and developers were still struggling with conversation history

I scraped a massive amount of data related to Replit, Amjad's blog, his tweets, and more to train the chatbot

I initially built it with Python, since Langchain didn't have a typescript library, but quickly migrated to Typescript after langchain.js was released

In mid-2023, OpenAI removed text-davinci-003 from their API. I left it stagnant for a bit and then switched to use some free low-compute google-developed AI models being offered for free in Replit

As of late 2024, Replit has axed the freely-available AI models, bringing AmjadGPT to an unusable state

A top-down shooter game and one of the winners of Replit's Creator Fund hackathon in August 2022

The gameplay was inspired by [Starblast.io ↗] and the art style by [Ivan Dubovik ↗]

The graphics and features were easy to make and implement

Maintaining good performance was a challenge

People loved the game when it was released and wanted more levels to play but I didn't have the capacity to add more

I'm relly happy how this one turned out

A game where you travel to different realms and fight enemies and bosses using your dragon's firey breath, powered by chili peppers

Replit hosted a game jam in June 2022, in which I was one of the "mentors" (assistants) instead of a participant. This game is a collaboration between me and a few other mentors

The theme of the jam was the word "spicy", so we decided to make chili peppers a big part of the game

I did all of the art, most of the game development, and less of the brainstorming

Designing all the sprites and animations for each different realm was really fun as art is something I enjoy but am not very good at

A tower defense game based on some members of the old Replit community and the first-place winner of the [Made with Replit ↗] hackathon

A collaboration between [spotandjake ↗], [JDOG787 ↗], and I

I was the artist and one of the programmers for the one-week hackathon

Random map generation and game balancing was the largest challenge. We ended up giving up on that and just having a very difficult game

A non-profit organization where people can create listings for goods and services and barter with each other

My mom originally came up with the idea and I set out to build it

And of course I rolled my own auth

Creating a listing will place it on a map that people can browse

There are no active users and the project has been left stagnant and unmaintained

A website for a Korean artist who has created impressive oil paintings based of many places and people around the world

The design approach I took on this site is unique among the other websites I've worked on

The gallery dynamically fetches images from a mongodb database (A huge mistake on my end making a database for a simple site)

So does the blog page, which still has placeholder info

Paintings can be expanded and viewed individually from the gallery

A static Next.js website for a small family welding business

An intense tower defense game where you fight off legions of aliens

Built for a small coding competition hosted on Khan Academy with p5.js

This is the third part to a series of tower defense games I called the "Orbitron" series. The previous two have been lost since I didn't know how to use Git at the time

I liked the name "Orbitron" (originally the name of a google font) and decided to use it for my game. This game has no affiliation or relation to the font.

I had a lot of fun drawing the game art and playtesting it

I forget exactly how many waves are in the game. It's somewhere around 43

A simple platformer game where you use your parkour and fighting skills to guide the Centurion of Light through a dark world full of enemies

I remember having a lot of trouble implementing wall-jumping in the game, but ended up getting it to work

You can attack enemies by shooting them and proceed to the next level by entering the portal

I don't remember much about the time I developed this, but it is one of my personal favorite projects I have built to this day