Activity

Hash

Shipped this project!

Hours: 18.91
Cookies: 🍪 319
Multiplier: 16.86 cookies/hr

Second Ship! (Last Ship)
First ship had a pretty bad UI, this one is not the best but it works, and a major feature was missing, the quiz feature, I added that too, and because it was second ship, thought why not optimize some stuff from previous ship to get that juicy RAM.

Read -> Hover to see Details -> Click to mark is weak work -> Attempt Quiz

Hash

Optimization:

  • Lazy Loading
  • HTTP Caching
  • Removed Unnecessary Dependencies

Lazy Loading:

  • This one was pretty simple, used react’s magic. although as expected it didnt make a significant difference on my small site.

HTTP Caching:

  • Added HTTP caching using django utilities, endpoints like /paragraph/<:id> and /word/<:word> are called often with same arguments, so HTTP caching made a significant difference here.

Removed Unnecessary Dependencies:

  • I was using axios, it was not really unnecessary, but gotta do optimization for the sidequest, so made my own simple api objects with .get and .post methods.

Changelog

Attachment
Attachment
0
Hash

Progress:

  • Finished the Quiz module.

Detials:

  • Changed quiz models to support a different system, earlier question had a quiz foreign key, now its a many-to-many relation cuz that makes so much more sense, also added some fields to different models, like state for quiz. Set up a randomized Quiz generator, it does prioritize the words user marked as weak, but still in a random order. Used approach to make frontend request for each mcq separately and protected correct option from client.
  • For frontend used co-pilot to create a template and then worked on it to customize it. Kept the very minimal design.

Changelog

Ai was used in this commit

Attachment
Attachment
Attachment
0
Hash

Progress:

  • Made frontend for paragraph/read/
  • Adjust paragraph rendering
  • Laid down foundations for Quiz feature

Frontend Changes Details:

  • Instead of just coping from older page, made it from scratch, just like entire app’s design had to keep it simple and minimal. So it will contain only the required information. Paragraph to read and the information box.

Paragraph Formatting Changes:

  • In old login .split() method of strings was being used to separate words, this caused some unnecessary elements. So instead used a custom method to split words. Also added logic for newline characters and symbols in frontend.

Quiz Feature Details:

  • Changed quiz model to use Lexeme as Foreign key, this will allow us to track weak words down for a user and prioritize these words’ mcqs in quiz. Also used the utility ai script to generate MCQs for words, and used co-pilot to seed them in DB.

Changelog

AI was used in this commit

Attachment
0
Hash

Progress:

  • Split paragraph page into two parts.
  • UI changes

Details:

  • Previously there was just one page for paragraph selection and reading, Now there is a new route for reading, so /paragraph and /paragraph/read/. It should have been like this from start but it was my mistake, as things started getting complicated the code started to get messy, I think this new version with two files and two routes is much better.

Changelog

Attachment
0
Hash

Progress:

  • Changed the models to fix the issue of multiple words with same meanings. Optimized storage.
  • Add 1 long paragraph with details of its every word to DB

About Data Base Changes:

  • Previously there was just one word model, so for two words having same meaning, two rows were being created, it was a bit messy, so I split it into two models Lexeme and WordSense, Lexeme right now has just one field thats word, and WordSense contains all the details about a sense, so many WordSense can have one Lexeme foreign key, This might be helpful in future when instead of strictly spelled same words getting same Lexeme we can add different forms of words get the same Lexeme, so one lookup to run can fetch all the related words like running and ran.

About Data Seeding (less technical, more yap):

  • Last DB wanst perfect, it used gemma-4 model so word details were pretty bad, This time i spent a lot of time on it, so i found a paragraph pretty early with around 240 words, but I needed details of those 240 words, that is 17 different fields per word, none of the API’s provided all of the fields, so I used a ton of co-pilot to generate scripts to make api calls to gemma4 to make JSONs, then refined those JSONs by going back and forth between different AIs and APIs and then finally used co-pilot to create a script to seed that data into DB.

Changelog

AI was used to do some tasks in this log

Attachment
Attachment
0
Hash

Progress:

  • Deployed website
  • Add AI utility to be used later

The image is of structured response returned by gemini about a word.

Attachment
0
Hash

Shipped this project!

Hours: 12.1
Cookies: 🍪 118
Multiplier: 9.76 cookies/hr

Its a discord server co-pilot, time to end prefix and slash commands in discord, promptss!!!!
This ship is not the final version of project, it only includes channels setup for now, i hope i add roles and permissions setups during this event and ship it again.

Hash

Progress

  • Add DB for per server persistent configs.
  • Add Logging of Bot’s actions.
  • Add an initialize command to setup bot in a server.
  • Add restrictions for who can give bot commands.
  • Made bot aware of some errors for better context and responses.
  • Add a basic system prompt for bot.

Next Tasks

  • Add multi server support
  • Add permissions setup
  • Fix some existing edge case bugs

Changelog

Ai was used to write system prompt and reformatting

Attachment
Attachment
Attachment
0
Hash

Progress

  • Detailed declaration of almost all tools for gemini API
  • Made a little TODO list

Next

  • I realized security and logs will be crucial for this project, because it uses an AI agent, so need to work on that, also i do have a todo list now, so will be checking a few of them too.

Changelog

AI was used to create gemini api declarations of existing python functions

Attachment
Attachment
0
Hash

Progress

  • Add two new tools to manage categories
  • Improve old tools
  • Add error handling

Time Spent Details

  • So, I was unaware of this concept that exceptions inside coroutines can get silently dropped without raising errors, so my code was failing silently, i had no idea why, it took a while to trace it and fix, and other than that it was just basic tool definitions and most of the time went untracked because it was on discord.py docs and testing bot inside discord.

Changelog


Known Issues Seen in Video

  • Bot is very slow (probably google’s fault)
  • Inconsistent (Due to bad tool descriptions)
0
Hash

About Project

  • An AI agent server admin for your discord server, unlike traditional discord bots which work on fixed commands, with this bot, you should be able to manage your server just by talking.

Progress

  • So i have a basic agentic loop and some tools ready, in the screenshot attached the bot actually called a couple of tools to rename channel, it first fetched all the channels, filtered id and then called a tool to rename. So i know agentic loop is working.

Next

  • I will try to add some thinking steps in the response, I havent formed a system prompt yet, so thats what i will do and at last need to figure how to manage the message context, would it be channel scoped or server scoped? should it be depending on times or number of messages?

Changelog

Attachment
0
Hash

Previous ship got rejected because it used demo credentials to login, so setup signup system.
There is no verification such as email OTP or link right now, but i think it works for now.
Before requesting a recertification, i will improve some other bits of Ui first.

if anyone is actually reading this logs, you will know i tried to hurry and ship early due to the lock in sidequest, update on that is, even tho my ship got rejected, i got an extra day to fix the issues and reship.

Attachment
Attachment
Attachment
0
Hash

Shipped this project!

Hours: 18.17
Cookies: 🍪 396
Multiplier: 21.8 cookies/hr

I started building an app that will help users build their english vocabulary, this is just the first very basic version of it, I am planning on keeping track of users knowledge to create personalized MCQs quizzes later. This ship was done in a little hurry because of lock in side quest, i couldnt find time to code for the whole weak, but i will give a lot more time to this project in future.

Hash

This looks so incomplete, but i need to ship for the lock in side quest, i hope it doesnt get rejected, i am short on time. anyways, lets see what happens.

Attachment
0
Hash

This log is more of a rant than update, i wasted so much time on this, so i had this line of code commented, and when youre suppose to uncomment it, you must comment another line for it to work, so when uncommented that line, i forgot to comment the line i was suppose to comment. (i have used the word comment a lot, i hope its still making sense)

This caused this very long session of debugging, anyways, a little progress has been made on the quiz page, and how it will be done, but i want to submit this project for the lock in side quest, so i might ship it without that feature and then work on it later

Its not allowed to attach picture of code and i must attach a picture, so here is a picture of endpoint i created(and spend a lot of time to actually use it)

Attachment
0
Hash

back after a long break, gotta do those 10 hours for lock in sidequest
Anyways
Worked On:

  • Populating DB with multiple new paragraphs
  • Added more fields for each word
  • Improved UI a little
Attachment
0
Hash

Worked On:

  • Adding Login/Logout using JWT authentication
  • Fetching words’ meanings from the backend
    ( i am aware of the shitty UI, i will work on when everything else is done)

So now user can select a paragraph they want to read and then hover over any word to fetch its meaning from backend, i have not setup the logic to add the hovered word to user’s weak words yet, thats what i will do very soon, and also setup secure login/logout with JWT authentication.

Attachment
0
Hash

Changes:

  • New Paragraphs Page
  • Sample data of 2 paragraphs with each of their words meaning in DB

Next before moving to UI tweaks, I will be working on making each word of a paragraph a separate DOM element which when hovered, fetches its meaning from DB and shows it to use the user.

Attachment
0
Hash

Changes:

  • Made some cleanup changes to backend.
  • Started working on home page (image is obviously unfinished)

Yap:
So i am really really bad with UI, my experience with UI is almost zero, but somehow i am doing it in react, so this is what i am up to now, to give an idea of how bad i am with UI, let me share my last 3 searches, what property in css stops a text inside container from breaking into lines, border syntax in css and shadow syntax.
So yeah, this is gonna take time, but i think its a simple project and shouldnt take longer.

Attachment
0
Hash

First Log!!
Current Vision:

  • I want to create an english vocabulary builder app, but i wanna make it different/effective by tracking user’s weak words and creating personalized MCQs based on these. So its main idea is user is given a paragraph to read, when user thinks they dont know a word, they can hover over the word to see its meaning, and by doing this they will automatically save it as their weak word, and after a few paragraphs user can create a quiz based on the weak words.

Progress:

  • Initial Backend endpoints and models
  • Backend user auth and login

Next:

  • Gonna move to setup a basic frontend to interact with the app
Attachment
0
Hash

Shipped this project!

Hours: 60.57
Cookies: 🍪 782
Multiplier: 22.46 cookies/hr

This is just a final ship to make those additional minor changes hours count.

Hash

First time building a web extension, kept seeing a service worker error. I tried fixing but i literally had no code, so i didnt know what was the problem, so i have decided to fix it later.

progress:

  • Just have the basic ready so i can start with backend (not sure even if its considered backend)
Attachment
0
Hash

changes:

  • Add a Toast notification for different notifications
  • Stopped users from starting game with just 1 player
  • Changed how in game UI btns are displayed
  • Changed meeting start trigger from “m” key to a proximity USE button
Attachment
0
Hash

changes:

  • Fixed a bug which caused “waiting for host” btn to persist
  • Fixed hidden kill button for imposter
  • Fixed ghost rooms bug which caused rooms to exist without players
Attachment
0
Hash

changes:

  • Fixed multiplayer issue
  • Fixed a bug so now only host can start a meeting
  • Changed lobby scene map
Attachment
0
Hash

Shipped once and got rejected with reason “Multiple issues, eg that multiple players don’t show up to eachother”.
It was my mistake that i didnt mention that IDs persist on same browser, changed it to store data in sessionStorage.

Attachment
0
Hash

Shipped this project!

Hours: 53.12
Cookies: 🍪 578
Multiplier: 10.88 cookies/hr

I built a clone of among us game, the most challenging thing was i built it in javascript frameworks, and i use python, so this was my first project with javascript.
I am proud that i accurately used and understood some javascript concepts like promises and callbacks, which previously felt very complicated.

I will be making changes to this project and keep improving it.

Hash

created ReadMe.md file, optimized some socket events. ready to ship, will keep working on it.

Attachment
1

Comments

yousseifindx5
yousseifindx5 3 months ago

Your project is on 🔥🔥

Hash

Update:

  • Its pretty much done and ready to ship, I will continue working on it and if i find time, i will make it flavor town themed with kitchen tasks.

Changes:

  • Added a role indicator toaster.
  • Fixed the bug mentioned in log earlier

TODO:

  • Clean up code by removing console.log statements used for debugging, also remove extra commented code
  • Finish some minor UI changes.
  • Create a ReadMe.md
  • Deploy
Attachment
0
Hash

Changes to Emergency Meeting System:

  • Setup backend listeners and emitters for vote/win/meetingStarted events
  • Built logic to update all clients in a room when one clients votes

Pending Bug:

  • When a meeting ends via allPlayersVoted the event meeting:ended is being sent before the meeting:vote event of the last vote.

Also it will be very helpful if anyone can give me some advice that can help me make my code more readable and clean, i used to code in python, new to javascript, ngl sometimes even i struggle with understanding the code i write.

Attachment
0
Hash

turned out i am really bad with frontend, this took me 3 hours and its not synced yet.

Attachment
1

Comments

yousseifindx5
yousseifindx5 3 months ago

We all thank like that before, don’t worry, just continue😂♥️

Hash

update:

  • win condition is ready
  • meeting is kinda working

yap:
okay so, i rushed everything, used template win screens and some other stuff, buttt, i think the difficult part is over, now i just have to polish it.
I am thinking of just shipping it like this, because i have exams, if i ship now, i can relax and slowly work on new features later. I also dont want to spend time on maps/screens etc. because i may try to make it flavortown themed among us with different maps and cooking themed tasks, but i will do it after ship.

0
Hash

I am just wrapping up the project now(i have exams soon), getting it ready for ship, then i will polish and pay attention to detail, for now, there added this lazy view fog, will work on chat and meeting now.

Attachment
0
Hash

The imposter kill mechanic is almost done, will start working on voting system soon.

1

Comments

Hash
Hash 3 months ago

i just noticed that screen recording also recorded the spotify playing in the background, lmao

Hash

So the game is setting a random imposter on game start and there is a hitbox for the imposter to see if a player is near. Now i will start working kill mechanics.

0
Hash

updateeee, initially i had plans to implement a full tasks, sabotage and meeting systems and a lot of stuff, but as the code is getting a little complex, i am struggling a lot with minor problems, I have spent way too much time on just getting the imposter mechanics right, and its still not fixed, so i am planning on changing the goal, I will just get this imposter mechanics done and meeting system and ship, imma drop the tasks and sabotage system for now. Image is just a rough TODO list i have been using.

Attachment
0
Hash

Imposter mechanics are kinda done, but forget that, cuz i found out about UML Sequence Diagrams, and then i created a rough one for this project, and it helps a lot with debugging.

Attachment
0
Hash

update:

  • Improved UI of different areas
  • Added a lobby scene before actual game scene
  • Improved tileset map for collisions

next plan:

  • Add imposter selection and kill mechanics
0
Hash

I implemented maps, a smoother multiplayer and a lot of optimization of code. I know the scale and collisions are a bit off, I will polish it later. It was a bit sad that the time i spent on documentation and with chatgpt to understand how do add this tiledmaps wont be considered for cookies, but whatever, i think its coming out good for a first web game project.

0
Hash

i didnt work on the project during last couple of days, but last time i worked, i discovered the TODO comments on webstorm. So right now i have 7 of those comments scattered on my project, My goal for today will be to complete all 7 of them and then i will update here..

Attachment
1

Comments

Hash
Hash 3 months ago

update: i was able to finish all the pending tasks today, game working is pretty much the same but will start working on it tomorrow.

Hash

multiplayerrrr

2

Comments

knaj
knaj 4 months ago

Neat!

chefpenguino
chefpenguino 4 months ago

woah, this is really cool - good stuff

Hash

In my last log i said how i wanted to focus more on writing good code by defining types for parameters and variables, Yeah that is not going so well, in this image, rooms is not an Array. I should really learn typescript.

Attachment
0
Hash

Took this project as an opportunity to learn, I write very bad codes, so to get started with improving my written code, I just started using JSDocs and TypeScript checking. Liking it so far.

Attachment
0