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

aashvik

@aashvik

Joined June 2nd, 2026

  • 13Devlogs
  • 7Projects
  • 3Ships
  • 45Votes
Open comments for this post

1h 52m 3s logged

Devlog #2

hey! Whats up?

it’s been a while since my last devlog, and i’ve gotten way more done than i expected. the project is now way more than just a chessboard on a browser.

online multiplayer

the biggest feature i added was online multiplayer!

i ended up using PeerJS so two players can connect directly to each other via a room ID. It keeps the board perfectly synced too.

this was actually pretty easy, it was well documented so didn’t take a lot of time. just a bit of research.

better ui!!!!!!

the thing that i dont like about apps like lichess is that the UI is kinda bum.

so, to fix that, i spent a bunch of time redesigning the whole webpage.

i basically gamified the css (biggest change was the buttons!!!)

here’s some of what changed:

  • brand new signin page (no js yet)
  • offline and online game mode buttons
  • much better + cooler buttons
  • dropdown hamburger menu with flip board button
  • more spacing everywhere
  • thats about it

imo it looks way better

offline improvements

offline mode auto flips board but u can manually flip too if u want to see from opponents pov.

reorganizing everything

as the project got bigger, one html file started becoming kind of messy. also i would like having separate links for online and offline play etc.

because of this i will split up code in the next devlog

what’s next?

the next thing i’m working on is accounts.

i’m planning on adding Firebase authentication so you can sign in with Google or continue as a guest. after that, i’ll start working on username specific challenges. ill use firbase to store person requests and it can generate a peer id so i dont need a server.

Im rlly happy with how its going :)

thanks for reading, and as always, let me know if you have any suggestions!

0
0
4
Ship

# Final Devlog / First Ship!!!!!!

Hi guys! This is the end of this projects journey!

the part i'm most proud of in this project was probably that everything runs locally (all the video processing happens in your browser). i'm also really happy with how the final ui turned out.

the biggest challenge by far was getting ffmpeg to work. For some reason it was having problems when getting imported and after debugging and finally getting it to import it had browser permission errors 😭.

overall this project taught me a lot about javascript and browser apis 👍.

thanks to everyone who gave me feedback on this! GL on ur projects.

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

2h 23m 6s logged

Final Devlog!

Hi! whats up?

So basically, I worked on the website and worked on rewriting it in my style because I used way too much AI for the last one, so it seemed vibecoded.

I started out with a really basic page and slowly added more css. I chose a paper brown color scheme for the UI bc i think it fits the Bhagavad Gita app idea better.

I also spent a while practicing css and finally understand flexbox.

here are the things i added:

  • navbar
  • hack club flag that waves around
  • chinmaya mission logo
  • hover animations
  • gameplay section with a youtube video
  • minimalist layout

i made the hack club logo wave constantly, then stop and get a little bigger when you hover over it. that was fun.

Thats all! I also wanted to thank and give Chinmaya Mission credit for the audio recordings. (They didn’t even want recognition!)

0
0
2
Open comments for this post

1h 57m 49s logged

Devlog 2 – Building the Platformer

Today I continued working on my WarioWare-inspired game by finishing the level management system and starting the first platformer minigame.

I first completed the level scene by programming the level timer, level counter, and lives system. Since my game is Indian-themed, I replaced the original garlic lives from the tutorial with chai icons. The timer now counts down, updates the UI every frame, tracks the current level, and transitions between minigames automatically.

I also created a reusable timer scene specifically for the minigames. This separate timer can be instanced into any level and provides a countdown that can be started from other scripts, making it easy to reuse across multiple minigames.

After that, I started building the first platformer minigame. I created a Player scene using a CharacterBody2D with a Sprite2D, collision shapes, and an Area2D. After attaching the movement script, I adjusted the jump strength to make the controls feel more responsive. The player can now move left and right, jump, and interact with physics correctly.

Next, I created the first minigame scene and built the ground using a StaticBody2D with a ColorRect and CollisionShape2D. This acts as the main floor for the level and provides proper collision for the player.

To make the scene feel more dynamic, I added a background and configured a Parallax2D node to create a scrolling effect. By adjusting the repeat size and auto-scroll settings, the background now moves continuously, giving the level more depth.

At this point, the game’s foundation is coming together. The level management system, reusable timer, player movement, platform physics, ground, and scrolling background are all working. Next, I’ll build the platforms and add the collectible chai cups that players will need to gather to complete the minigame.

0
0
3
Open comments for this post

1h 46m 45s logged

Devlog 1


Main Menu Done

Started working on the game today and got the main menu finished. I decided to call the game भारत Blitz. Godot’s default font didn’t support “भारत”, so instead of fighting with fonts I just made the title into an image. It ended up looking better anyway.


Right now the menu has: A custom title/logoStart buttonSettings buttonQuit buttonBackground artNext I’m going to start working on the main game loop that randomly picks the microgames and handles scoring/timers.Not a huge update, but it’s a good start and now I actually have something playable instead of just an empty project.

0
0
2
Open comments for this post

3h 28m 3s logged

devlog # 1

hi! i made this project cuz i rlly love chess but want to have more controls over these types of sites. eg. chess.com has paid features and lichess is free but it doesn’t have a good, refined ui that i would prefer.

i spent like 3 hours on this first session just trying to get a basic board to load on the screen 😅 😭 . it was a bit of a struggle but it is finally working.


the setup struggle

i started with vite for the site but it kept fighting with the hack club spaces proxy. the server kept returning html instead of javascript modules, which caused errors in my console and crashed everything. i decided to swith entirely to a static website. now there is no node_modules or package config. just the three files: index.html, style.css, and main.js.


the 404 fix

even after going static, the board wouldn’t load. i checked the console and found a 404 error. turns out the chess.js version i tried to import didn’t actually exist on npm. i switched the import map to use a verified esm release on the cdn, and the board finally appeared.


adding nice features

once it was running, i added right-click support so you can draw green arrows and highlight squares (it still doesn’t work all the time, i can guarantee support by next devlog). i also set up auto-flipping. after you make a move, there is a 400ms delay so the piece finishes its animation, and then the board smoothly spins 180 degrees for the other player.


whats next

next up is showing the list of moves on the side. I also plan having local LAN game!!! However idk i have to research. Maybe after LAN, i could make my own server in my vm from Hack Club Nest!

PS.

there r screenshots below pls look at them PLS PLEASE PLEASE…

give me suggestions…

0
0
2
Open comments for this post

2h 53m 1s logged

devlog # 3

hi again! we r getting pretty close to the end—this may be our second to last devlog!

so before I did anything else, I fixed the sites trash css and basically gave it a space aesthetic so it fits nicely with the stardance program.

it already had the camera preview and the text scrolling working so you could read your script while seeing yourself on screen. it also had basic controls to change the font size and flip the text backward using a mirror button so it could be used with real physical teleprompter glass. I wanted it to save the recordings as a mp4 but usually the recordings save as .webm so I had to figure out a way to convert in the browser. I ended up choosing ffmpeg which is a client side converter which worked perfectly for my use case.


I also polished the space theme with drifting stars and meteors by adding a crap ton of css, and added a footer at the bottom which brags that all the video processing happens 100% locally on your computer.


bugs and errors fixed

  • ffmpeg worker loading crash caused by bad repo file structure and missing module parts like classes.js
  • sharedarraybuffer is not defined reference error triggered by browser cross-origin security walls blocking multi-threading
  • github pages 404 resource errors due to loading scripts from wrong online paths instead of hosting local copies
  • video encoding failures caused by trying to run heavy ffmpeg processing inside restricted incognito sandboxes
  • canvas recording bug that accidentally burned the scrolling text lines onto your final exported mp4 video file

so basically these errors were rlly ahh but i fixed most of them pretty easily. The one which actually took time was the ffmpeg library not loading bc i had to have it saved locally. The problem with that was that saving it locally would sometimes call on other scripts which were not local. Eventually i figured out that there was a build meant to run local so i used that. :)


P.S.
I finally learned markdown!!! :) pls tell me any other tips if u think that i need to improve smth. Also tell me what UI u like best i put a bunch of screenshots

0
0
2
Open comments for this post

1h 16m 1s logged

Hi guys! So basically today i worked on trying to add camera functionality so I can add recording into the website. (I felt that having it all in one devlog would be too long)

I ran into a bug where the camera and scrolling weren’t working because my HTML got messed up with an unclosed button tag, which broke the page structure and stopped the JavaScript from working properly.

Dw tho everything is fixed and working fine! :)

0
0
2
Open comments for this post

57m logged

Hello! I started on the basic features of the website! I split everything into HTML, CSS, and JavaScript to keep it organized, then added the basic features like scrolling text, adjustable speed, font size controls, fullscreen, and mirror mode. It still needs some polishing and a nicer UI, but the main functionality is working now and I’m pretty happy with how it’s turning out.

My main inspiration for this project was that even though there are many teleprompter websites, I wanted one with no bloat, ads, and that keeps my data safe.

Next devlog probably gonna add a recording functionality and better UI. Stay tuned!

Below is a screenshot of the demo:

0
0
4
Ship

Anukrama is a nintendo Switch homebrew app that helps people memorize and practice chanting Bhagavad Gita verses. It gives you the previous quarter of a verse as a clue, and you have to chant the next part from memory. Right now it includes all 20 verses of Chapter 15 with audio prompts and easy controller navigation.

The biggest challenge was getting the audio system and verse progression working smoothly on the Switch. I also spent a lot of time organizing the verse metadata and making everything load quickly.

Thanks for following my journey!

  • 4 devlogs
  • 7h
  • 8.95x multiplier
  • 61 Stardust
Try project → See source code →
Open comments for this post

1h 50m 44s logged

I made a landing page for the website! I tried to make my own css but it looked kinda ahh so i ended up using a mixture of ChatGPT and Gemini to make the effects look way better. I still changed a bunch of stuff myself and messed around with the layout until it looked how i wanted. I also added my own screenshots to the website so people could actually see what it looks like instead of just reading about it. I spent some time changing little things like the spacing, colors, and animations to make it feel nicer overall. After i finished everything, i used git to upload all of the code to github so i could keep track of my changes and have it all backed up. Thats pretty much everything i worked on for the landing page!

0
0
3
Open comments for this post

4h 9m 25s logged

Today ended up being a much bigger update than I originally planned. The original goal was simply to improve audio playback and make the application a little easier to use, but it gradually turned into a complete overhaul of the project. Earlier versions of Anukrama were entirely terminal-based and focused mainly on functionality rather than presentation. While they worked well enough for testing and practicing verses, they did not really feel like a finished Nintendo Switch application. As I continued working on the project, I decided it was time to build a proper interface. I started by experimenting with a few graphics libraries, but that quickly became frustrating due to dependency problems, linker errors, and build issues that consumed far more development time than expected. After spending a considerable amount of time trying to make those libraries cooperate, I eventually decided to take a different approach and build the rendering system myself using the Switch framebuffer along with FreeType for font rendering. This ended up being a much better solution because it gave me direct control over how text and graphics were displayed. One of the most important improvements from this change was proper Unicode support. Earlier versions struggled with Sanskrit transliteration characters, often displaying missing glyphs, incorrect symbols, or unreadable text. The new rendering system finally allowed me to render Unicode properly, which means verses and prompts can now appear correctly on screen. During the process I also redesigned the entire user interface, added larger text, created menu screens, introduced animated backgrounds, improved readability, added color-coded sections, and included a “Made by Aashvik Goel” credit within the application. Looking back, the difference between the original terminal version and the new interface is much larger than I expected when I first started making changes. The audio system also received significant improvements during this update. The application now supports separate prompt and answer recordings, allowing users to hear a prompt before revealing the complete verse. Implementing this required converting recordings into the correct PCM format, debugging playback issues, testing different audio configurations, and tracking down several recordings that did not behave as expected. While a small number of recordings still need additional work, the overall system is now much more reliable. Alongside the audio improvements, I added multiple study modes to make practice sessions more engaging. There is now a Solo Practice mode as well as a pass-and-play VS Mode where two players can take turns answering verses and earning points. Another major focus was testing on actual hardware rather than relying entirely on emulation. Although Ryujinx was extremely useful throughout development, I regularly installed builds directly onto my Nintendo Switch to verify that rendering, controls, performance, and audio behaved correctly on the real device. This helped uncover issues that would have been easy to miss in an emulator and made the project feel much more like a genuine homebrew application. By the end of this development cycle, Anukrama had gained a completely new rendering engine, proper Unicode support, improved audio playback, multiple study modes, a full menu system, animated visual effects, and a far more polished overall presentation. What originally started as a simple terminal-based study tool has now begun to feel like a complete Switch application designed specifically for practicing Bhagavad Gita verses.

0
0
3
Open comments for this post

19m 32s logged

hi again, i finally got a proper shell/menu system working for the app now.

right now it’s still really basic and mostly just a text UI, but it’s the first version where everything is structured properly instead of just random test code. you can move up and down with the dpad, press A to select options, and it switches between different states like practice, quiz, and settings.

it doesn’t actually do much yet in those modes, but that’s kind of the point of this step. i basically wanted to build a shell first so all the core navigation and input handling is stable before i start adding the real features. before this, everything was just separate test snippets, but now it’s all inside one loop with proper states, so it’s way easier to expand without breaking things.

pressing + still quits the app, and i made sure the input system is using the correct libnx setup from the examples, so the controls actually work properly on real hardware instead of randomly failing like before.

now that this shell is done, i can actually start building the real parts of the project. the plan is to plug in the verse system into practice mode first, where it shows a prompt and then eventually makes you continue the verse. quiz mode will probably come after that once the structure is solid.

Anyways, here is a pic of the shell from an emulator:

0
0
3
Open comments for this post

32m 16s logged

Hi everyone! I just started this project so i can get more comfortable with making my own games/apps, and I rlly wanted to make a switch app! So here’s my plan: I want to make a fully interactive and immersive 2d UI but i think ill make a text shell first so all the features work and ill make the UI later. when i was starting to make the code, I made a screen which said press + to exit. I pressed plus, but the game didn’t quit like it was supposed to. After making a test code to print all buttons pressed, I found out my code wasn’t even receiving any inputs.

I had to ask on reddit and I still couldn’t find any answers so i looked in the demo folder of the library I installed and was able to fix my code after reading the proper controller initialization that I should have used.

Here is a picture from an emulator of what the output is supposed to look like:

0
0
4
Ship Pending review

I loved creating my first macropad! The hardest part was getting the 3D model to actually show up on the website because of file paths, GitHub Pages setup, and weird JavaScript/module errors, but I mainly built it to make coding faster and to learn how a full hardware project comes together end to end. I made it because i wanted to create an efficient way to type code faster to speed up production of code!

Video of Project → See source code →
Open comments for this post

3h 27m 28s logged

I wanted to make a macropod and thought that it might be a rlly cool idea if i can use it to speed up coding by adding pre build code that is frequently used by hack clubbers.

I started with the KMK firmware and wrote the keymap for the Seeeduino XIAO. I set up three inputs on D10, D9, and D8, then assigned macros to each key: an if/else block, a for loop, and a debug print statement. The macros are designed to insert the full snippet and move the cursor into the correct position inside the code.

After firmware, I moved to the PCB design in KiCad. I created a simple schematic (following the tutorial) using the XIAO and three push buttons, then routed the connections directly to the GPIO pins used in the firmware.

Finally, I designed a basic 3D case with a top and bottom shell. The case was modeled around the PCB footprint, with cutouts for the switches and USB port, and basic tolerances for fit. It was annoying that the plate generator wouldn’t generate the correct size that would fit with the rest of my build, so I resized it and broke it into and extra piece for simplicity.

At the end, I organized everything into the required repository structure, including firmware, PCB files, and CAD exports.

I’m rlly proud of this project, and hope that I can use it to create other projects too! :)

1
0
18

Followers

Loading…