|
43792
|
Teach Terminal by @Arsen | Stardance
|
Arsen
|
1
|
42.0
|
351
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-01T15:29:32Z", "hours": 42.0, "multiplier": 18.43, "payout": 351, "blessing": "neutral", "text": "Teach Terminal I made Teach Terminal - a browser-based Linux terminal simulator for learning basic Linux commands. The main problem I wanted to solve is that learning Linux from documentation can be very passive. You read what cd or chmod does, but you don’t really remember it until you use it yourself. Also, using a real Linux system can be a little scary for beginners because one wrong command can cause problems. Teach Terminal gives you a fake Linux filesystem where you can practice without breaking a real computer. You can log in, choose a mode, and start learning. There are 25 lessons in 5 sections: Introduction, Navigation, Files, Text & Redirection, and Permissions. Every lesson has a small lecture and then practice. In the practice you need to type commands yourself, for example pwd , ls -la , chmod 755 , or sudo chown root file.txt . The terminal gives output and errors similar to what you can get in a real Ubuntu terminal. Note: This is a simulation. It does not enforce all Linux permissions and security rules, so some commands may behave differently than on a real system. What was challenging The fake filesystem was one of the harder parts. I made two classes for it. FileSystem handles the filesystem tree and navigation, and file represents the individual files and folders. It also stores things like permissions, owner, size and modification date. Getting absolute paths working was also a little difficult. I needed to go from the current file or folder to its parents until I reach the root. It is kind of like following a linked list backwards. Another problem was checking commands in multi-step practices. For example, when a user runs sudo chown root file.txt , the practice checker needs to check the whole command and not only chown root file.txt . I also had problems with resetting the practice state. If I make a folder with mkdir projects and then start the same practice again, it will fail because the folder already exists. So I needed to reset the practice filesystem when starting it again. Things I am happy with The lesson engine is probably the part I worked most on. It handles the lecture, practice, success state, and the progress for each step. I also made the lesson window draggable and minimizable. Pressing Escape can toggle the window. The terminal currently supports 16 commands and some extra features like flags, redirection ( > , >> , < , 2> ), tab autocomplete, arrow-key command history, and sudo with password checking. I also added 3 themes: Ubuntu, Hacker and Kali. The themes are used across the different pages. How to test Open the demo link. Go to Settings and choose a theme: Ubuntu, Hacker, or Kali. Log in with a valid username, machine name and password. Choose Guided Path if you want to try the lessons, or Free Exploration if you just want to use the terminal. In a lesson, read the lecture and click Start Practice . Type the commands in the terminal and follow the steps. Some commands you can try: pwd ls -la mkdir test cd test touch file.txt chmod 755 file.txt sudo chown root file.txt The project is made with plain HTML, CSS and JavaScript. I didn’t use frameworks or external dependencies.", "repo": "https://github.com/Arsen-Gevorgyan/teach-terminal", "demo": "https://arsen-gevorgyan.github.io/teach-terminal/"}]...
|
[{"post_id": 75823, "ts": "202 [{"post_id": 75823, "ts": "2026-10-01T08:23:43Z", "hours": 4.2042, "text": "Teach Terminal A browser-based game that teaches Linux terminal commands through interactive lessons and missions. Today Today I finished writing all 25 lessons and fixed several issues with the lesson system. The lessons are organized into 5 sections - Introduction, Navigation, Files, Text & Redirection, and Permissions - plus a final congratulations lesson. Each practice lesson has multiple steps, so instead of a single command to type, the user might create a file, change its permissions, and verify with ls -l . The window tracks progress with markers like [x] , [>] , and [ ] so it is clear where the user is. I also fixed bugs I found while testing the flow: The lesson window didn’t reset the filesystem between practices. If you completed mkdir projects once, replaying the lesson would fail because the folder already existed. Now the filesystem resets to a clean state at the start of every practice lesson. Sudo commands weren’t detected by the practice check. The checker only saw the inner command ( chown root file.txt ), not the full sudo chown root file.txt . Fixed by passing the full command through. Lesson 25 no longer has a practice - it just says “Congratulations! You finished Teach Terminal.” with a short message about what the user learned. Completed index.html - Start menu with Start and Settings buttons settings.html - Settings page with three themes (Ubuntu, Hacker, Kali) login.html - Login page with username, machine name, and password validation mode.html - Mode selection: Free Exploration or Guided Path lessons.html - Course overview with sections and lesson cards main.html - Interactive terminal interface style.css - Main styling, animated gradients, glassmorphism UI, theme colors login.css - Login page styling with themed backgrounds settings.js - Saves the selected theme using localStorage theme.js - Loads the saved theme and applies it automatically login.js - Form validation and redirect to mode page filesystem.js - Fake Linux filesystem with files, folders, permissions, owners, groups, sizes, and modification times terminal.js - Terminal input handling, prompt display, line management, colored output, sudo flow command.js - Command recognition and execution lessons-data.js - All 25 lessons organized into 5 sections lesson.js - Renders the lessons page timeline lesson-window.js - Runs the lesson window inside the terminal Current Commands pwd , ls , cd , mkdir , touch , echo , cat , rm , cp , mv , chmod , chown , sudo , clear , help , history With flags for most commands, redirection ( > , >> , < , 2> ), Tab autocomplete, arrow-key history, !! and !n expansion, and per-command help. Goal My goal is to create a realistic Linux terminal that teaches beginners how to use common commands through interactive lessons instead of just reading documentation. Next Steps Add grep , head , tail Add pipes ( | ) and shell operators ( && , || , ; ) Wildcards and brace expansion Try It Live Demo"}, {"post_id": 74998, "ts": "2026-09-28T20:14:08Z", "hours": 2.3608, "text": "Teach Terminal A browser-based game that teaches Linux terminal commands through interactive lessons and missions. Today Today I built the lesson window - the floating panel that runs inside the terminal during lessons. This is the piece that connects the lessons page to the terminal itself. When a user picks a lesson from the overview, the terminal opens with ?lesson=N in the URL. The lesson window reads that number, finds the lesson in the data file, and appears in the top-right corner of the screen. The window has three states: Lecture - shows the lesson text explaining the concept. The user reads and clicks “Start Practice” (or “Complete” for intro lessons). Practice - the window changes visually. Its border and title switch to an amber color, and a “PRACTICE:” prefix appears in the title. This makes it obvious that it’s time to do something, not just read. The user types the command in the terminal below. Success - when the expected command is typed, the window shows the success message and a “Next Lesson” button appears. Clicking it swaps the window content to the next lesson without reloading the page. The window is also draggable by its title bar. The user can move it anywhere, minimize it with - , or close it with × (which returns to the lessons page). Pressing Escape hides and shows the window. I also added replay support. If a lesson is already complete, the user can open it again, read the lecture, and try the practice a second time. The window still shows the success message, but the lesson status stays DONE - it does not re-mark anything. Some issues I hit: The intro lessons blocked the “Next Lesson” button because they were being re-completed in a loop. I fixed this by tracking a showingSuccess variable that tells the code whether we’re on the success screen or the lecture. The practice mode class wasn’t being added because the flow checked lessonComplete before checking whether we were in the practice phase. I reordered the checks so practice renders correctly even for replayed lessons. Completed index.html - Start menu with Start and Settings buttons settings.html - Settings page with three themes (Ubuntu, Hacker, Kali) login.html - Login page with username, machine name, and password validation mode.html - Mode selection: Free Exploration or Guided Path lessons.html - Course overview with sections and lesson cards main.html - Interactive terminal interface style.css - Main styling, animated gradients, glassmorphism UI, theme colors login.css - Login page styling with themed backgrounds settings.js - Saves the selected theme using localStorage theme.js - Loads the saved theme and applies it automatically login.js - Form validation and redirect to mode page filesystem.js - Fake Linux filesystem with files, folders, permissions, owners, groups, sizes, and modification times terminal.js - Terminal input handling, prompt display, line management, colored output command.js - Command recognition and execution lessons-data.js - All 25 lessons organized into 6 sections lesson.js - Renders the lessons page timeline lesson-window.js - Runs the lesson window inside the terminal Current Commands pwd , ls , cd , mkdir , touch , echo , cat , rm , cp , mv , clear , help , history With flags for most commands, redirection ( > , >> , < , 2> ), Tab autocomplete, arrow-key history, !! and !n expansion, and per-command help. Goal My goal is to create a realistic Linux terminal that teaches beginners how to use common commands through interactive lessons instead of just reading documentation. Next Steps Build chmod , chown , sudo for the Permissions section Write lesson content for lessons 21-24 Build the Final Mission with a timer and game-style objectives Try It Live Demo"}, {"post_id": 73734, "ts": "2026-09-25T20:12:13Z", "hours": 6.7292, "text": "Teach Terminal A browser-based game that teaches Linux terminal commands through interactive lessons and missions. Today Today I built the lessons system. This is the biggest step so far - the part that turns the terminal into a real teaching tool. The lessons system has three parts: The lessons overview page ( lessons.html ) shows all lessons organized into sections: Introduction Navigation Files Text & Redirection Permissions Final Mission Each lesson appears as a card with a status: START (unlocked), DONE (completed), or LOCK (not yet unlocked). Intro lessons are always open so users can read them or skip. Navigation lessons unlock one at a time. Later sections unlock when the previous section is finished. The lessons data file ( lessons-data.js ) stores all lesson content in one place. Each lesson has a lecture that explains the concept and a practice task with an expected command. The lesson engine ( lesson-window.js ) will run inside main.html . It opens a floating window with the current lesson, shows the lecture, then the practice. When the user types the correct command, the lesson completes and unlocks the next one. I also built the mode selection page ( mode.html ). After login, the user picks between two paths: Free Exploration : opens the terminal with no lessons Guided Path : opens the lessons overview Progress saves to localStorage so completed lessons stay completed. Some issues I hit: The unlock logic had a bug where Intro lessons blocked Navigation. I fixed it by skipping intro sections in the unlock check. CSS conflicts between .lesson-subtitle (used inside lesson cards) and .lessons-subtitle (used on the page). I renamed them to avoid mixing styles. The lessons page inherited overflow: hidden from the body, so it could not scroll. I added a body.lessons-page override. Completed index.html - Start menu with Start and Settings buttons settings.html - Settings page with three themes (Ubuntu, Hacker, Kali) login.html - Login page with username, machine name, and password validation mode.html - Mode selection: Free Exploration or Guided Path lessons.html - Course overview with sections and lesson cards main.html - Interactive terminal interface style.css - Main styling, animated gradients, glassmorphism UI, theme colors login.css - Login page styling with themed backgrounds settings.js - Saves the selected theme using localStorage theme.js - Loads the saved theme and applies it automatically login.js - Form validation and redirect to mode page filesystem.js - Fake Linux filesystem with files, folders, permissions, owners, groups, sizes, and modification times terminal.js - Terminal input handling, prompt display, line management, colored output commands.js - Command recognition and execution lessons-data.js - All 25 lessons organized into 6 sections lesson.js - Renders the lessons page timeline Current Commands pwd , ls , cd , mkdir , touch , echo , cat , rm , cp , mv , clear , help , history With flags for most commands, redirection ( > , >> , < , 2> ), Tab autocomplete, arrow-key history, !! and !n expansion, and per-command help. Goal My goal is to create a realistic Linux terminal that teaches beginners how to use common commands through interactive lessons instead of just reading documentation. Next Steps Build the lesson window inside main.html (lecture, practice, success phases) Make the window draggable and minimizable with an Escape key toggle Build the Final Mission with game-style objectives Add remaining commands ( grep , head , tail , chmod , chown ) Try It Live Demo"}, {"post_id": 72453, "ts": "2026-09-23T00:38:08Z", "hours": 8.2353, "text": "Teach Terminal A browser-based game that teaches Linux terminal commands through interactive lessons and missions. Today Today I added redirection to the terminal. Commands can now read from files and write to them instead of only printing to the screen. The terminal now supports: > - write output to a file (overwrites) >> - append output to a file < - read input from a file 2> - redirect error output to a file I also connected < to cat so it can read from a file through stdin. To make this work, I had to refactor how commands run. The old processCommand returned output directly. I renamed it to executeCommand and wrote a new processCommand wrapper above it that parses redirection operators before the command runs, then decides where the output goes. The refactor was harder than expected. I hit several bugs - a typo in stderrMatch , a missing $ anchor in a regex, and a duplicate if block that used the wrong variable. I also had to fix catResults and lineNumber which I deleted during the refactor without realizing. Completed index.html - Start menu with Start and Settings buttons settings.html - Settings page with three themes (Ubuntu, Hacker, Kali) login.html - Login page with username, machine name, and password validation main.html - Interactive terminal interface style.css - Main styling, animated gradients, glassmorphism UI, and theme colors login.css - Login page styling with themed backgrounds settings.js - Saves the selected theme using localStorage theme.js - Loads the saved theme and applies it automatically login.js - Form validation and redirect to terminal filesystem.js - Fake Linux filesystem with files, folders, permissions, owners, groups, sizes, and modification times terminal.js - Terminal input handling, prompt display, line management, colored output commands.js - Command recognition and execution Current Commands pwd , ls , cd , mkdir , touch , echo , cat , rm , cp , mv , clear , help With flags for most commands, redirection ( > , >> , < , 2> ), and per-command help. Goal My goal is to create a realistic Linux terminal that teaches beginners how to use common commands through interactive lessons instead of just reading documentation. Next Steps Command history (up/down arrow keys) Tab autocomplete history command, !! , !n Add grep , head , tail Add chmod , chown Wildcards, brace expansion, && , || Build the lesson system (lectures + practice missions) Try It Live Demo"}, {"post_id": 51663, "ts": "2026-08-21T13:49:47Z", "hours": 2.9792, "text": "Teach Terminal A browser-based game that teaches Linux terminal commands through interactive lessons and missions. Today Today I built the fake filesystem and connected it to the terminal. The terminal now feels like a real Linux system. The filesystem supports: pwd - shows current directory ls - lists files and folders with colors (blue for directories, green for executables, white for files) ls -l - shows permissions, owner, group, and name cd - navigate with ~ , . , .. , and absolute paths mkdir - create folders touch - create files The prompt updates when navigating directories. It shows ~ for the home directory and the full path everywhere else. I also added realistic bash error messages. Invalid flags, missing arguments, and wrong paths all show proper errors like a real terminal would. The terminal now has 7 working commands with real filesystem behavior. Next step is building the lesson system that teaches these commands one by one. Completed index.html - Start menu with Start and Settings buttons settings.html - Settings page with three themes (Ubuntu, Hacker, Kali) login.html - Login page with username, machine name, and password validation main.html - Interactive terminal interface style.css - Main styling, animated gradients, glassmorphism UI, and theme colors login.css - Login page styling with themed backgrounds settings.js - Saves the selected theme using localStorage theme.js - Loads the saved theme and applies it automatically login.js - Form validation and redirect to terminal filesystem.js - Fake Linux filesystem with files, folders, permissions, and navigation terminal.js - Terminal input handling, prompt display, line management, colored output commands.js - Command recognition ( help , pwd , clear , ls , cd , mkdir , touch ) Goal My goal is to create a realistic Linux terminal that teaches beginners how to use common commands through interactive lessons instead of just reading documentation. Next Steps Build the lesson system (lectures + practice missions) Add more commands ( cat , rm , cp , mv , chmod , chown ) Add command history (up/down arrow keys) Add redirection ( > , >> , < ) Improve mobile experience Try It Live Demo"}, {"post_id": 45917, "ts": "2026-08-12T18:06:17Z", "hours": 3.5864, "text": "Teach Terminal A browser-based game that teaches Linux terminal commands through interactive lessons and missions. Today Today I built the login page. It’s a page where the user enters their username, machine name, and password before entering the terminal. The form validates each field: Username must be 4–9 characters, start with a letter, and contain only letters and numbers Machine name follows the same rules Password must be 8–19 characters If something is wrong, an error message appears below the form showing what needs to be fixed. After all fields are entered correctly, the data is saved and the user is redirected to the terminal. The terminal itself is not fully finished yet — commands work, but there’s no filesystem and no lessons. That’s the next step. Completed index.html — Start menu with Start and Settings buttons settings.html — Settings page with three themes (Ubuntu, Hacker, Kali) login.html — Login page with username, machine name, and password validation main.html — Interactive terminal interface style.css — Main styling, animated gradients, glassmorphism UI, and theme colors login.css — Login page styling with themed backgrounds settings.js — Saves the selected theme using localStorage theme.js — Loads the saved theme and applies it automatically login.js — Form validation and redirect to terminal terminal.js — Terminal input handling, prompt display, line management commands.js — Command recognition ( help , pwd , clear , whoami , date , echo ) Goal My goal is to create a realistic Linux terminal that teaches beginners how to use common commands through interactive lessons instead of just reading documentation. Next Steps Build a fake filesystem ( cd , ls , mkdir , touch ) Add file permissions ( chmod , chown , sudo ) Create lessons and practice missions Add command history (up/down arrow keys) Try It Live Demo"}, {"post_id": 40664, "ts": "2026-08-04T11:00:02Z", "hours": 13.4225, "text": "Teach Terminal A browser-based game that teaches Linux terminal commands through interactive lessons and missions. What I Built I started the project by creating the basic structure of the website and the main navigation. Completed index.html — Start menu with Start and Settings buttons. settings.html — Settings page. main.html — Initial game page. style.css — Main styling, animated gradients, glassmorphism UI, and theme colors. settings.js — Saves the selected theme using localStorage . theme.js — Loads the saved theme and applies it automatically. Goal My goal is to create a realistic Linux terminal that teaches beginners how to use common commands through interactive lessons instead of just reading documentation. Next Steps Build the interactive terminal. Add Linux commands and command processing. Create lessons and practice missions. Improve the mobile experience."}]...
|
Title: Teach Terminal by @Arsen | Stardance
Devlo Title: Teach Terminal by @Arsen | Stardance
Devlogs:
Teach Terminal A browser-based game that teaches Linux terminal commands through interactive lessons and missions. What I Built I started the project by creating the basic structure of the website and the main navigation. Completed index.html — Start menu with Start and Settings buttons. settings.html — Settings page. main.html — Initial game page. style.css — Main styling, animated gradients, glassmorphism UI, and theme colors. settings.js — Saves the selected theme using localStorage . theme.js — Loads the saved theme and applies it automatically. Goal My goal is to create a realistic Linux terminal that teaches beginners how to use common commands through interactive lessons instead of just reading documentation. Next Steps Build the interactive terminal. Add Linux commands and command processing. Create lessons and practice missions. Improve the mobile experience.
Teach Terminal A browser-based game that teaches Linux terminal commands through interactive lessons and missions. Today Today I built the login page. It’s a page where the user enters their username, machine name, and password before entering the terminal. The form validates each field: Username must be 4–9 characters, start with a letter, and contain only letters and numbers Machine name follows the same rules Password must be 8–19 characters If something is wrong, an error message appears below the form showing what needs to be fixed. After all fields are entered correctly, the data is saved and the user is redirected to the terminal. The terminal itself is not fully finished yet — commands work, but there’s no filesystem and no lessons. That’s the next step. Completed index.html — Start menu with Start and Settings buttons settings.html — Settings page with three themes (Ubuntu, Hacker, Kali) login.html — Login page with username, machine name, and password validation main.html — Interactive terminal interface style.css — Main styling, animated gradients, glassmorphism UI, and theme colors login.css — Login page styling with themed backgrounds settings.js — Saves the selected theme using localStorage theme.js — Loads the saved theme and applies it automatically login.js — Form validation and redirect to terminal terminal.js — Terminal input handling, prompt display, line management commands.js — Command recognition ( help , pwd , clear , whoami , date , echo ) Goal My goal is to create a realistic Linux terminal that teaches beginners how to use common commands through interactive lessons instead of just reading documentation. Next Steps Build a fake filesystem ( cd , ls , mkdir , touch ) Add file permissions ( chmod , chown , sudo ) Create lessons and practice missions Add command history (up/down arrow keys) Try It Live Demo
Teach Terminal A browser-based game that teaches Linux terminal commands through interactive lessons and missions. Today Today I built the fake filesystem and connected it to the terminal. The terminal now feels like a real Linux system. The filesystem supports: pwd - shows current directory ls - lists files and folders with colors (blue for directories, green for executables, white for files) ls -l - shows permissions, owner, group, and name cd - navigate with ~ , . , .. , and absolute paths mkdir - create folders touch - create files The prompt updates when navigating directories. It shows ~ for the home directory and the full path everywhere else. I also added realistic bash error messages. Invalid flags, missing arguments, and wrong paths all show proper errors like a real terminal would. The terminal now has 7 working commands with real filesystem behavior. Next step is building the lesson system that teaches these commands one by one. Completed index.html - Start menu with Start and Settings buttons settings.html - Settings page with three themes (Ubuntu, Hacker, Kali) login.html - Login page with username, machine name, and password validation main.html - Interactive terminal interface style.css - Main styling, animated gradients, glassmorphism UI, and theme colors login.css - Login page styling with themed backgrounds settings.js - Saves the selected theme using localStorage theme.js - Loads the saved theme and applies it automatically login.js - Form validation and redirect to terminal filesystem.js - Fake Linux filesystem with files, folders, permissions, and navigation terminal.js - Terminal input handling, prompt display, line management, colored output commands.js - Command recognition ( help , pwd , clear , ls , cd , mkdir , touch ) Goal My goal is to create a realistic Linux terminal that teaches beginners how to use common commands through interactive lessons instead of just reading documentation. Next Steps Build the lesson system (lectures + practice missions) Add more commands ( cat , rm , cp , mv , chmod , chown ) Add command history (up/down arrow keys) Add redirection ( > , >> , < ) Improve mobile experience Try It Live Demo
Teach Terminal A browser-based game that teaches Linux terminal commands through interactive lessons and missions. Today Today I added redirection to the terminal. Commands can now read from files and write to them instead of only printing to the screen. The terminal now supports: > - write output to a file (overwrites) >> - append output to a file < - read input from a file 2> - redirect error output to a file I also connected < to cat so it can read from a file through stdin. To make this work, I had to refactor how commands run. The old processCommand returned output directly. I renamed it to executeCommand and wrote a new processCommand wrapper above it that parses redirection operators before the command runs, then decides where the output goes. The refactor was harder than expected. I hit several bugs - a typo in stderrMatch , a missing $ anchor in a regex, and a duplicate if block that used the wrong variable. I also had to fix catResults and lineNumber which I deleted during the refactor without realizing. Completed index.html - Start menu with Start and Settings buttons settings.html - Settings page with three themes (Ubuntu, Hacker, Kali) login.html - Login page with username, machine name, and password validation main.html - Interactive terminal interface style.css - Main styling, animated gradients, glassmorphism UI, and theme colors login.css - Login page styling with themed backgrounds settings.js - Saves the selected theme using localStorage theme.js - Loads the saved theme and applies it automatically login.js - Form validation and redirect to terminal filesystem.js - Fake Linux filesystem with files, folders, permissions, owners, groups, sizes, and modification times terminal.js - Terminal input handling, prompt display, line management, colored output commands.js - Command recognition and execution Current Commands pwd , ls , cd , mkdir , touch , echo , cat , rm , cp , mv , clear , help With flags for most commands, redirection ( > , >> , < , 2> ), and per-command help. Goal My goal is to create a realistic Linux terminal that teaches beginners how to use common commands through interactive lessons instead of just reading documentation. Next Steps Command history (up/down arrow keys) Tab autocomplete history command, !! , !n Add grep , head , tail Add chmod , chown Wildcards, brace expansion, && , || Build the lesson system (lectures + practice missions) Try It Live Demo
Teach Terminal A browser-based game that teaches Linux terminal commands through interactive lessons and missions. Today Today I built the lessons system. This is the biggest step so far - the part that turns the terminal into a real teaching tool. The lessons system has three parts: The lessons overview page ( lessons.html ) shows all lessons organized into sections: Introduction Navigation Files Text & Redirection Permissions Final Mission Each lesson appears as a card with a status: START (unlocked), DONE (completed), or LOCK (not yet unlocked). Intro lessons are always open so users can read them or skip. Navigation lessons unlock one at a time. Later sections unlock when the previous section is finished. The lessons data file ( lessons-data.js ) stores all lesson content in one place. Each lesson has a lecture that explains the concept and a practice task with an expected command. The lesson engine ( lesson-window.js ) will run inside main.html . It opens a floating window with the current lesson, shows the lecture, then the practice. When the user types the correct command, the lesson completes and unlocks the next one. I also built the mode selection page ( mode.html ). After login, the user picks between two paths: Free Exploration : opens the terminal with no lessons Guided Path : opens the lessons overview Progress saves to localStorage so completed lessons stay completed. Some issues I hit: The unlock logic had a bug where Intro lessons blocked Navigation. I fixed it by skipping intro sections in the unlock check. CSS conflicts between .lesson-subtitle (used inside lesson cards) and .lessons-subtitle (used on the page). I renamed them to avoid mixing styles. The lessons page inherited overflow: hidden from the body, so it could not scroll. I added a body.lessons-page override. Completed index.html - Start menu with Start and Settings buttons settings.html - Settings page with three themes (Ubuntu, Hacker, Kali) login.html - Login page with username, machine name, and password validation mode.html - Mode selection: Free Exploration or Guided Path lessons.html - Course overview with sections and lesson cards main.html - Interactive terminal interface style.css - Main styling, animated gradients, glassmorphism UI, theme colors login.css - Login page styling with themed backgrounds settings.js - Saves the selected theme using localStorage theme.js - Loads the saved theme and applies it automatically login.js - Form validation and redirect to mode page filesystem.js - Fake Linux filesystem with files, folders, permissions, owners, groups, sizes, and modification times terminal.js - Terminal input handling, prompt display, line management, colored output commands.js - Command recognition and execution lessons-data.js - All 25 lessons organized into 6 sections lesson.js - Renders the lessons page timeline Current Commands pwd , ls , cd , mkdir , touch , echo , cat , rm , cp , mv , clear , help , history With flags for most commands, redirection ( > , >> , < , 2> ), Tab autocomplete, arrow-key history, !! and !n expansion, and per-command help. Goal My goal is to create a realistic Linux terminal that teaches beginners how to use common commands through interactive lessons instead of just reading documentation. Next Steps Build the lesson window inside main.html (lecture, practice, success phases) Make the window draggable and minimizable with an Escape key toggle Build the Final Mission with game-style objectives Add remaining commands ( grep , head , tail , chmod , chown ) Try It Live Demo
Teach Terminal A browser-based game that teaches Linux terminal commands through interactive lessons and missions. Today Today I built the lesson window - the floating panel that runs inside the terminal during lessons. This is the piece that connects the lessons page to the terminal itself. When a user picks a lesson from the overview, the terminal opens with ?lesson=N in the URL. The lesson window reads that number, finds the lesson in the data file, and appears in the top-right corner of the screen. The window has three states: Lecture - shows the lesson text explaining the concept. The user reads and clicks “Start Practice” (or “Complete” for intro lessons). Practice - the window changes visually. Its border and title switch to an amber color, and a “PRACTICE:” prefix appears in the title. This makes it obvious that it’s time to do something, not just read. The user types the command in the terminal below. Success - when the expected command is typed, the window shows the success message and a “Next Lesson” button appears. Clicking it swaps the window content to the next lesson without reloading the page. The window is also draggable by its title bar. The user can move it anywhere, minimize it with - , or close it with × (which returns to the lessons page). Pressing Escape hides and shows the window. I also added replay support. If a lesson is already complete, the user can open it again, read the lecture, and try the practice a second time. The window still shows the success message, but the lesson status stays DONE - it does not re-mark anything. Some issues I hit: The intro lessons blocked the “Next Lesson” button because they were being re-completed in a loop. I fixed this by tracking a showingSuccess variable that tells the code whether we’re on the success screen or the lecture. The practice mode class wasn’t being added because the flow checked lessonComplete before checking whether we were in the practice phase. I reordered the checks so practice renders correctly even for replayed lessons. Completed index.html - Start menu with Start and Settings buttons settings.html - Settings page with three themes (Ubuntu, Hacker, Kali) login.html - Login page with username, machine name, and password validation mode.html - Mode selection: Free Exploration or Guided Path lessons.html - Course overview with sections and lesson cards main.html - Interactive terminal interface style.css - Main styling, animated gradients, glassmorphism UI, theme colors login.css - Login page styling with themed backgrounds settings.js - Saves the selected theme using localStorage theme.js - Loads the saved theme and applies it automatically login.js - Form validation and redirect to mode page filesystem.js - Fake Linux filesystem with files, folders, permissions, owners, groups, sizes, and modification times terminal.js - Terminal input handling, prompt display, line management, colored output command.js - Command recognition and execution lessons-data.js - All 25 lessons organized into 6 sections lesson.js - Renders the lessons page timeline lesson-window.js - Runs the lesson window inside the terminal Current Commands pwd , ls , cd , mkdir , touch , echo , cat , rm , cp , mv , clear , help , history With flags for most commands, redirection ( > , >> , < , 2> ), Tab autocomplete, arrow-key history, !! and !n expansion, and per-command help. Goal My goal is to create a realistic Linux terminal that teaches beginners how to use common commands through interactive lessons instead of just reading documentation. Next Steps Build chmod , chown , sudo for the Permissions section Write lesson content for lessons 21-24 Build the Final Mission with a timer and game-style objectives Try It Live Demo
Teach Terminal A browser-based game that teaches Linux terminal commands through interactive lessons and missions. Today Today I finished writing all 25 lessons and fixed several issues with the lesson system. The lessons are organized into 5 sections - Introduction, Navigation, Files, Text & Redirection, and Permissions - plus a final congratulations lesson. Each practice lesson has multiple steps, so instead of a single command to type, the user might create a file, change its permissions, and verify with ls -l . The window tracks progress with markers like [x] , [>] , and [ ] so it is clear where the user is. I also fixed bugs I found while testing the flow: The lesson window didn’t reset the filesystem between practices. If you completed mkdir projects once, replaying the lesson would fail because the folder already existed. Now the filesystem resets to a clean state at the start of every practice lesson. Sudo commands weren’t detected by the practice check. The checker only saw the inner command ( chown root file.txt ), not the full sudo chown root file.txt . Fixed by passing the full command through. Lesson 25 no longer has a practice - it just says “Congratulations! You finished Teach Terminal.” with a short message about what the user learned. Completed index.html - Start menu with Start and Settings buttons settings.html - Settings page with three themes (Ubuntu, Hacker, Kali) login.html - Login page with username, machine name, and password validation mode.html - Mode selection: Free Exploration or Guided Path lessons.html - Course overview with sections and lesson cards main.html - Interactive terminal interface style.css - Main styling, animated gradients, glassmorphism UI, theme colors login.css - Login page styling with themed backgrounds settings.js - Saves the selected theme using localStorage theme.js - Loads the saved theme and applies it automatically login.js - Form validation and redirect to mode page filesystem.js - Fake Linux filesystem with files, folders, permissions, owners, groups, sizes, and modification times terminal.js - Terminal input handling, prompt display, line management, colored output, sudo flow command.js - Command recognition and execution lessons-data.js - All 25 lessons organized into 5 sections lesson.js - Renders the lessons page timeline lesson-window.js - Runs the lesson window inside the terminal Current Commands pwd , ls , cd , mkdir , touch , echo , cat , rm , cp , mv , chmod , chown , sudo , clear , help , history With flags for most commands, redirection ( > , >> , < , 2> ), Tab autocomplete, arrow-key history, !! and !n expansion, and per-command help. Goal My goal is to create a realistic Linux terminal that teaches beginners how to use common commands through interactive lessons instead of just reading documentation. Next Steps Add grep , head , tail Add pipes ( | ) and shell operators ( && , || , ; ) Wildcards and brace expansion Try It Live Demo
Ships:
Teach Terminal I made Teach Terminal - a browser-based Linux terminal simulator for learning basic Linux commands. The main problem I wanted to solve is that learning Linux from documentation can be very passive. You read what cd or chmod does, but you don’t really remember it until you use it yourself. Also, using a real Linux system can be a little scary for beginners because one wrong command can cause problems. Teach Terminal gives you a fake Linux filesystem where you can practice without breaking a real computer. You can log in, choose a mode, and start learning. There are 25 lessons in 5 sections: Introduction, Navigation, Files, Text & Redirection, and Permissions. Every lesson has a small lecture and then practice. In the practice you need to type commands yourself, for example pwd , ls -la , chmod 755 , or sudo chown root file.txt . The terminal gives output and errors similar to what you can get in a real Ubuntu terminal. Note: This is a simulation. It does not enforce all Linux permissions and security rules, so some commands may behave differently than on a real system. What was challenging The fake filesystem was one of the harder parts. I made two classes for it. FileSystem handles the filesystem tree and navigation, and file represents the individual files and folders. It also stores things like permissions, owner, size and modification date. Getting absolute paths working was also a little difficult. I needed to go from the current file or folder to its parents until I reach the root. It is kind of like following a linked list backwards. Another problem was checking commands in multi-step practices. For example, when a user runs sudo chown root file.txt , the practice checker needs to check the whole command and not only chown root file.txt . I also had problems with resetting the practice state. If I make a folder with mkdir projects and then start the same practice again, it will fail because the folder already exists. So I needed to reset the practice filesystem when starting it again. Things I am happy with The lesson engine is probably the part I worked most on. It handles the lecture, practice, success state, and the progress for each step. I also made the lesson window draggable and minimizable. Pressing Escape can toggle the window. The terminal currently supports 16 commands and some extra features like flags, redirection ( > , >> , < , 2> ), tab autocomplete, arrow-key command history, and sudo with password checking. I also added 3 themes: Ubuntu, Hacker and Kali. The themes are used across the different pages. How to test Open the demo link. Go to Settings and choose a theme: Ubuntu, Hacker, or Kali. Log in with a valid username, machine name and password. Choose Guided Path if you want to try the lessons, or Free Exploration if you just want to use the terminal. In a lesson, read the lecture and click Start Practice . Type the commands in the terminal and follow the steps. Some commands you can try: pwd ls -la mkdir test cd test touch file.txt chmod 755 file.txt sudo chown root file.txt The project is made with plain HTML, CSS and JavaScript. I didn’t use frameworks or external dependencies....
|
1793339670.9149792
|
1793426070.9149792
|
|
43793
|
mini_consol by @kdenis | Stardance
|
kdenis
|
1
|
28.27
|
331
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-21T08:49:31Z", "hours": 28.0, "multiplier": 11.7, "payout": 331, "blessing": "neutral", "text": "What did you make? I built a DIY mini handheld console powered by an Arduino Nano! My main goal was to dive into embedded systems development and get hands-on experience with hardware and C++. Because of this, I focused on core functionality rather than super complex games. When you turn it on, you’re greeted with a scrolling “mini console” text, followed by a game selection menu. During gameplay, pressing the designated pause button opens a pause menu where you can either resume (saving your current progress) or exit to the main menu. I included two games: Snake and Flappy Bird. What was challenging? Generating non-blocking audio feedback was definitely the hardest part. I implemented button click sounds using PWM to control the volume, which took a lot of time to tune since working with audio signals is trickier than controlling a motor. It required pseudo-multitasking using millis() to keep the gameplay smooth while playing sounds. Also, in Snake, I initially didn’t use a grid-based movement system and implemented pixel-by-pixel movement instead. Because of this, collision detection with food can occasionally miss. What are you proud of? I’m really proud of the software architecture and code structure in several parts of the project. I focused on clean OOP principles, solid encapsulation, and clear code organization (though a few spots are still a bit messy!). I’m also proud that i didn’t use delay funtion and of my Settings.h file What should people know so they can test your project? To test or build it, you just need to know how to connect the display and buttons to an Arduino Nano. Inside the Settings.h file, you can easily customize pin configurations, volume, colors, display sizes, and game speeds. I also added comments throughout the codebase to make it easy to follow along!", "repo": "https://github.com/deniska-design/mini_consol", "demo": "https://www.youtube.com/watch?v=uTfua7OpIts"}]...
|
[{"post_id": 53755, "ts": "202 [{"post_id": 53755, "ts": "2026-08-24T13:03:26Z", "hours": 0.2725, "text": "DevLog №10 prepared everything for shiping. added wiring.png and AI usage declaration in my README file."}, {"post_id": 50404, "ts": "2026-08-19T15:50:50Z", "hours": 2.895, "text": "DevLog №9 ###What’s New Walls & Pipes Mechanics: Added moving wall obstacles. Score Counter: Integrated a score tracking system. ###How It Works Score Logic: To keep things simple and efficient, the score increases automatically whenever a wall reaches the left edge of the screen. Illusion of Movement: The bird stays in place while the walls continuously cycle and reset from the right edge back to the left. This creates a smooth side-scrolling illusion! It was a fairly straightforward feature to implement, but it instantly made the project feel much more like a complete game!"}, {"post_id": 48980, "ts": "2026-08-17T15:48:49Z", "hours": 2.9033, "text": "Devlog №8 Bird Physics & Rendering Flicker-Free Rendering To prevent screen flickering caused by redrawing the entire screen, I optimized the loop by clearing only the bird’s exact position before rendering its new frame. Physics Implementation Movement relies on both velocity and acceleration : Acceleration continuously increases the downward velocity (gravity). Jump mechanic resets the downward velocity to initial on every input. Next Steps: Wall Generation Obstacle Setup I need to create an array of one dynamic wall . Recycling Logic As soon as a wall reaches the left edge of the screen, it will wrap around to the right . The height/position will randomize each time it reappears to form a continuous level."}, {"post_id": 46939, "ts": "2026-08-14T14:36:32Z", "hours": 1.1725, "text": "Devlog №7 implemted PMW to control sound volume"}, {"post_id": 46796, "ts": "2026-08-14T09:32:51Z", "hours": 0.7017, "text": "Devlog №6 Today I quickly set up the startup text so it scrolls smoothly, and that’s pretty much it. Nothing complicated, really—took me literally half an hour. Next up: finish tuning the PWM to quiet down the audio, and then I’ll probably work on making a more interesting splash screen."}, {"post_id": 46404, "ts": "2026-08-13T16:12:02Z", "hours": 8.6364, "text": "Devlog №5 I added sound effects for every button press on my mini-console! Sounds like a super quick and easy task, right? Well, it should have been. But a few architectural bumps in the road ended up eating way more time than expected. What went wrong (and how I fixed it) Hardware Pin Conflict: My buzzer was originally soldered to a pin used by SPI . As soon as the display initialized, things went sideways. Game Loop vs. Main Loop Architecture: My game logic was running inside an infinite loop within a standalone function, while the sound playback logic lived in the main loop calling that function. Solution: soldered the buzzer to another pin and quick architecture refactor solved both problems pretty easily — I spent about an hour on each issue. The Biggest Problem: A very loud buzzer remains the biggest and unsolved issue. I tried to tame it in software using PWM (Pulse Width Modulation) to decrease the volume. But PWM control is tricky on its own, and since the buzzer relies on a fixed frequency to generate tone, layering custom PWM over it completely broke the audio pitch. Next Up: Implement smooth scrolling text for the console startup screen. Conquer this cursed PWM/volume issue once and for all. Start writing a Flappy Bird clone"}, {"post_id": 43336, "ts": "2026-08-08T15:14:08Z", "hours": 3.9092, "text": "DevLog №4 What’s New Pause Menu Implemented: Players can now pause the game at any time with two options: -> Continue: Return to the game with all current progress intact. -> Exit to Menu: Quit to the main menu (resets all game progress). Technical Challenges The main challenge was handling this within my current architecture, which relies on a main loop with a nested switch statement for state management. I needed a reliable way for these states to communicate and handle game object lifecycles properly: -> Persisting Objects: Retaining game objects in memory when resuming from pause. -> Cleaning Up: Safely destroying objects and resetting state when returning to the main menu (either voluntarily or on Game Over). Next Goals -> Add sound effects using the built-in piezo buzzer. -> Implement a new mini-game: Flappy Bird."}, {"post_id": 42572, "ts": "2026-08-07T12:00:33Z", "hours": 3.4556, "text": "DevLog №3 : What I worked on: Started implementing the Pause state during gameplay. To make this work properly, the game needs to preserve the current state of both the Snake and Food objects when transitioning into pause and back. Slightly refactored the main loop architecture and updated the SnakeGameHandle function. The Struggle: decided to write a helper function to update values inside my StateMachine (handling states like Game, Menu, Pause, Snake, FlappyBird).Blaming it on late-night fatigue, I wrote the function in the most overcomplicated way possible… and called it even worse. The result? Every time I exited the Snake game, I was greeted by a blank black screen because the Menu state was never getting assigned correctly. I spent over an hour staring at the code, completely stumped as to why it was breaking. I think it happened because of self-assignment The Fix: Decided to get some sleep. Woke up the next morning with a fresh head and fixed the black screen issue in 20 minutes. Next Goal: Finish up the Pause feature completely"}, {"post_id": 41914, "ts": "2026-08-06T13:03:12Z", "hours": 1.4547, "text": "devlog #2: added StateHandle file to handle all the actions(menu, games) in my main loop in main.cpp. Now my main loop is shorter and more understandable"}, {"post_id": 41835, "ts": "2026-08-06T09:24:37Z", "hours": 3.1758, "text": "Devlog #1: I uploaded all the files I had written before I found out about Hack Club. After that, I spent most of my time figuring out how to detect collisions between the snake and the food. Since I originally built everything pixel-by-pixel instead of using a grid system, comparing screen positions directly required too many pixel checks. To optimize this and avoid checking every single pixel pair, I had to tweak the logic. Even though it was tricky to adjust without a strict grid, the collision detection is working now and the game is totally playable"}]...
|
Title: mini_consol by @kdenis | Stardance
Devlogs Title: mini_consol by @kdenis | Stardance
Devlogs:
Devlog #1: I uploaded all the files I had written before I found out about Hack Club. After that, I spent most of my time figuring out how to detect collisions between the snake and the food. Since I originally built everything pixel-by-pixel instead of using a grid system, comparing screen positions directly required too many pixel checks. To optimize this and avoid checking every single pixel pair, I had to tweak the logic. Even though it was tricky to adjust without a strict grid, the collision detection is working now and the game is totally playable
devlog #2: added StateHandle file to handle all the actions(menu, games) in my main loop in main.cpp. Now my main loop is shorter and more understandable
DevLog №3 : What I worked on: Started implementing the Pause state during gameplay. To make this work properly, the game needs to preserve the current state of both the Snake and Food objects when transitioning into pause and back. Slightly refactored the main loop architecture and updated the SnakeGameHandle function. The Struggle: decided to write a helper function to update values inside my StateMachine (handling states like Game, Menu, Pause, Snake, FlappyBird).Blaming it on late-night fatigue, I wrote the function in the most overcomplicated way possible… and called it even worse. The result? Every time I exited the Snake game, I was greeted by a blank black screen because the Menu state was never getting assigned correctly. I spent over an hour staring at the code, completely stumped as to why it was breaking. I think it happened because of self-assignment The Fix: Decided to get some sleep. Woke up the next morning with a fresh head and fixed the black screen issue in 20 minutes. Next Goal: Finish up the Pause feature completely
DevLog №4 What’s New Pause Menu Implemented: Players can now pause the game at any time with two options: -> Continue: Return to the game with all current progress intact. -> Exit to Menu: Quit to the main menu (resets all game progress). Technical Challenges The main challenge was handling this within my current architecture, which relies on a main loop with a nested switch statement for state management. I needed a reliable way for these states to communicate and handle game object lifecycles properly: -> Persisting Objects: Retaining game objects in memory when resuming from pause. -> Cleaning Up: Safely destroying objects and resetting state when returning to the main menu (either voluntarily or on Game Over). Next Goals -> Add sound effects using the built-in piezo buzzer. -> Implement a new mini-game: Flappy Bird.
Devlog №5 I added sound effects for every button press on my mini-console! Sounds like a super quick and easy task, right? Well, it should have been. But a few architectural bumps in the road ended up eating way more time than expected. What went wrong (and how I fixed it) Hardware Pin Conflict: My buzzer was originally soldered to a pin used by SPI . As soon as the display initialized, things went sideways. Game Loop vs. Main Loop Architecture: My game logic was running inside an infinite loop within a standalone function, while the sound playback logic lived in the main loop calling that function. Solution: soldered the buzzer to another pin and quick architecture refactor solved both problems pretty easily — I spent about an hour on each issue. The Biggest Problem: A very loud buzzer remains the biggest and unsolved issue. I tried to tame it in software using PWM (Pulse Width Modulation) to decrease the volume. But PWM control is tricky on its own, and since the buzzer relies on a fixed frequency to generate tone, layering custom PWM over it completely broke the audio pitch. Next Up: Implement smooth scrolling text for the console startup screen. Conquer this cursed PWM/volume issue once and for all. Start writing a Flappy Bird clone
Devlog №6 Today I quickly set up the startup text so it scrolls smoothly, and that’s pretty much it. Nothing complicated, really—took me literally half an hour. Next up: finish tuning the PWM to quiet down the audio, and then I’ll probably work on making a more interesting splash screen.
Devlog №7 implemted PMW to control sound volume
Devlog №8 Bird Physics & Rendering Flicker-Free Rendering To prevent screen flickering caused by redrawing the entire screen, I optimized the loop by clearing only the bird’s exact position before rendering its new frame. Physics Implementation Movement relies on both velocity and acceleration : Acceleration continuously increases the downward velocity (gravity). Jump mechanic resets the downward velocity to initial on every input. Next Steps: Wall Generation Obstacle Setup I need to create an array of one dynamic wall . Recycling Logic As soon as a wall reaches the left edge of the screen, it will wrap around to the right . The height/position will randomize each time it reappears to form a continuous level.
DevLog №9 ###What’s New Walls & Pipes Mechanics: Added moving wall obstacles. Score Counter: Integrated a score tracking system. ###How It Works Score Logic: To keep things simple and efficient, the score increases automatically whenever a wall reaches the left edge of the screen. Illusion of Movement: The bird stays in place while the walls continuously cycle and reset from the right edge back to the left. This creates a smooth side-scrolling illusion! It was a fairly straightforward feature to implement, but it instantly made the project feel much more like a complete game!
DevLog №10 prepared everything for shiping. added wiring.png and AI usage declaration in my README file.
Ships:
What did you make? I built a DIY mini handheld console powered by an Arduino Nano! My main goal was to dive into embedded systems development and get hands-on experience with hardware and C++. Because of this, I focused on core functionality rather than super complex games. When you turn it on, you’re greeted with a scrolling “mini console” text, followed by a game selection menu. During gameplay, pressing the designated pause button opens a pause menu where you can either resume (saving your current progress) or exit to the main menu. I included two games: Snake and Flappy Bird. What was challenging? Generating non-blocking audio feedback was definitely the hardest part. I implemented button click sounds using PWM to control the volume, which took a lot of time to tune since working with audio signals is trickier than controlling a motor. It required pseudo-multitasking using millis() to keep the gameplay smooth while playing sounds. Also, in Snake, I initially didn’t use a grid-based movement system and implemented pixel-by-pixel movement instead. Because of this, collision detection with food can occasionally miss. What are you proud of? I’m really proud of the software architecture and code structure in several parts of the project. I focused on clean OOP principles, solid encapsulation, and clear code organization (though a few spots are still a bit messy!). I’m also proud that i didn’t use delay funtion and of my Settings.h file What should people know so they can test your project? To test or build it, you just need to know how to connect the display and buttons to an Arduino Nano. Inside the Settings.h file, you can easily customize pin configurations, volume, colors, display sizes, and game speeds. I also added comments throughout the codebase to make it easy to follow along!...
|
1793472519.8234718
|
1793558919.8234718
|
|
43816
|
PeacefulPython - LPP by @PeacefulPolymath | Starda PeacefulPython - LPP by @PeacefulPolymath | Stardance...
|
PeacefulPolymath
|
1
|
13.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-16T05:10:11Z", "hours": 13.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "This is a Project that is rather intermediate than complex in which one can get a structured plan of learning python One thing people might like about this is that I solved a problem which was kind of a hustle to every student The problem is everything is in internet but we don’t know how to access it so that we can learn something new. This is helpful for people of any age who are willing to learn python at a self pace using automatetheboringstuff. Com I am proud of it because it’s my first project in a cs event like hackclub.", "repo": "https://github.com/PeacefulPolymath/Peaceful-Python-LPP", "demo": "https://peacefulpolymath.github.io/Peaceful-Python-LPP/"}]...
|
[{"post_id": 47333, "ts": "202 [{"post_id": 47333, "ts": "2026-08-15T06:42:59Z", "hours": 9.9083, "text": "FINALLY!! I DID IT, I finally completed my ‘Learn Python Peacefully Project’ It took so much time to finish it. It is a website that is simple but fun in which you can trynna learn python with some sources. I also tried to make some solutions to the problems in the major python course named automate the boring stuff.com I literally feel like Iron Man after doing it cause I am a beginner. Guys. You can just think of me as a guy who is currently in dopamine for just making a very simple project"}, {"post_id": 42680, "ts": "2026-08-07T15:08:14Z", "hours": 2.06, "text": "QUICK UPDATE! Guys I have been working on making the python easy and fun to learn, But i changed my mind and want to instead make a proper curriculum with challenges that arent 💩 So I started learning and messing around lessons in the automate the boring stuff website [automatetheboringstuff.com] This is gonna take some time as I need to learn the lessons myself and use gen ai to make hard challenges and then make solutions MYSELF I have successfully made part 1 Please take your time and see it"}, {"post_id": 40736, "ts": "2026-08-04T13:44:24Z", "hours": 0.9736, "text": "Welcoming you to Peaceful Python 🐍✨ I know several people here want to get their hands on some awesome stuff from the shop . To be honest, many of you guys are ambitious but don’t have good material to learn from. You might question me — there are hundreds of tutorials and sites like freeCodeCamp 📚. But for any above-average curious guy (polymath 🧠), it seems too slow 🐢. I am on my way to making a GitHub repo where a person can use AI to learn Python actively (by doing) . I plan to first complete the parts of it and then make a site 🌐. Bookmark it 🔖, lock it 🔒, or do whatever you want — I guarantee you 💯. This is gonna be good! 🚀"}]...
|
Title: PeacefulPython - LPP by @PeacefulPolymath | Title: PeacefulPython - LPP by @PeacefulPolymath | Stardance
Devlogs:
Welcoming you to Peaceful Python 🐍✨ I know several people here want to get their hands on some awesome stuff from the shop . To be honest, many of you guys are ambitious but don’t have good material to learn from. You might question me — there are hundreds of tutorials and sites like freeCodeCamp 📚. But for any above-average curious guy (polymath 🧠), it seems too slow 🐢. I am on my way to making a GitHub repo where a person can use AI to learn Python actively (by doing) . I plan to first complete the parts of it and then make a site 🌐. Bookmark it 🔖, lock it 🔒, or do whatever you want — I guarantee you 💯. This is gonna be good! 🚀
QUICK UPDATE! Guys I have been working on making the python easy and fun to learn, But i changed my mind and want to instead make a proper curriculum with challenges that arent 💩 So I started learning and messing around lessons in the automate the boring stuff website [automatetheboringstuff.com] This is gonna take some time as I need to learn the lessons myself and use gen ai to make hard challenges and then make solutions MYSELF I have successfully made part 1 Please take your time and see it
FINALLY!! I DID IT, I finally completed my ‘Learn Python Peacefully Project’ It took so much time to finish it. It is a website that is simple but fun in which you can trynna learn python with some sources. I also tried to make some solutions to the problems in the major python course named automate the boring stuff.com I literally feel like Iron Man after doing it cause I am a beginner. Guys. You can just think of me as a guy who is currently in dopamine for just making a very simple project
Ships:
This is a Project that is rather intermediate than complex in which one can get a structured plan of learning python One thing people might like about this is that I solved a problem which was kind of a hustle to every student The problem is everything is in internet but we don’t know how to access it so that we can learn something new. This is helpful for people of any age who are willing to learn python at a self pace using automatetheboringstuff. Com I am proud of it because it’s my first project in a cs event like hackclub....
|
1793476252.642884
|
1793562652.642884
|
|
43835
|
My own AI by @Stv120 | Stardance
|
Stv120
|
1
|
29.69
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-17T21:50:19Z", "hours": 29.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Hello guys! I shipped my project, first off be aware that if you are on Linux or MacOS you need to manually build it yourselves, I designed it to be compatible with those, but I cannot guarantee with maximum certitude that it will work without any flaws after building. Second, The zipped file is about 2.1gb so I attached a link to google drive to download it. Google will probably tell you they can’t scan bigger files for viruses, so if you are not sure check the codes and readme on GitHub. Third, Windows will also give you a warning when trying to run the app, same thing as before. And lastly, don’t move stuff outside the folder after downloading and unzipping to be sure that it will work as I intended. If you want to check all the components and eventually even change the code as you wish I listed everything on git!", "repo": "https://github.com/7lul7/DragoGPT", "demo": "https://github.com/7lul7/DragoGPT/releases/tag/DragoGPT"}]...
|
[{"post_id": 51249, "ts": "202 [{"post_id": 51249, "ts": "2026-08-20T19:46:39Z", "hours": 0.6892, "text": "Devlog #8 I did not think this devlog was needed but apparently it is very much needed. This is mostly for the people that will rate this and the ones responsible if my projects gets thru. First off, I gotta say the reviewers are another kind of human species. If you want to rate something, actually rate it and put effort, BUT if you come here review it and conclude “heavy AI usage” from a technical menu and a thinking bubble thats part of the UI, you probably never used an app and got stuck in the 1980, where people used the console to communicate with the computer, because how do you conclude that just from UI???? Thats for my last reviewer who said I used and I quote “heavy AI”, mind you he had the other devlogs to check out, what he only did was review the UI, and 0 code, none of it was code! Okay he did underline some stuff tho that tought was AI, and guess what? It was, YES, what a surprise, a 16 year old USED AI? Well thats shocking. Seriously, do you expect a 16 year old to make a language model all by himself? Some of that stuff you do in 3rd year in university, but I guess this platform is made for only top 0.1% teen coders! This hackaton rates just the final product, rather than the effort. I could put as a project a game that competes with AAA games and there will be people leaving minimum effort ratings saying it is not good enough, probably nothing is good enough for this problem. Sadly I wish you could report reviewers who dont approve ur project from reasons that make no sense! Second, my second last reviewer said my readme was made with AI just because I used “-”. Seriously? Just because AI overuses that character does not mean everyone who uses it used AI for all of it. And guess what? I used AI for the readme too. But not at that part (because apparently using more advanced english or symbols you dont really see, its AI. No. It just means there are people who know how to use the keyboard ), I used it to write the commands for people who want to build the project on MacOS and Linux, and I am 100% not required nor its the bare minimum to make it for those 2 OS. Not even all big companies make their software for Mac or Linux, yet you expect a teen to do it? Pathetic if you ask me. And third, thats about it, the ones who keep saying “web support”, well thats very funny. Because, no, im not writing my project which i spent hours out, because u dont have the effort to download it. I swear where do yall come from? Is your birthplace the Linux kernel? Im sorry but if you code from infant age, does not mean I should deliver top quality, if you want a top quality software, you can go rate the big companies who make overpriced software. If these reviewers actually reviewed stuff that matters way more than a fun hackaton we would live in an utopia. But sure if you want to keep touching the terminal, not grass, and live ur coding life, be my guest! (All these apply for the ones who think teens should be ready for a Microsoft interview! If you dont want to rate this or dont have the energy to, just skip, it helps me and your busted brain!) PS: atp this is cyberbullying gng get a grip 🙏"}, {"post_id": 46926, "ts": "2026-08-14T14:20:47Z", "hours": 6.445, "text": "Devlog #7 Hello guys! This is probably my last devlog before releasing this project, and I want to share what happened during the last 3 days. Also, keep in mind that I previously had a version based on a Q&A-type database that I had generated using an LLM. First off, the version from the last devlog was based on a database from DailyDialog. It was very heavy for the model’s “brain”, and as a result, it wasn’t really able to communicate properly. It would sometimes respond with something completely unrelated to the question. After that, I tried training it on a Wikipedia dump. As an idea, it was good, but the amount of time it took to finish a training session with 30 epochs was LONG. And even after that, the AI still wasn’t capable of having proper conversations. After that, I asked ChatGPT for help, and I can say that ChatGPT is not only bad, it is horrible for debugging. It makes stuff up, changes things that aren’t even broken, and generally makes the debugging process harder. So I tried using Claude. Claude at least tried. It actually computed the project on its server, fixed something, but it still wasn’t enough. Then I discovered Codex. It’s not entirely new, but I didn’t know about it before! I gave Codex the project files and asked it to search for the problem. It gave me the files back, and it actually fixed the problems. When I tried the fixed version, I asked it some questions. It had been trained on both a Q&A database and a Wikipedia database, and it actually answered correctly most of the time. The problem was that when I asked something that wasn’t in the Q&A database, it retrieved information from the Wikipedia dump. That wasn’t necessarily bad, but it didn’t know how to actually make a sentence using the information. It was basically just a retrieval tool rather than a conversational AI. Since my Codex tokens expired and I can’t use it for a month, I didn’t bother continuing with that version. I went back to the version from before the last devlog, which was based on a smaller Q&A database. I improved the database, retrained the model, and now it actually responds. The problem is that if you’re not using proper grammar, it can still respond with something unrelated to the topic. And if the topic isn’t included in the database, it can make stuff up. After that, I added an Ollama version alongside my trained model. This way, if the user wants an answer that my trained AI can’t provide, they can use the Ollama model instead. I also made a UI with the help of an LLM. So now the app is functional. Both models are available. I also thought about adding a tool to my trained AI that detects when the user wants math support, but for now it would only be for math and not other topics, so I’ll see if I end up adding it. About web support I don’t think I’ll add a web version since the UI is made using PySide6, and making it web-compatible would basically mean rewriting the whole UI. Or maybe there’s an easier way to do it that I don’t know about. Linux and macOS support Linux and macOS support is possible, but I don’t have a Mac to actually test whether the program works properly on that platform. Linux should be easier since I can install a Linux distro in a VM and test it there, although I’m not completely sure yet. And that’s basically where the project is right now. If you have any suggestions leave them in the comments, thanks!"}, {"post_id": 45060, "ts": "2026-08-11T10:16:23Z", "hours": 2.4114, "text": "Devlog #6 Hello guys! Yesterday I realized what was the problem with the language model and its predicting. So basically I was testing it by typing “Hello” without punctuation and so the AI was confused and did not know how to respond, hence the unexpected responses. When I tried with the word “Hello.” with the dot it did work! And besides this problem, I also encountered another problem. The AI couldn’t recognize, even if the word was in the training.txt file, if it was spelled wrong or had capital letters or not where it should have been. For example I asked it “What is EArth?” and it returned nothing because it did not recognize “EArth”, in its vocabulary, so last night I sampled a training text in json format from DailyDialog dataset, made a converter.py file, which extracted the dialog from train.json . I ran 3 epochs because the new text contained 2660291 training examples (WHICH was WAY WAY bigger than I expected!), and it took like 1,5 hours to finish. After that I tested it and again, the model predicted the answer wrong so now I upgraded the embedding size from 32 to 64 and ran again train.py (currently it is still training!) . Anyway, if it doesn’t work again I will probably look into the configuration again, maybe upgrade the epochs from 3 to 6, since the other major components like main.py model.py and train.py are fine (probably). I attached below the training progress"}, {"post_id": 44675, "ts": "2026-08-10T16:20:02Z", "hours": 10.2253, "text": "Devlog #5 My brain is soup currently. I have made real progress, at least, at least… . Now the AI is trained on my CUDA cores from my GPU. And now it can actually make a conversation, which is WOW, but the thing is… the responses are not consistent or they do not make sense, but at least they are words that can be understood separately. I have also changed train.py, model.py and main.py multiple times, upgraded to training.txt file which now contains multiple conversation examples, but the project is far from over. I attached below how it responds currently. If it weren’t for the 10 hour devlog limit I would’ve kept going."}, {"post_id": 42121, "ts": "2026-08-06T18:14:08Z", "hours": 5.3847, "text": "Devlog #4 Hello guys! • I finally rebuilt the 3 biggest components of my AI, those being main.py, model.py and train.py, completing a solid foundation which can be upgraded from now on without the need of deleting the current code completely. • Anyway, currently the text sample which it is being trained on is not too big, so it can’t “learn” much, and the context right now is just “Hello wo”, and it predicts the next character right as intended, using the last 8 characters • The first changes I obviously need to make are changing the context from that to the input of the user and making the training sample bigger, then we can move to upgrade the epoch number from 100 to lets say more and the context size from 8 to more characters. I will announce my plans for the future upgrades in the upcoming devlogs. • Here are some previews of the code and some notes I took: (if they all load correctly hopefully)"}, {"post_id": 40952, "ts": "2026-08-04T20:17:34Z", "hours": 2.2158, "text": "Devlog #3 Hello guys! I am working so the program will be based on an 8 character architecture, meaning that it will now predict the next character using the last 8 characters, not just the last one, meaning its brain gets upgraded! I am still learning how to do an AI at home with the help of YouTube tutorials and AI so it will take many hours to finish, but my expectations for the final product are high!"}, {"post_id": 40858, "ts": "2026-08-04T17:28:49Z", "hours": 1.3222, "text": "Devlog #2 Hello guys! I have updated main.py which tests the AI, train.py, model.py and tokenizer.py and I reached a milestone since the AI now predicts what letter comes next. Right now it is being trained by a pretty simple text file but I’m planning to upgrade that too! Here’s a quick preview:"}, {"post_id": 40741, "ts": "2026-08-04T13:51:56Z", "hours": 0.6956, "text": "Devlog #1 Hello guys today I am working on a project with the goal with building my own AI, yes, you heard that right! The goal is to train it locally and that it works 100% offline Here’s what I did up until now: I set up the project in python Built my first neural network with the help of AI that contains one neuron and which was used to understand weights, loss, prediction and more Did my first AI training which the AI discovered the multiplying by 2 rule Dataset loader Tokenizer Custom vocabulary Encoder/Decoder and a few other stuff"}]...
|
Title: My own AI by @Stv120 | Stardance
Devlogs:
Title: My own AI by @Stv120 | Stardance
Devlogs:
Devlog #1 Hello guys today I am working on a project with the goal with building my own AI, yes, you heard that right! The goal is to train it locally and that it works 100% offline Here’s what I did up until now: I set up the project in python Built my first neural network with the help of AI that contains one neuron and which was used to understand weights, loss, prediction and more Did my first AI training which the AI discovered the multiplying by 2 rule Dataset loader Tokenizer Custom vocabulary Encoder/Decoder and a few other stuff
Devlog #2 Hello guys! I have updated main.py which tests the AI, train.py, model.py and tokenizer.py and I reached a milestone since the AI now predicts what letter comes next. Right now it is being trained by a pretty simple text file but I’m planning to upgrade that too! Here’s a quick preview:
Devlog #3 Hello guys! I am working so the program will be based on an 8 character architecture, meaning that it will now predict the next character using the last 8 characters, not just the last one, meaning its brain gets upgraded! I am still learning how to do an AI at home with the help of YouTube tutorials and AI so it will take many hours to finish, but my expectations for the final product are high!
Devlog #4 Hello guys! • I finally rebuilt the 3 biggest components of my AI, those being main.py, model.py and train.py, completing a solid foundation which can be upgraded from now on without the need of deleting the current code completely. • Anyway, currently the text sample which it is being trained on is not too big, so it can’t “learn” much, and the context right now is just “Hello wo”, and it predicts the next character right as intended, using the last 8 characters • The first changes I obviously need to make are changing the context from that to the input of the user and making the training sample bigger, then we can move to upgrade the epoch number from 100 to lets say more and the context size from 8 to more characters. I will announce my plans for the future upgrades in the upcoming devlogs. • Here are some previews of the code and some notes I took: (if they all load correctly hopefully)
Devlog #5 My brain is soup currently. I have made real progress, at least, at least… . Now the AI is trained on my CUDA cores from my GPU. And now it can actually make a conversation, which is WOW, but the thing is… the responses are not consistent or they do not make sense, but at least they are words that can be understood separately. I have also changed train.py, model.py and main.py multiple times, upgraded to training.txt file which now contains multiple conversation examples, but the project is far from over. I attached below how it responds currently. If it weren’t for the 10 hour devlog limit I would’ve kept going.
Devlog #6 Hello guys! Yesterday I realized what was the problem with the language model and its predicting. So basically I was testing it by typing “Hello” without punctuation and so the AI was confused and did not know how to respond, hence the unexpected responses. When I tried with the word “Hello.” with the dot it did work! And besides this problem, I also encountered another problem. The AI couldn’t recognize, even if the word was in the training.txt file, if it was spelled wrong or had capital letters or not where it should have been. For example I asked it “What is EArth?” and it returned nothing because it did not recognize “EArth”, in its vocabulary, so last night I sampled a training text in json format from DailyDialog dataset, made a converter.py file, which extracted the dialog from train.json . I ran 3 epochs because the new text contained 2660291 training examples (WHICH was WAY WAY bigger than I expected!), and it took like 1,5 hours to finish. After that I tested it and again, the model predicted the answer wrong so now I upgraded the embedding size from 32 to 64 and ran again train.py (currently it is still training!) . Anyway, if it doesn’t work again I will probably look into the configuration again, maybe upgrade the epochs from 3 to 6, since the other major components like main.py model.py and train.py are fine (probably). I attached below the training progress
Devlog #7 Hello guys! This is probably my last devlog before releasing this project, and I want to share what happened during the last 3 days. Also, keep in mind that I previously had a version based on a Q&A-type database that I had generated using an LLM. First off, the version from the last devlog was based on a database from DailyDialog. It was very heavy for the model’s “brain”, and as a result, it wasn’t really able to communicate properly. It would sometimes respond with something completely unrelated to the question. After that, I tried training it on a Wikipedia dump. As an idea, it was good, but the amount of time it took to finish a training session with 30 epochs was LONG. And even after that, the AI still wasn’t capable of having proper conversations. After that, I asked ChatGPT for help, and I can say that ChatGPT is not only bad, it is horrible for debugging. It makes stuff up, changes things that aren’t even broken, and generally makes the debugging process harder. So I tried using Claude. Claude at least tried. It actually computed the project on its server, fixed something, but it still wasn’t enough. Then I discovered Codex. It’s not entirely new, but I didn’t know about it before! I gave Codex the project files and asked it to search for the problem. It gave me the files back, and it actually fixed the problems. When I tried the fixed version, I asked it some questions. It had been trained on both a Q&A database and a Wikipedia database, and it actually answered correctly most of the time. The problem was that when I asked something that wasn’t in the Q&A database, it retrieved information from the Wikipedia dump. That wasn’t necessarily bad, but it didn’t know how to actually make a sentence using the information. It was basically just a retrieval tool rather than a conversational AI. Since my Codex tokens expired and I can’t use it for a month, I didn’t bother continuing with that version. I went back to the version from before the last devlog, which was based on a smaller Q&A database. I improved the database, retrained the model, and now it actually responds. The problem is that if you’re not using proper grammar, it can still respond with something unrelated to the topic. And if the topic isn’t included in the database, it can make stuff up. After that, I added an Ollama version alongside my trained model. This way, if the user wants an answer that my trained AI can’t provide, they can use the Ollama model instead. I also made a UI with the help of an LLM. So now the app is functional. Both models are available. I also thought about adding a tool to my trained AI that detects when the user wants math support, but for now it would only be for math and not other topics, so I’ll see if I end up adding it. About web support I don’t think I’ll add a web version since the UI is made using PySide6, and making it web-compatible would basically mean rewriting the whole UI. Or maybe there’s an easier way to do it that I don’t know about. Linux and macOS support Linux and macOS support is possible, but I don’t have a Mac to actually test whether the program works properly on that platform. Linux should be easier since I can install a Linux distro in a VM and test it there, although I’m not completely sure yet. And that’s basically where the project is right now. If you have any suggestions leave them in the comments, thanks!
Devlog #8 I did not think this devlog was needed but apparently it is very much needed. This is mostly for the people that will rate this and the ones responsible if my projects gets thru. First off, I gotta say the reviewers are another kind of human species. If you want to rate something, actually rate it and put effort, BUT if you come here review it and conclude “heavy AI usage” from a technical menu and a thinking bubble thats part of the UI, you probably never used an app and got stuck in the 1980, where people used the console to communicate with the computer, because how do you conclude that just from UI???? Thats for my last reviewer who said I used and I quote “heavy AI”, mind you he had the other devlogs to check out, what he only did was review the UI, and 0 code, none of it was code! Okay he did underline some stuff tho that tought was AI, and guess what? It was, YES, what a surprise, a 16 year old USED AI? Well thats shocking. Seriously, do you expect a 16 year old to make a language model all by himself? Some of that stuff you do in 3rd year in university, but I guess this platform is made for only top 0.1% teen coders! This hackaton rates just the final product, rather than the effort. I could put as a project a game that competes with AAA games and there will be people leaving minimum effort ratings saying it is not good enough, probably nothing is good enough for this problem. Sadly I wish you could report reviewers who dont approve ur project from reasons that make no sense! Second, my second last reviewer said my readme was made with AI just because I used “-”. Seriously? Just because AI overuses that character does not mean everyone who uses it used AI for all of it. And guess what? I used AI for the readme too. But not at that part (because apparently using more advanced english or symbols you dont really see, its AI. No. It just means there are people who know how to use the keyboard ), I used it to write the commands for people who want to build the project on MacOS and Linux, and I am 100% not required nor its the bare minimum to make it for those 2 OS. Not even all big companies make their software for Mac or Linux, yet you expect a teen to do it? Pathetic if you ask me. And third, thats about it, the ones who keep saying “web support”, well thats very funny. Because, no, im not writing my project which i spent hours out, because u dont have the effort to download it. I swear where do yall come from? Is your birthplace the Linux kernel? Im sorry but if you code from infant age, does not mean I should deliver top quality, if you want a top quality software, you can go rate the big companies who make overpriced software. If these reviewers actually reviewed stuff that matters way more than a fun hackaton we would live in an utopia. But sure if you want to keep touching the terminal, not grass, and live ur coding life, be my guest! (All these apply for the ones who think teens should be ready for a Microsoft interview! If you dont want to rate this or dont have the energy to, just skip, it helps me and your busted brain!) PS: atp this is cyberbullying gng get a grip 🙏
Ships:
Hello guys! I shipped my project, first off be aware that if you are on Linux or MacOS you need to manually build it yourselves, I designed it to be compatible with those, but I cannot guarantee with maximum certitude that it will work without any flaws after building. Second, The zipped file is about 2.1gb so I attached a link to google drive to download it. Google will probably tell you they can’t scan bigger files for viruses, so if you are not sure check the codes and readme on GitHub. Third, Windows will also give you a warning when trying to run the app, same thing as before. And lastly, don’t move stuff outside the folder after downloading and unzipping to be sure that it will work as I intended. If you want to check all the components and eventually even change the code as you wish I listed everything on git!...
|
1793490481.4838185
|
1793576881.4838185
|
|
43839
|
Tap to Play Arcade Game by @hridhaanjaitly | Stard Tap to Play Arcade Game by @hridhaanjaitly | Stardance...
|
hridhaanjaitly
|
1
|
1.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-09T16:09:37Z", "hours": 1.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I basically made a mini neon Arcade themed game, while this wasn’t really the goal, what I wanted to do was see what level my skills are at and constantly imporve it while making anything, a website, app or game. So that is how this small project came to life. I myself know a good amount of HTML and for rest I used help from various coding websites like w3 schools and ofcourse google. I also had this nfc keycard of a hotel, which on exploring I realised I can put a link or info of anything on it and customize it. So after making my game, I shortened the link in terms of storage size and put in in the card, making it a tap-to-play game too. It is not much special as the actual project was to test my coding skills, and learn coding and different languages. It turned out good so I decided to ship it out as a project. I didn’t face much challanges as HTML and C++ is rather easy, yes but as I don’t have a laptop and made it on my tablet on github itself, it would lag, and ofcourse the code would get messed up. Some debugging was required too and yeah that is all. That being said please do rate or like or something so I get some stardust. I am in a grave need of a laptop😅😭. In terms of what should you know to better understand, I guess all this is enough but in technical terms all the info is on GitHub and in my READMe for the game. Thank You !", "repo": "https://github.com/HridhaanDaCoder/Hridhaan-s-Arcade", "demo": ""}]...
|
[{"post_id": 41283, "ts": "202 [{"post_id": 41283, "ts": "2026-08-05T12:18:45Z", "hours": 0.6097, "text": "A little arcade game which can be played by my public URL or using a NFC card, I have made the game and all now only integrating it into a NFC is left. That will be in the second part!"}]...
|
Title: Tap to Play Arcade Game by @hridhaanjaitly Title: Tap to Play Arcade Game by @hridhaanjaitly | Stardance
Devlogs:
A little arcade game which can be played by my public URL or using a NFC card, I have made the game and all now only integrating it into a NFC is left. That will be in the second part!
Ships:
I basically made a mini neon Arcade themed game, while this wasn’t really the goal, what I wanted to do was see what level my skills are at and constantly imporve it while making anything, a website, app or game. So that is how this small project came to life. I myself know a good amount of HTML and for rest I used help from various coding websites like w3 schools and ofcourse google. I also had this nfc keycard of a hotel, which on exploring I realised I can put a link or info of anything on it and customize it. So after making my game, I shortened the link in terms of storage size and put in in the card, making it a tap-to-play game too. It is not much special as the actual project was to test my coding skills, and learn coding and different languages. It turned out good so I decided to ship it out as a project. I didn’t face much challanges as HTML and C++ is rather easy, yes but as I don’t have a laptop and made it on my tablet on github itself, it would lag, and ofcourse the code would get messed up. Some debugging was required too and yeah that is all. That being said please do rate or like or something so I get some stardust. I am in a grave need of a laptop😅😭. In terms of what should you know to better understand, I guess all this is enough but in technical terms all the info is on GitHub and in my READMe for the game. Thank You !...
|
1793512365.95463
|
1793598765.95463
|
|
43857
|
Hackstars by @Dasher2801 | Stardance
|
|
1
|
5.0
|
56
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-05T12:21:16Z", "hours": 5.0, "multiplier": 11.09, "payout": 56, "blessing": "neutral", "text": "Hackstars is a web project that features a starry sky filled with colorful stars placed at random positions. Clicking anywhere on the screen generates an expanding shockwave that physically pushes nearby stars away. The shockwave consists of an outer ring that applies force to the stars and an inner ring that creates a glowing visual effect. Sliders allow you to adjust the wave’s speed and strength in real time, and a “Reset Stars” button scatters the stars into a completely new layout.", "repo": "https://github.com/Dasher2801/Hackstars", "demo": "https://dasher2801.github.io/Hackstars/"}]...
|
[{"post_id": 41281, "ts": "202 [{"post_id": 41281, "ts": "2026-08-05T12:11:34Z", "hours": 2.1817, "text": "After overcoming a few issues and challenges, I finally managed to implement the shockwave that pushes the stars away. This wave consists of two rings: an outer one that pushes the stars, and an inner one that creates the glow effect. The controls for adjusting the wave’s strength or speed are now working as well. Additionally, the “Reset Stars” button shifts the stars to completely new, random positions. translated with google translator german->english"}, {"post_id": 40764, "ts": "2026-08-04T14:33:29Z", "hours": 2.9092, "text": "I’ve started building my new project. It’s a starry sky with stars of various colors at random positions. So far, there are only the stars and sliders for the speed and strength of the sound wave. Yes, you heard that right—a sound wave. Later, once the game is finished, you’ll be able to generate a sound wave with a mouse click that pushes the stars away. translated with google translator german->english"}]...
|
Title: Hackstars by @Dasher2801 | Stardance
Devlo Title: Hackstars by @Dasher2801 | Stardance
Devlogs:
I’ve started building my new project. It’s a starry sky with stars of various colors at random positions. So far, there are only the stars and sliders for the speed and strength of the sound wave. Yes, you heard that right—a sound wave. Later, once the game is finished, you’ll be able to generate a sound wave with a mouse click that pushes the stars away. translated with google translator german->english
After overcoming a few issues and challenges, I finally managed to implement the shockwave that pushes the stars away. This wave consists of two rings: an outer one that pushes the stars, and an inner one that creates the glow effect. The controls for adjusting the wave’s strength or speed are now working as well. Additionally, the “Reset Stars” button shifts the stars to completely new, random positions. translated with google translator german->english
Ships:
Hackstars is a web project that features a starry sky filled with colorful stars placed at random positions. Clicking anywhere on the screen generates an expanding shockwave that physically pushes nearby stars away. The shockwave consists of an outer ring that applies force to the stars and an inner ring that creates a glowing visual effect. Sliders allow you to adjust the wave’s speed and strength in real time, and a “Reset Stars” button scatters the stars into a completely new layout....
|
1793555398.3132524
|
1793641798.3132524
|
|
43858
|
lacorte.city by @lacorte | Stardance
|
lacorte
|
1
|
5.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-04T21:08:26Z", "hours": 5.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "lacorte.city is my personal website i rebuilt from scratch with an oldschool aesthetic and 88×31 badges. the site has i18n for english+ptbr, an rss feed and blog posts that can be written in markdown delivering automated structured data for search engine optimization. live: https://lacorte.city repo: https://github.com/Gabriel-Lacorte/lacorte.city a.i helped to review and find gaps in my architecture, but all design decisions, typography choices, and code were written by hand.", "repo": "https://github.com/Gabriel-Lacorte/portfolio", "demo": "https://lacorte.city"}]...
|
[{"post_id": 40842, "ts": "202 [{"post_id": 40842, "ts": "2026-08-04T17:01:10Z", "hours": 4.8739, "text": "the last couple of days, i reworked my portfolio whole visual identity and gave it an oldschool style, inspired by some references from neocities.org. i wanted the design to feel more personal and memorable, an style i already explored before in my old website (lacorte.neocities.org)."}]...
|
Title: lacorte.city by @lacorte | Stardance
Devlo Title: lacorte.city by @lacorte | Stardance
Devlogs:
the last couple of days, i reworked my portfolio whole visual identity and gave it an oldschool style, inspired by some references from neocities.org. i wanted the design to feel more personal and memorable, an style i already explored before in my old website (lacorte.neocities.org).
Ships:
lacorte.city is my personal website i rebuilt from scratch with an oldschool aesthetic and 88×31 badges. the site has i18n for english+ptbr, an rss feed and blog posts that can be written in markdown delivering automated structured data for search engine optimization. live: https://lacorte.city repo: https://github.com/Gabriel-Lacorte/lacorte.city a.i helped to review and find gaps in my architecture, but all design decisions, typography choices, and code were written by hand....
|
1792878670.3265443
|
1793742670.3265443
|
|
43870
|
Homework Planner by @vatsamalakar | Stardance
|
vatsamalakar
|
1
|
3.0
|
16
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-06T03:47:22Z", "hours": 3.0, "multiplier": 4.9, "payout": 16, "blessing": "neutral", "text": "What started as a simple idea gradually evolved into a complete productivity platform designed to help students stay organized, focused, and motivated while managing their academic responsibilities. Throughout development, I worked on both the functionality and the overall design of the application. I created a racing-inspired interface with a clean navigation system that allows users to move easily between sections such as the dashboard, homework tracker, calendar, and Pomodoro timer. I also redesigned the user interface multiple times, making adjustments to the layout, spacing, typography, and color palette to create an experience that felt polished and intuitive. Beyond the visual design, I implemented features that support productivity in different ways. The homework tracker allows students to organize assignments and monitor their progress, the calendar helps users manage important dates, and the Pomodoro timer encourages more focused study sessions. Each feature was designed to work together as part of a single, unified experience. Of course, the development process was not always straightforward. Along the way, I encountered bugs related to navigation, state management, and component rendering. Troubleshooting these issues strengthened both my problem-solving skills and my understanding of how different parts of an application interact with one another. Most importantly, this project taught me that creating software involves much more than simply writing code. Every decision, from designing the interface to optimizing performance, contributes to the overall user experience. Homework Racer began as an idea, but through continuous improvement, testing, and iteration, it became a complete application that I am extremely proud of building.", "repo": "https://github.com/vatsamalakar/HomeworkPlanner", "demo": "https://homework-planner-phi.vercel.app"}]...
|
[{"post_id": 41721, "ts": "202 [{"post_id": 41721, "ts": "2026-08-06T03:28:16Z", "hours": 0.3772, "text": "As Homework Racer continued to grow, I realized that adding more features also increased the complexity of the application. Certain pages began taking longer to load, and some interface elements felt less responsive than I wanted them to be. To improve performance, I carefully reviewed the codebase and identified unnecessary operations that were occurring repeatedly. I simplified portions of the code, reorganized components, and reduced the number of unnecessary updates being performed in the background. I also focused on improving the overall user experience by refining animations, adjusting spacing, and creating more consistent transitions between pages. Although many of these changes were relatively small, together they made the application feel significantly smoother and more polished. At this stage, Homework Racer is beginning to feel much closer to the vision I originally had when I started the project."}, {"post_id": 41688, "ts": "2026-08-06T02:04:04Z", "hours": 0.2797, "text": "During this phase of development, I focused on implementing one of the application’s most useful features: the Pomodoro timer. Since many students struggle with maintaining concentration while studying, I wanted to create a tool that encouraged users to work in shorter, more productive intervals. The biggest challenge involved ensuring that the timer remained accurate while users navigated between different pages of the application. Initially, the timer would reset whenever the page was refreshed, creating a frustrating user experience. After reviewing the logic behind the component, I adjusted the implementation so that the timer state could be preserved correctly.In addition to improving functionality, I also updated the appearance of the timer so that it matched the racing theme of the application. The final result is a feature that feels both practical and engaging while helping students maintain their focus."}, {"post_id": 41676, "ts": "2026-08-06T01:20:57Z", "hours": 0.5364, "text": "During this stage of development, I encountered one of the most frustrating bugs I had faced so far. Although the navigation sidebar appeared to work correctly, some pages would fail to update properly after users switched between different sections of the application. In certain situations, the interface would continue displaying old information instead of rendering the newly selected page.At first, I assumed the problem was related to the styling of the components. After spending time testing different possibilities, I discovered that the issue was actually caused by the way state updates were being handled. Some components were not re-rendering when their data changed, which caused the interface to become out of sync. To solve the problem, I reorganized the state management logic and ensured that components updated whenever new information became available. After implementing these changes, navigation became much smoother and much more reliable. Although fixing the bug took longer than expected, it taught me the importance of carefully managing data flow throughout the application."}, {"post_id": 40817, "ts": "2026-08-04T16:06:37Z", "hours": 0.2936, "text": "During this stage of development, I focused on making Homework Racer feel polished and enjoyable to use. While the core features were already working, I wanted the application to have a professional appearance that matched the overall racing theme. My goal was to make students feel like they were entering the dashboard of a high-performance race car every time they opened the planner. One of the biggest improvements I made was redesigning the navigation sidebar. I organized each section—Home, Dashboard, Homework, Calendar, and Pomodoro—into a clean vertical menu with matching icons. This makes it much easier for users to quickly switch between different pages without getting lost. I also highlighted the currently selected page so users always know where they are in the application. I also spent time improving the homepage layout. Instead of displaying plain text, I created large feature cards that introduce each section of the app. These cards explain what each feature does while keeping the interface clean and modern. The large welcome message and quick action buttons help new users immediately understand how to start using the planner. Another improvement was creating a consistent color palette throughout the application. I chose a dark background with orange accents because orange represents speed, energy, and racing. Every button, icon, and highlighted section follows this color scheme, making the app feel consistent and visually appealing instead of looking like different pages stitched together. Finally, I tested the interface to make sure everything was responsive and easy to navigate. I adjusted spacing, card sizes, fonts, and button placement so the application remained readable without feeling crowded. These improvements made Homework Racer feel much more like a finished product rather than just a collection of features, creating an experience that is both practical for students and enjoyable to use."}, {"post_id": 40789, "ts": "2026-08-04T15:28:06Z", "hours": 1.77, "text": "For this project, I wanted to make a homework planner that didn’t feel boring. Most homework apps are plain lists and calendars, so I decided to build Homework Racer, a car-themed planner where students feel like they’re racing to complete assignments instead of dragging through them. The dark racing-inspired interface with orange accent colors gives the app the feeling of a modern sports car dashboard. One of the first things I created was the dashboard. This acts as the driver’s control panel, giving users quick access to everything they need. Instead of searching through different pages, students can immediately jump to Homework, Calendar, or the Pomodoro timer from the home screen. I also added an “Add Homework” button so users can quickly create new assignments without navigating through multiple menus. The next feature I worked on was the Homework Manager. This lets students add assignments, organize them, and keep track of what still needs to be finished. The goal was to make homework management simple and fast, almost like checking off laps in a race. Assignments can be viewed in one organized location so students always know what needs attention. After that, I implemented the Calendar page. This allows users to view upcoming due dates in a visual format instead of reading through long lists. Having deadlines displayed on a calendar makes it easier to plan ahead and avoid forgetting assignments. It also helps students spread out their workload rather than waiting until the last minute."}]...
|
Title: Homework Planner by @vatsamalakar | Stardan Title: Homework Planner by @vatsamalakar | Stardance
Devlogs:
For this project, I wanted to make a homework planner that didn’t feel boring. Most homework apps are plain lists and calendars, so I decided to build Homework Racer, a car-themed planner where students feel like they’re racing to complete assignments instead of dragging through them. The dark racing-inspired interface with orange accent colors gives the app the feeling of a modern sports car dashboard. One of the first things I created was the dashboard. This acts as the driver’s control panel, giving users quick access to everything they need. Instead of searching through different pages, students can immediately jump to Homework, Calendar, or the Pomodoro timer from the home screen. I also added an “Add Homework” button so users can quickly create new assignments without navigating through multiple menus. The next feature I worked on was the Homework Manager. This lets students add assignments, organize them, and keep track of what still needs to be finished. The goal was to make homework management simple and fast, almost like checking off laps in a race. Assignments can be viewed in one organized location so students always know what needs attention. After that, I implemented the Calendar page. This allows users to view upcoming due dates in a visual format instead of reading through long lists. Having deadlines displayed on a calendar makes it easier to plan ahead and avoid forgetting assignments. It also helps students spread out their workload rather than waiting until the last minute.
During this stage of development, I focused on making Homework Racer feel polished and enjoyable to use. While the core features were already working, I wanted the application to have a professional appearance that matched the overall racing theme. My goal was to make students feel like they were entering the dashboard of a high-performance race car every time they opened the planner. One of the biggest improvements I made was redesigning the navigation sidebar. I organized each section—Home, Dashboard, Homework, Calendar, and Pomodoro—into a clean vertical menu with matching icons. This makes it much easier for users to quickly switch between different pages without getting lost. I also highlighted the currently selected page so users always know where they are in the application. I also spent time improving the homepage layout. Instead of displaying plain text, I created large feature cards that introduce each section of the app. These cards explain what each feature does while keeping the interface clean and modern. The large welcome message and quick action buttons help new users immediately understand how to start using the planner. Another improvement was creating a consistent color palette throughout the application. I chose a dark background with orange accents because orange represents speed, energy, and racing. Every button, icon, and highlighted section follows this color scheme, making the app feel consistent and visually appealing instead of looking like different pages stitched together. Finally, I tested the interface to make sure everything was responsive and easy to navigate. I adjusted spacing, card sizes, fonts, and button placement so the application remained readable without feeling crowded. These improvements made Homework Racer feel much more like a finished product rather than just a collection of features, creating an experience that is both practical for students and enjoyable to use.
During this stage of development, I encountered one of the most frustrating bugs I had faced so far. Although the navigation sidebar appeared to work correctly, some pages would fail to update properly after users switched between different sections of the application. In certain situations, the interface would continue displaying old information instead of rendering the newly selected page.At first, I assumed the problem was related to the styling of the components. After spending time testing different possibilities, I discovered that the issue was actually caused by the way state updates were being handled. Some components were not re-rendering when their data changed, which caused the interface to become out of sync. To solve the problem, I reorganized the state management logic and ensured that components updated whenever new information became available. After implementing these changes, navigation became much smoother and much more reliable. Although fixing the bug took longer than expected, it taught me the importance of carefully managing data flow throughout the application.
During this phase of development, I focused on implementing one of the application’s most useful features: the Pomodoro timer. Since many students struggle with maintaining concentration while studying, I wanted to create a tool that encouraged users to work in shorter, more productive intervals. The biggest challenge involved ensuring that the timer remained accurate while users navigated between different pages of the application. Initially, the timer would reset whenever the page was refreshed, creating a frustrating user experience. After reviewing the logic behind the component, I adjusted the implementation so that the timer state could be preserved correctly.In addition to improving functionality, I also updated the appearance of the timer so that it matched the racing theme of the application. The final result is a feature that feels both practical and engaging while helping students maintain their focus.
As Homework Racer continued to grow, I realized that adding more features also increased the complexity of the application. Certain pages began taking longer to load, and some interface elements felt less responsive than I wanted them to be. To improve performance, I carefully reviewed the codebase and identified unnecessary operations that were occurring repeatedly. I simplified portions of the code, reorganized components, and reduced the number of unnecessary updates being performed in the background. I also focused on improving the overall user experience by refining animations, adjusting spacing, and creating more consistent transitions between pages. Although many of these changes were relatively small, together they made the application feel significantly smoother and more polished. At this stage, Homework Racer is beginning to feel much closer to the vision I originally had when I started the project.
Ships:
What started as a simple idea gradually evolved into a complete productivity platform designed to help students stay organized, focused, and motivated while managing their academic responsibilities. Throughout development, I worked on both the functionality and the overall design of the application. I created a racing-inspired interface with a clean navigation system that allows users to move easily between sections such as the dashboard, homework tracker, calendar, and Pomodoro timer. I also redesigned the user interface multiple times, making adjustments to the layout, spacing, typography, and color palette to create an experience that felt polished and intuitive. Beyond the visual design, I implemented features that support productivity in different ways. The homework tracker allows students to organize assignments and monitor their progress, the calendar helps users manage important dates, and the Pomodoro timer encourages more focused study sessions. Each feature was designed to work together as part of a single, unified experience. Of course, the development process was not always straightforward. Along the way, I encountered bugs related to navigation, state management, and component rendering. Troubleshooting these issues strengthened both my problem-solving skills and my understanding of how different parts of an application interact with one another. Most importantly, this project taught me that creating software involves much more than simply writing code. Every decision, from designing the interface to optimizing performance, contributes to the overall user experience. Homework Racer began as an idea, but through continuous improvement, testing, and iteration, it became a complete application that I am extremely proud of building....
|
1792882126.116268
|
1793746126.116268
|
|
43880
|
Ultimate Unity Systems by @StarCoder | Stardance
|
StarCoder
|
1
|
10.0
|
0
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-28T04:29:58Z", "hours": 10.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Ultimate Unity Systems Hello! I’m finally shipping this project, and I hope you all like it! Notes for reviewers For all reviewers, please note that this is not a game, and the demos included in the project are not meant to look good or be polished. They are simply meant to show what each system does. Overview My project is called Ultimate Unity Systems. I had a lot of plans for this project, but they mostly fizzled out since I got busy with other stuff, but there are still 6 systems I was able to create. This project is a collection of Unity systems as seen by the name. You can see more details about them in the README, but I’ve spent a lot of time on each one making sure they are modular, customizable, and won’t interfere with other scripts. The point of this project is for other people to use the systems contained within. That’s why everything is built in a way to be convenient for others to use these systems, and customize them as they wish. More Details about this project I faced a lot of challenges in the course of this project. At one point I tried to make an editor script, but later decided to scrap that idea, since I did not have the skill level to make something that had clean code and would be helpful to others. My inspiration for this project was a game I’m making. It’s still in progress (very early prototyping phase still), but I wanted that game to be very robust I guess you could say. I wanted each system to be polished, and not cause problems later on. That’s why I made another project, that contains polished systems that can be used in other projects. At first, it was just for my game, then I transitioned into more general systems for other people too. Notes Thanks for reading this far, and I hope you like my project! Below, is a screenshot of the button to get into all the systems. No, it is not a logo or an icon or anything, it is part of my project, in ‘game’ I guess you could call it. Thanks!", "repo": "https://github.com/StarCoder369/ultimate-unity-systems/", "demo": "https://starcoder.itch.io/ultimate-unity-systems"}]...
|
[{"post_id": 83555, "ts": "202 [{"post_id": 83555, "ts": "2026-10-28T04:22:23Z", "hours": 0.2689, "text": "Ultimate Unity Systems Devlog 3 (Last Devlog) I had 16 mins of time unlogged, so this is my last devlog. I mostly just got things ready to ship. I created a README, added a demo link, added a notice to the main menu, and that’s it. Now it’s time to ship! Hopefully I get good ratings :) Below is a screenshot of the systems I have in the project."}, {"post_id": 83513, "ts": "2026-10-28T02:49:48Z", "hours": 6.4389, "text": "Ultimate Unity Systems Devlog 2 Welcome to the second and last devlog of Ultimate Unity Systems. Note: This project only supports Unity 6 and up with the new input system Summary Ok, so I have barely found time to work on this project, and since Stardance is ending soon, I got it to a shippable state and am going to ship soon. I’ve added a few more systems, spent some time improving older systems (especially the custom ammo counter since that’s arguably my best one), and also slightly polished the main demo scene. Basically I have 6 modular systems in my project. They all work good, and should be pretty modular. Now, let me explain a bit more about this project. This is not a game, or anything meant for entertainment. This is for game developer who use Unity. The systems are created and organized in such a way that it is simple for others to add a system into their own project. Each system is made to be modular, and to not interfere with other scripts. Inside the demo, there contains info about what are the requirements of each system, since some systems require other systems. All systems are divided into folders to make adding them easy. There is also a General folder inside the project. This folder contains many general scripts that are useful for many purposes. Here’s a simple list of what it contains: The main demo scene that acts like a launcher for system demos Billboard script Folder script Health Display Script IDamageable InfoPanel script SceneSwitcher script SliderValueForwarder script TextDisplay script I won’t go too much into detail, but these script are useful for a variety of things. That’s all for this devlog. I’m going to try to ship this project today!"}, {"post_id": 42966, "ts": "2026-08-07T23:25:26Z", "hours": 3.4533, "text": "Ultimate Unity Systems Devlog 1 Welcome to the first devlog of my new project, Ultimate Unity Systems. I will start by giving a brief overview of what the project is, since it is a bit different than the usual things I make. Summary Ultimate Unity Systems is made in Unity, like it says in it’s name, but it isn’t a game. Instead, it is a collection of systems that can be used in games, or anything else. It is completely open source, and is meant to help others. Future overview There are going to be a lot of systems, and so far, I only have a few. Some of the systems I will make will be simple, while others will be more complex. I want there to be a huge collection, so people can find anything they need. What I have so far The systems I have so far, are listed below. None of them are fully finished, since I also want people to be able to try it out in a Web browser, so I need lots of sliders and buttons to make everything modular: Custom Ammo Counter (check screenshot) Status Effect System Custom Cursor Cursor Text Display Cursor Interaction System Project Structure The project is structured with each system having it’s own folder, directly under Assets. So each system has its own folder, with it’s own scripts folder, prefabs folder, etc. This makes it slightly harder for me to work on the project, but I made it like this so it is easier to only download one system. There is also a general folder which contains scripts that are used by multiple systems. That’s all for this devlog, and if anyone wants, I can make an early web build for people to try it out and give feedback. Thanks for reading!"}]...
|
Title: Ultimate Unity Systems by @StarCoder | Star Title: Ultimate Unity Systems by @StarCoder | Stardance
Devlogs:
Ultimate Unity Systems Devlog 1 Welcome to the first devlog of my new project, Ultimate Unity Systems. I will start by giving a brief overview of what the project is, since it is a bit different than the usual things I make. Summary Ultimate Unity Systems is made in Unity, like it says in it’s name, but it isn’t a game. Instead, it is a collection of systems that can be used in games, or anything else. It is completely open source, and is meant to help others. Future overview There are going to be a lot of systems, and so far, I only have a few. Some of the systems I will make will be simple, while others will be more complex. I want there to be a huge collection, so people can find anything they need. What I have so far The systems I have so far, are listed below. None of them are fully finished, since I also want people to be able to try it out in a Web browser, so I need lots of sliders and buttons to make everything modular: Custom Ammo Counter (check screenshot) Status Effect System Custom Cursor Cursor Text Display Cursor Interaction System Project Structure The project is structured with each system having it’s own folder, directly under Assets. So each system has its own folder, with it’s own scripts folder, prefabs folder, etc. This makes it slightly harder for me to work on the project, but I made it like this so it is easier to only download one system. There is also a general folder which contains scripts that are used by multiple systems. That’s all for this devlog, and if anyone wants, I can make an early web build for people to try it out and give feedback. Thanks for reading!
Ultimate Unity Systems Devlog 2 Welcome to the second and last devlog of Ultimate Unity Systems. Note: This project only supports Unity 6 and up with the new input system Summary Ok, so I have barely found time to work on this project, and since Stardance is ending soon, I got it to a shippable state and am going to ship soon. I’ve added a few more systems, spent some time improving older systems (especially the custom ammo counter since that’s arguably my best one), and also slightly polished the main demo scene. Basically I have 6 modular systems in my project. They all work good, and should be pretty modular. Now, let me explain a bit more about this project. This is not a game, or anything meant for entertainment. This is for game developer who use Unity. The systems are created and organized in such a way that it is simple for others to add a system into their own project. Each system is made to be modular, and to not interfere with other scripts. Inside the demo, there contains info about what are the requirements of each system, since some systems require other systems. All systems are divided into folders to make adding them easy. There is also a General folder inside the project. This folder contains many general scripts that are useful for many purposes. Here’s a simple list of what it contains: The main demo scene that acts like a launcher for system demos Billboard script Folder script Health Display Script IDamageable InfoPanel script SceneSwitcher script SliderValueForwarder script TextDisplay script I won’t go too much into detail, but these script are useful for a variety of things. That’s all for this devlog. I’m going to try to ship this project today!
Ultimate Unity Systems Devlog 3 (Last Devlog) I had 16 mins of time unlogged, so this is my last devlog. I mostly just got things ready to ship. I created a README, added a demo link, added a notice to the main menu, and that’s it. Now it’s time to ship! Hopefully I get good ratings :) Below is a screenshot of the systems I have in the project.
Ships:
Ultimate Unity Systems Hello! I’m finally shipping this project, and I hope you all like it! Notes for reviewers For all reviewers, please note that this is not a game, and the demos included in the project are not meant to look good or be polished. They are simply meant to show what each system does. Overview My project is called Ultimate Unity Systems. I had a lot of plans for this project, but they mostly fizzled out since I got busy with other stuff, but there are still 6 systems I was able to create. This project is a collection of Unity systems as seen by the name. You can see more details about them in the README, but I’ve spent a lot of time on each one making sure they are modular, customizable, and won’t interfere with other scripts. The point of this project is for other people to use the systems contained within. That’s why everything is built in a way to be convenient for others to use these systems, and customize them as they wish. More Details about this project I faced a lot of challenges in the course of this project. At one point I tried to make an editor script, but later decided to scrap that idea, since I did not have the skill level to make something that had clean code and would be helpful to others. My inspiration for this project was a game I’m making. It’s still in progress (very early prototyping phase still), but I wanted that game to be very robust I guess you could say. I wanted each system to be polished, and not cause problems later on. That’s why I made another project, that contains polished systems that can be used in other projects. At first, it was just for my game, then I transitioned into more general systems for other people too. Notes Thanks for reading this far, and I hope you like my project! Below, is a screenshot of the button to get into all the systems. No, it is not a logo or an icon or anything, it is part of my project, in ‘game’ I guess you could call it. Thanks!...
|
1793454847.9406426
|
1793541247.9406426
|
|
43898
|
bing searcher with a cool graphic by @kripusek | S bing searcher with a cool graphic by @kripusek | Stardance...
|
kripusek
|
1
|
1.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-04T19:12:20Z", "hours": 1.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I have made a simple but very good looking and working search site for bing. it features a random button for randomising the background potd nasa pic and it also features an explanation for the picture in the background.", "repo": "https://github.com/kripusek/krip-nasa-website", "demo": "https://kripusek.github.io/krip-nasa-website/"}]...
|
[{"post_id": 40909, "ts": "202 [{"post_id": 40909, "ts": "2026-08-04T18:57:58Z", "hours": 1.2156, "text": "I have basically finished the project I just cannot find where do I change the title card logo/ icon."}]...
|
Title: bing searcher with a cool graphic by @kripu Title: bing searcher with a cool graphic by @kripusek | Stardance
Devlogs:
I have basically finished the project I just cannot find where do I change the title card logo/ icon.
Ships:
I have made a simple but very good looking and working search site for bing. it features a random button for randomising the background potd nasa pic and it also features an explanation for the picture in the background....
|
1793555404.184851
|
1793641804.184851
|
|
43907
|
Flappy Bird Console by @artitule | Stardance
|
artitule
|
1
|
40.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-22T19:05:53Z", "hours": 40.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I built FlappyINO a small form factor portable Flappy Bird Console. It is easy to take with you and enjoy on the go. It is based around the ATmega328P IC (the same IC that is used in the Arduino UNO and NANO) so the project is very easy to build from readily available parts. Also since the same IC is used in popular Arduino boards the project can be built on a breadboard and tested beforehand with ease. This project was started before Stardance but before only the game part was there. Since Stardance the project became a lot more polished and i was able to add a lot of the features that were missing before. I rewrote the code to use the more user friendly VSCode + PlatformIO combo instead of the ArduinoIDE, before the code was organized in what ArduinoIDE calls “Tabs”. Now the code is organized in actual files and this is an actual software project. Apart from that in the v2 release i added: A game progression system with difficulty unlocks and more game modes, a Settings menu for graphical features, landing and takeoff animations, better UI and so much more. Please see the README to see the full list of changes and see the demo video for the gameplay. As this is a hardware project and you can’t run something like Unity on a IC that has 2Kb of SRAM and 32Kb of flash you need to implement all of the “basic” things that you can do with a couple lines of code in game engine like collision detection, game loop, player inputs, accurate timings and stable FPS needs implementation by hand. This was by far the hardest part (together with game optimization and asset storage) that i had to overcome to finish this project. I’m most proud of being able to combine all of these aspects into one and get something that is stable/reliable and responsive but also compact so that you can carry the whole console on your keychain. Don’t even get me started on the responsive part. Since the game needs to get faster and faster (otherwise it would get really boring) you will be quickly met with restrictions to how much data you can process and send to the display while keeping the game responsive and not slowing it down. Here even at 30 FPS you need to basically redraw 128x64=8.192 pixels every 33 ish milliseconds. On a modern computer that is not that hard but on a 8MHz microcontroller that is no easy feat. In the end i had to cut down and optimize almost all of the “redraws” to minimize the amount that needs to be actually “redrawn”. To test the project select the hardware you want to run the project on (the PCB or an Arduino Board) go to the GitHub repository and follow the steps for the connections and code uploading. You can also watch the demo video beforehand to get more information about the project. I really enjoyed being a part of the Stardance community and improving my project. I hope in the future i will be able to to more really interesting hardware and software projects. If you want to see this and my future projects grow please consider leaving feedback. I am designing these projects on my own so other peoples feedback is really important to me! Thank You! :)", "repo": "https://github.com/ARTITULE/FlappyINO", "demo": ""}]...
|
[{"post_id": 71874, "ts": "202 [{"post_id": 71874, "ts": "2026-09-21T18:01:22Z", "hours": 7.5458, "text": "Devlog Time!! Hopefully this is going to be my final devlog for this project. I finished the demo video and the thumbnail updated the README and did much more. You can watch the demo video from the link in my project or the link below. https://www.youtube.com/watch?v=2ZuoSsNO6Mo See you in the next devlog"}, {"post_id": 64322, "ts": "2026-09-08T16:43:15Z", "hours": 6.4667, "text": "Devlog Time!! After a lot of soldering i finished the assembly of the v2 FlappyINO console. You can see the v1(on the left) vs the v2(on the right) comparison in the picture. Now the only thing that’s left is to update the README and to film the video! See you then"}, {"post_id": 62394, "ts": "2026-09-05T18:47:28Z", "hours": 2.8417, "text": "Devlog Time!! Finally got the Pcb’s and redesigned the case. The only real thing that is left is to assemble the console and SHIP! I also added the production files to github and modified the README. Now i am going to, keep soldering!"}, {"post_id": 59637, "ts": "2026-09-01T15:38:43Z", "hours": 7.6844, "text": "Devlog Time!! Finally added the animations for landing and taking off . You can see them attached. Among minor bug fixes i implemented: Landing and Takeoff animation. Setting in settings menu to enable and disable the animations(in case they get boring) Added a way to see if the level is locked, unlocked or cleared(completed) Since there is no game engines written for AVR microcontrollers the animation took a long time to implement because i need to draw each frame of it by hand to the buffer and then to the screen. But i definitely learned a lot about how to interact with each element on its own. Now i am slowly preparing to ship the project but until then i will keep coding!"}, {"post_id": 48390, "ts": "2026-08-16T18:29:51Z", "hours": 3.5811, "text": "Devlog Time!! Finally worked on the level ending.(before the game had no ending and no way to complete the levels ) Now the levels have a cool ending screen and an option to play the ENDLESS MODE . Also a new feature is that you now need to beat previous levels before advancing to the next. I think this way an endless game has more “story” i guess. The next thing i will be working on is a cool landing animation. In the meantime Keep Coding!"}, {"post_id": 44709, "ts": "2026-08-10T17:26:21Z", "hours": 2.8642, "text": "Devlog Time!! After adding more graphics to the game i saw some frame drops so i added the ability to toggle some of the more performance heavy ones. That is how the Settings menu was born. Not a lot of changes for this devlog but in the meantime, Keep coding"}, {"post_id": 44011, "ts": "2026-08-09T14:38:52Z", "hours": 5.8189, "text": "Devlog Time!! Mainly worked on the GUI this time now the level select screen has a cute planet picture :3. Also added a moon surface looking background to the level. Spent like 30 minutes trying to align everything but now i am really good at math(specifically dividing by 2). Keep coding 🙃"}, {"post_id": 42492, "ts": "2026-08-07T08:12:39Z", "hours": 3.3422, "text": "Finally rewrote the code to work with PlatformIO . Code compilation is a lot faster now. Struggled on splitting the ArduinoIDE “Tabs” into actual files but this is a lot better than the old mess."}]...
|
Title: Flappy Bird Console by @artitule | Stardanc Title: Flappy Bird Console by @artitule | Stardance
Devlogs:
Finally rewrote the code to work with PlatformIO . Code compilation is a lot faster now. Struggled on splitting the ArduinoIDE “Tabs” into actual files but this is a lot better than the old mess.
Devlog Time!! Mainly worked on the GUI this time now the level select screen has a cute planet picture :3. Also added a moon surface looking background to the level. Spent like 30 minutes trying to align everything but now i am really good at math(specifically dividing by 2). Keep coding 🙃
Devlog Time!! After adding more graphics to the game i saw some frame drops so i added the ability to toggle some of the more performance heavy ones. That is how the Settings menu was born. Not a lot of changes for this devlog but in the meantime, Keep coding
Devlog Time!! Finally worked on the level ending.(before the game had no ending and no way to complete the levels ) Now the levels have a cool ending screen and an option to play the ENDLESS MODE . Also a new feature is that you now need to beat previous levels before advancing to the next. I think this way an endless game has more “story” i guess. The next thing i will be working on is a cool landing animation. In the meantime Keep Coding!
Devlog Time!! Finally added the animations for landing and taking off . You can see them attached. Among minor bug fixes i implemented: Landing and Takeoff animation. Setting in settings menu to enable and disable the animations(in case they get boring) Added a way to see if the level is locked, unlocked or cleared(completed) Since there is no game engines written for AVR microcontrollers the animation took a long time to implement because i need to draw each frame of it by hand to the buffer and then to the screen. But i definitely learned a lot about how to interact with each element on its own. Now i am slowly preparing to ship the project but until then i will keep coding!
Devlog Time!! Finally got the Pcb’s and redesigned the case. The only real thing that is left is to assemble the console and SHIP! I also added the production files to github and modified the README. Now i am going to, keep soldering!
Devlog Time!! After a lot of soldering i finished the assembly of the v2 FlappyINO console. You can see the v1(on the left) vs the v2(on the right) comparison in the picture. Now the only thing that’s left is to update the README and to film the video! See you then
Devlog Time!! Hopefully this is going to be my final devlog for this project. I finished the demo video and the thumbnail updated the README and did much more. You can watch the demo video from the link in my project or the link below. https://www.youtube.com/watch?v=2ZuoSsNO6Mo See you in the next devlog
Ships:
I built FlappyINO a small form factor portable Flappy Bird Console. It is easy to take with you and enjoy on the go. It is based around the ATmega328P IC (the same IC that is used in the Arduino UNO and NANO) so the project is very easy to build from readily available parts. Also since the same IC is used in popular Arduino boards the project can be built on a breadboard and tested beforehand with ease. This project was started before Stardance but before only the game part was there. Since Stardance the project became a lot more polished and i was able to add a lot of the features that were missing before. I rewrote the code to use the more user friendly VSCode + PlatformIO combo instead of the ArduinoIDE, before the code was organized in what ArduinoIDE calls “Tabs”. Now the code is organized in actual files and this is an actual software project. Apart from that in the v2 release i added: A game progression system with difficulty unlocks and more game modes, a Settings menu for graphical features, landing and takeoff animations, better UI and so much more. Please see the README to see the full list of changes and see the demo video for the gameplay. As this is a hardware project and you can’t run something like Unity on a IC that has 2Kb of SRAM and 32Kb of flash you need to implement all of the “basic” things that you can do with a couple lines of code in game engine like collision detection, game loop, player inputs, accurate timings and stable FPS needs implementation by hand. This was by far the hardest part (together with game optimization and asset storage) that i had to overcome to finish this project. I’m most proud of being able to combine all of these aspects into one and get something that is stable/reliable and responsive but also compact so that you can carry the whole console on your keychain. Don’t even get me started on the responsive part. Since the game needs to get faster and faster (otherwise it would get really boring) you will be quickly met with restrictions to how much data you can process and send to the display while keeping the game responsive and not slowing it down. Here even at 30 FPS you need to basically redraw 128x64=8.192 pixels every 33 ish milliseconds. On a modern computer that is not that hard but on a 8MHz microcontroller that is no easy feat. In the end i had to cut down and optimize almost all of the “redraws” to minimize the amount that needs to be actually “redrawn”. To test the project select the hardware you want to run the project on (the PCB or an Arduino Board) go to the GitHub repository and follow the steps for the connections and code uploading. You can also watch the demo video beforehand to get more information about the project. I really enjoyed being a part of the Stardance community and improving my project. I hope in the future i will be able to to more really interesting hardware and software projects. If you want to see this and my future projects grow please consider leaving feedback. I am designing these projects on my own so other peoples feedback is really important to me! Thank You! :)...
|
1793339730.6229248
|
1793426130.6229248
|
|
43908
|
MyPortfolio by @Judith | Stardance
|
Judith
|
1
|
2.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-05T07:40:27Z", "hours": 2.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I built a personal portfolio website to showcase my research experience, academic awards, and added my contact information. . The biggest challenge was organizing the experience section to keep it clean and readable with multiple entries, but I’m proud of how the overall design turned out with the gold and teal color scheme, the polished typography from Google Fonts, and the easy navigation. To test the project, simply open the index.html file in any web browser, click the navigation links to scroll through sections, and click the email, LinkedIn, or GitHub links in the footer to verify the contact functionality works.", "repo": "https://github.com/zvythrox67/Portfolio", "demo": "https://zvythrox67.github.io/Portfolio/"}]...
|
[{"post_id": 41189, "ts": "202 [{"post_id": 41189, "ts": "2026-08-05T07:38:16Z", "hours": 0.5492, "text": "Released!"}, {"post_id": 41167, "ts": "2026-08-05T06:21:05Z", "hours": 0.8781, "text": "Updated the experience section of my portfolio. Might change the color theme."}, {"post_id": 41140, "ts": "2026-08-05T04:54:31Z", "hours": 0.8464, "text": "Making my first portfolio… :)"}]...
|
Title: MyPortfolio by @Judith | Stardance
Devlogs Title: MyPortfolio by @Judith | Stardance
Devlogs:
Making my first portfolio… :)
Updated the experience section of my portfolio. Might change the color theme.
Released!
Ships:
I built a personal portfolio website to showcase my research experience, academic awards, and added my contact information. . The biggest challenge was organizing the experience section to keep it clean and readable with multiple entries, but I’m proud of how the overall design turned out with the gold and teal color scheme, the polished typography from Google Fonts, and the easy navigation. To test the project, simply open the index.html file in any web browser, click the navigation links to scroll through sections, and click the email, LinkedIn, or GitHub links in the footer to verify the contact functionality works....
|
1793562728.6277854
|
1793649128.6277854
|
|
43910
|
BIT-BOT by @singhshiv3108 | Stardance
|
singhshiv3108
|
1
|
3.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-17T15:12:35Z", "hours": 3.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made Slack bot named Bit-Bot, it shows ysws catalog and details. Challenging part was playing with api. I am proud of That it works as intended", "repo": "https://github.com/ShivSingh3108/Slack-bot", "demo": "https://hackclub.enterprise.slack.com/archives/C0B8B8SR86A"}]...
|
[{"post_id": 66058, "ts": "202 [{"post_id": 66058, "ts": "2026-09-11T17:00:26Z", "hours": 1.5628, "text": "In this Devlog , I made my bot give details about specific ysws events(Status, Description and Deadline). Also Added 2 not so important commands( one gives info about bot and other feeds bit bot)."}, {"post_id": 63056, "ts": "2026-09-06T17:12:10Z", "hours": 1.0086, "text": "I am working on Slack bot (bit bot). In this Devlog I did initial setup for bot and add commands like ascend which pings and ysws which shows ysws catalog. Getting Api and Show what i want to was the hardest part . In next Devlog I’ll add sortng feature and more. Thank you(Attached picture is output my bot."}]...
|
Title: BIT-BOT by @singhshiv3108 | Stardance
Devl Title: BIT-BOT by @singhshiv3108 | Stardance
Devlogs:
I am working on Slack bot (bit bot). In this Devlog I did initial setup for bot and add commands like ascend which pings and ysws which shows ysws catalog. Getting Api and Show what i want to was the hardest part . In next Devlog I’ll add sortng feature and more. Thank you(Attached picture is output my bot.
In this Devlog , I made my bot give details about specific ysws events(Status, Description and Deadline). Also Added 2 not so important commands( one gives info about bot and other feeds bit bot).
Ships:
I made Slack bot named Bit-Bot, it shows ysws catalog and details. Challenging part was playing with api. I am proud of That it works as intended...
|
1793339743.9958408
|
1793426143.9958408
|
|
43932
|
Abi vault by @jeremy | Stardance
|
jeremy
|
1
|
59.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-07T17:43:22Z", "hours": 59.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "AbiVault AbiVault is a finance management web app built with Next.js, TypeScript, Tailwind CSS, Supabase, and Clerk . I built it because my school needed a better way to manage the money around our Abitur. Students organize things like the Abiball, parties, fundraising, and merchandise themselves, which means we also have to keep track of income, expenses, budgets, and the current balance. AbiVault is mainly made for Abitur committees and student finance teams . It gives multiple students access to the same financial data and makes it easier to keep everything organized without relying on several spreadsheets, documents, and group chats. Features Track income and expenses Manage transactions and categories View the current balance Create and manage budgets Support multiple users View simple financial statistics Tech Stack Next.js TypeScript Tailwind CSS Supabase for the database and backend Clerk for authentication and user management The main goal is to make managing Abitur finances simpler, more organized, and more transparent for everyone involved.", "repo": "https://github.com/jeremy341/abi-vault/tree/open-source-demo", "demo": "https://abi-vault-demo.vercel.app/"}]...
|
[{"post_id": 63715, "ts": "202 [{"post_id": 63715, "ts": "2026-09-07T17:30:42Z", "hours": 2.5175, "text": "Abi Valut - Last Devlog This phase about cleaning UI elements changing the language of the whole demo website to english and fully preparing it for the offical stardance submission as the offical private one was alredy online for a good while and had near to 0 bugs. Cards This isnt a feature newly added but I just wanted to mention that our system in theory supports cards through gocardless but that isnt setup so its not usable at the moment though the backend exists and for a while even Ui existed but I have removed that. Translation This wasnt so hard just pretty time consuming going over everything and translating every single text. Refelection Pretty proud of myself as I managed to push out a full working apllication of course this isnt 100% selfcoded for example backend features but it is more then fine for what I was aiming to do and It works perfectly. Trying out here is a link to the demo for everybody wanting to try it out. https://abi-vault-demo.vercel.app/"}, {"post_id": 59073, "ts": "2026-08-31T17:57:37Z", "hours": 5.6472, "text": "Abi Vault - Devlog 10 This phase was just about creating a demo website for the stardance people. Creating One new tab and cleaning up the final UI. Finish I finished with fully creating the full application privatly and fixing all bugs Ui and backend and also created one new tab which was interseting. Stardance Demo I made a second copy of my repo removed all clerk dependecies translated all the text from german into english and setup a second Supabase and vercel project this will be used without loging which allows for everybody to use and test it. Next Steps creating the readme, cleaning up a bit and its ready for ship"}, {"post_id": 55712, "ts": "2026-08-27T18:01:07Z", "hours": 9.6378, "text": "Abi Vault - Devlog 9 This phase was mostly about moving everything from development to production, using the actual domain, finalising the system, rewriting a bit of the structure and fixing bugs. UI So I finalised the iPad UI and added multiple simple spinner animations and slide-in animations. I also worked a bit more on the blank states, what the placeholder text should say and how everything should look. Right now I am still in the process of finalising the phone UI, as the blank states fucked it up a bit. Logic I rewrote 2 large sections. As I realised in the last devlog that I couldn’t use a bank API, I needed to rewrite the logic of how the platform worked. I decided to keep the cards and make them a visual representation of the physical cash. I also decided to fully transition the system to being ledger-based, which was pretty obvious since we now don’t have an API. For anybody asking, ledger-based basically just means that the system calculates the balances and tracks how everything is performing based on the values that users manually enter. i also decided to create an invite system link so people cant just signup if they somehow find the software and it only works by getting a link from the Admin. For the Supervisor role its a 30 day link for up to 30 people and for admin its a onetime link for up to 7 days and 1 user. Domain I also decided to buy a domain, which I originally didn’t want to do as I thought Vercel was all I needed. However, Clerk required a custom domain so I could move everything from development to production. Also, for anybody asking, I will not reveal the name of the domain as this is a closed platform. That’s also why I made it as badly SEO-optimised as possible in the metadata. And for anybody wondering, this domain cost me A WHOLE $0.07 a month. Quite expensive if you ask me. Clerk Clerk was quite the hassle because, as mentioned before, my plan was to just use Vercel, but Clerk essentially forced a custom domain onto me. Another thing I didn’t know was that under my student plan I was only allowed 2 roles and wasn’t able to add another custom one. This became a bottleneck as I originally had 3 roles in mind: Student Admin Supervisor In the end I decided to scrap Admin and make it only Student and Supervisor. Supabase This part was quite simple as most of it was already finished. I mainly needed to work on the role permissions and also add a caching system because I noticed that some pages would load for 1–2 seconds every time. That’s just bad UX, especially when it happens even during a simple tab switch. The caching system now keeps already-loaded data available where possible instead of unnecessarily fetching everything again. Next Steps The next steps is now creating a demo version and a better opensoure version so people can use my software without depending on my vercel, supabase and etc. Or maybe I will host another workspace of this exact software for hackclub so people can try it what would be your advise for that?"}, {"post_id": 54706, "ts": "2026-08-25T19:36:18Z", "hours": 8.9725, "text": "Abi Vault - Devlog 8 This phase was mainly about the backend which i have to confess i had to use AI for as it was complicated with supabase clerk and just rotuing everything together. Failed bank API My plan was to allow the use of real bank cards and getting all their information through a bank API, but i missed sth important either you handle all bank apis from all providers yourself or you get a service to do it. The problem is there is no free Opensource service which allows for this and to keep it a buck iam broke asf. So i scraped the Idea and made it only ledger based which means it gets calucalted automatically but you have to write down all transactions and etc. SupaBase This was quite hard as Supabase is hella confusing prob one of the most confusing UI i have ever seen but after some back and forth with the Ai i was able to set it up though i still need to learn a bit as I really didnt undestand what i did there. Clerk this was quite easy clerk really allows for easy synchronisation and it was quite easy to set up the 3 classes admin, supervisor, and student I also made it so the software is request only for the moment so i can send a request with a certain authorisatzion and the User creates their account. But will probally change that soon Next Steps I will probally either get a domain grant or just buy it from my own money and prepare to launch the website over nest. Its nearly finished and the onlz fixes are small UI mismatches, better animation adding things like skelleton loaders and etc."}, {"post_id": 53076, "ts": "2026-08-23T14:18:51Z", "hours": 12.2586, "text": "Abi Vault - Devlog 7 This section was mainly about adding all other pages creating a fully nice looking functionial phone UI and just cleaning up the UI in general. Pages I created the rest of the pages and created place holders for them and now a whole system is in place the only thing left is writing real logic and conecting it to a server to get user auth. Phone UI This was the biggest phase of this Project i first started with scraping our already existing phone UI and started gathering references I decided to use klarna as they got quite the clean UI. I first started with adding the sidebar to the bottom to make it easier accsessible. I also needed quite A long time to make the UI look clean with adding animation for the modals and making them appear from underneath and not spawn in the middle of the screen Next Steps Now that the UI is kinda finished and school starts in 1 week the next step is creating a fully functional backend syncing the application with superbase and other services so I have a first working demo which I can continue working on during the school year."}, {"post_id": 47087, "ts": "2026-08-14T18:38:37Z", "hours": 8.9711, "text": "Abi Vault - Devlog 6 This section was mainly about cleaning up the UI, making the different pages more synchron and creating a more structured UI system for the whole website. UI System I worked on making the design more consistent across the dashboard, transactions and receipts page. Before that many aspects were styled slightly different like the spacing, typography, buttons, dropdowns and card sizes. I started creating shared rules and components so the pages follow the same visual identity and feel more connected. Transactions and Receipts I created and implemented the full transactions page with filters, a filter modal, pagination, placeholder transactions and a structured transaction table. I also created the receipts page with placeholder receipts, status filters, pagination and a modal for adding new receipts. Both pages use the existing Abi Vault sidebar, topbar, colors and general design language. Dashboard Cleanup I added more placeholder transactions to the dashboard so the transaction history feels more complete and does not leave as much empty space. I also added another spending category and adjusted the review section so the right side feels more balanced with the transaction history on the left. 1920px and 2560px A big part of this session was cleaning up the layout for both 1920px and 2560px screens. The layouts looked very different depending on the screen size because of adaptive heights and spacing. I adjusted the cards, rows, table containers and page spacing so the website stays inside the viewport and does not become scrollable on the supported resolutions. The 2560px version was especially difficult because there was a lot of empty space, but simply scaling everything up did not look good. Instead I had to create separate wide-screen adjustments, add more rows and balance the different cards while keeping the 1920px layout unchanged. Results This was a productive session but also quite difficult because many small CSS changes affected multiple pages. The UI now feels much more consistent and the Transactions and Receipts pages are much closer to the final design. I still need to refine some spacing differences between the pages and test everything more carefully, but the main structure is now in place and the beta version is getting closer. For anyone wondering about the phone UI I havent touched it in a while and decided to just create it at the end because its such a hedache"}, {"post_id": 44810, "ts": "2026-08-10T20:43:33Z", "hours": 1.1994, "text": "Abi Vault - Devlog 5 This section was mainly about refining the UI further and fixing some bugs regarding the CSS and how the website look on the phone. Dark Mode I had some bugs with the dark mode becuase as you could see in the video of the last devlog the Clerk system wasnt adjustet as i forgot it. This took quite some while to sync it to ts and css variable but with some AI it was possible. Phone UI This was hell i genuinly couldnt manage fixing the Phone UI and even then i had to change so many different things because the phone ui is just different entirely and you need to hide so many differnt aspects and even replace symbols the most challenging part was reanging the dashboard so it really fits into a phone overview and after getting stuck for 30 minutes i just decided to ask AI and let it expain what was wrong Card customisatzion modal Also worked on the card customisation model cleaning up Ui and implementing restriction like max character limits, dates that arent expired and etc Results pretty uncessful session and didnt code much by hand because it was so difficult also the progress is way to slow so iam going to pick up the pace to atleas have an beta ready at the end of august which is usable."}, {"post_id": 43510, "ts": "2026-08-08T20:33:37Z", "hours": 3.2119, "text": "Abi vault - Devlog 4 This Section was mainly about adding cool effects with Tailwind CSS and refining the UI further. I also used Figma to design the card and saved it as an SVG. Figma This was quite simple and fast. I used references from cards like the ones Klarna uses and designed the card from there. To give it a more metallic look, I used a linear gradient with three stops at a certain angle. The problem was that I worked in the Figma app instead of the browser, and the browser connection kept disconnecting and reconnecting. so i coudlnt track hackatime for it/ Cards The cards are combined with SVG and TSX. The SVG is responsible for the background, including the gradient, border, and rounded corners. The card text is rendered separately in TSX and positioned above the SVG using a layered container. This allows the account name, number, card holder, expiry date, and color to change dynamically. Visual effect The visual effects include a subtle 3D tilt that reacts to the mouse position. The code calculates the mouse position relative to the card and converts it into tilt values for the X and Y axes. These values are saved as CSS variables and used by rotateX() and rotateY() . const relativeX = ( event . clientX - bounds . left ) / bounds . width ; const relativeY = ( event . clientY - bounds . top ) / bounds . height ; const rotateX = ( 0.5 - relativeY ) * 8 ; const rotateY = ( relativeX - 0.5 ) * 8 ; event . currentTarget . style . setProperty ( \" --tilt-x \" , ` ${ rotateX } deg` ); event . currentTarget . style . setProperty ( \" --tilt-y \" , ` ${ rotateY } deg` ); When the mouse leaves, the card resets to 0deg . It also has a diagonal light-sweep animation and slightly lifts on hover. The white card uses a separate metallic gradient and darker shine. Card Logic Cards are stored in React state, and cardIndex controls which card is visible. The modals allow cards to be added, edited, or deleted. Currently, cards reset after refreshing and will later be saved in a database connected to the Clerk user or class. Results Iam pretty proud of myself of the result though I did have to use AI for how to create the Card logic so the text is interactive at first I thought about redrawing the SVG everytime as i did sth smiliar in my README but that didnt make sense, so i asked AI as for the darkmode i needed to watch some tuts and for the same for the tilt and a bit of AI for it"}, {"post_id": 42817, "ts": "2026-08-07T18:48:58Z", "hours": 0.9725, "text": "Abi vault - Devlog 3 This section was more about battling my typscript skills and cleaning up the UI minimal also added the account system easily with clerk bless clear Account system This was quite simple in theory but I had some difficulties making it compatible for both phone and desktop because they should appear in different location and I didnt really know how to do it, but iam really thankfull i choose clerk because of that I dont have to code the account system by scratch and get a easy to use account system Results Was pretty difficult but learn about utilizing hidden and tailwind css to hide certain ui elements on certain devices."}, {"post_id": 42091, "ts": "2026-08-06T17:34:38Z", "hours": 2.4622, "text": "Abi Vault - Devlog 2 Today I focused on making the login system and a simple sidebar utilizing clerk shadcn.ui and lucid react components for the icons Clerk System I integrated Clerk’s prebuilt and components and customized their appearance to match Abi Manager’s clean black-and-white design. Access to the dashboard is protected so only authenticated users can view it. Sidebar This was quite difficult because i never advanced much with my HTMl skills and still havent really done semantic html which i will continue now on free code camp, at first i thought creating it myself was the play and I did and it was difficult but with some googling and AI I managed btu I realised that I wanted to make this fully compabtible with Ai so i decided to use the one from shadcn which already comes with a mobile function. I also noticed while coding that I paster the for the buttons 8 times, so i used that moments to learn how to create reusable componenets Results Pretty good session I am still having difficulties with tailwind as it just feels weird and looks weird to design in the code but its going good"}, {"post_id": 41440, "ts": "2026-08-05T17:33:15Z", "hours": 2.9972, "text": "Abi Vault Day One in this section i did simple setup and mapped the features the app should have About I decided to build this project to finally explore modern web development. So far, I have only created simple websites without many features or animations, but I wanted to create something more modern. Since I am approaching my final years of high school in Germany, we have something called an Abi Party, for which different committees have to collect and manage money. My aim is to create a simple website to track the finances with three account levels. Admin, Commite Members and students affected. The aim is to create a Next.js tailwind website which allows for adding bank account and seeing the money history though the bank Api uploading reciepts and more. Built the Welcome Page and added clerk So i started with building the homepage and learning tailwind, tsx and next.js which was quite weird and took a good while but it wasnt that hard as its similar to html syntax with a js twist. I had difficulties with tailwind as I found myself writing a really long line but I found out you can reference tailwind and just add it in CSS without having everything in the Tsx. I also connected Clerk and set it up. The reason this took so long was because of learning all these new languages but the next post and features should be a lot faster. Next Steps Create the rough system with a tab system simple dashboard and login and signup screen when buttons pressed"}]...
|
Title: Abi vault by @jeremy | Stardance
Devlogs:
Title: Abi vault by @jeremy | Stardance
Devlogs:
Abi Vault Day One in this section i did simple setup and mapped the features the app should have About I decided to build this project to finally explore modern web development. So far, I have only created simple websites without many features or animations, but I wanted to create something more modern. Since I am approaching my final years of high school in Germany, we have something called an Abi Party, for which different committees have to collect and manage money. My aim is to create a simple website to track the finances with three account levels. Admin, Commite Members and students affected. The aim is to create a Next.js tailwind website which allows for adding bank account and seeing the money history though the bank Api uploading reciepts and more. Built the Welcome Page and added clerk So i started with building the homepage and learning tailwind, tsx and next.js which was quite weird and took a good while but it wasnt that hard as its similar to html syntax with a js twist. I had difficulties with tailwind as I found myself writing a really long line but I found out you can reference tailwind and just add it in CSS without having everything in the Tsx. I also connected Clerk and set it up. The reason this took so long was because of learning all these new languages but the next post and features should be a lot faster. Next Steps Create the rough system with a tab system simple dashboard and login and signup screen when buttons pressed
Abi Vault - Devlog 2 Today I focused on making the login system and a simple sidebar utilizing clerk shadcn.ui and lucid react components for the icons Clerk System I integrated Clerk’s prebuilt and components and customized their appearance to match Abi Manager’s clean black-and-white design. Access to the dashboard is protected so only authenticated users can view it. Sidebar This was quite difficult because i never advanced much with my HTMl skills and still havent really done semantic html which i will continue now on free code camp, at first i thought creating it myself was the play and I did and it was difficult but with some googling and AI I managed btu I realised that I wanted to make this fully compabtible with Ai so i decided to use the one from shadcn which already comes with a mobile function. I also noticed while coding that I paster the for the buttons 8 times, so i used that moments to learn how to create reusable componenets Results Pretty good session I am still having difficulties with tailwind as it just feels weird and looks weird to design in the code but its going good
Abi vault - Devlog 3 This section was more about battling my typscript skills and cleaning up the UI minimal also added the account system easily with clerk bless clear Account system This was quite simple in theory but I had some difficulties making it compatible for both phone and desktop because they should appear in different location and I didnt really know how to do it, but iam really thankfull i choose clerk because of that I dont have to code the account system by scratch and get a easy to use account system Results Was pretty difficult but learn about utilizing hidden and tailwind css to hide certain ui elements on certain devices.
Abi vault - Devlog 4 This Section was mainly about adding cool effects with Tailwind CSS and refining the UI further. I also used Figma to design the card and saved it as an SVG. Figma This was quite simple and fast. I used references from cards like the ones Klarna uses and designed the card from there. To give it a more metallic look, I used a linear gradient with three stops at a certain angle. The problem was that I worked in the Figma app instead of the browser, and the browser connection kept disconnecting and reconnecting. so i coudlnt track hackatime for it/ Cards The cards are combined with SVG and TSX. The SVG is responsible for the background, including the gradient, border, and rounded corners. The card text is rendered separately in TSX and positioned above the SVG using a layered container. This allows the account name, number, card holder, expiry date, and color to change dynamically. Visual effect The visual effects include a subtle 3D tilt that reacts to the mouse position. The code calculates the mouse position relative to the card and converts it into tilt values for the X and Y axes. These values are saved as CSS variables and used by rotateX() and rotateY() . const relativeX = ( event . clientX - bounds . left ) / bounds . width ; const relativeY = ( event . clientY - bounds . top ) / bounds . height ; const rotateX = ( 0.5 - relativeY ) * 8 ; const rotateY = ( relativeX - 0.5 ) * 8 ; event . currentTarget . style . setProperty ( " --tilt-x " , ` ${ rotateX } deg` ); event . currentTarget . style . setProperty ( " --tilt-y " , ` ${ rotateY } deg` ); When the mouse leaves, the card resets to 0deg . It also has a diagonal light-sweep animation and slightly lifts on hover. The white card uses a separate metallic gradient and darker shine. Card Logic Cards are stored in React state, and cardIndex controls which card is visible. The modals allow cards to be added, edited, or deleted. Currently, cards reset after refreshing and will later be saved in a database connected to the Clerk user or class. Results Iam pretty proud of myself of the result though I did have to use AI for how to create the Card logic so the text is interactive at first I thought about redrawing the SVG everytime as i did sth smiliar in my README but that didnt make sense, so i asked AI as for the darkmode i needed to watch some tuts and for the same for the tilt and a bit of AI for it
Abi Vault - Devlog 5 This section was mainly about refining the UI further and fixing some bugs regarding the CSS and how the website look on the phone. Dark Mode I had some bugs with the dark mode becuase as you could see in the video of the last devlog the Clerk system wasnt adjustet as i forgot it. This took quite some while to sync it to ts and css variable but with some AI it was possible. Phone UI This was hell i genuinly couldnt manage fixing the Phone UI and even then i had to change so many different things because the phone ui is just different entirely and you need to hide so many differnt aspects and even replace symbols the most challenging part was reanging the dashboard so it really fits into a phone overview and after getting stuck for 30 minutes i just decided to ask AI and let it expain what was wrong Card customisatzion modal Also worked on the card customisation model cleaning up Ui and implementing restriction like max character limits, dates that arent expired and etc Results pretty uncessful session and didnt code much by hand because it was so difficult also the progress is way to slow so iam going to pick up the pace to atleas have an beta ready at the end of august which is usable.
Abi Vault - Devlog 6 This section was mainly about cleaning up the UI, making the different pages more synchron and creating a more structured UI system for the whole website. UI System I worked on making the design more consistent across the dashboard, transactions and receipts page. Before that many aspects were styled slightly different like the spacing, typography, buttons, dropdowns and card sizes. I started creating shared rules and components so the pages follow the same visual identity and feel more connected. Transactions and Receipts I created and implemented the full transactions page with filters, a filter modal, pagination, placeholder transactions and a structured transaction table. I also created the receipts page with placeholder receipts, status filters, pagination and a modal for adding new receipts. Both pages use the existing Abi Vault sidebar, topbar, colors and general design language. Dashboard Cleanup I added more placeholder transactions to the dashboard so the transaction history feels more complete and does not leave as much empty space. I also added another spending category and adjusted the review section so the right side feels more balanced with the transaction history on the left. 1920px and 2560px A big part of this session was cleaning up the layout for both 1920px and 2560px screens. The layouts looked very different depending on the screen size because of adaptive heights and spacing. I adjusted the cards, rows, table containers and page spacing so the website stays inside the viewport and does not become scrollable on the supported resolutions. The 2560px version was especially difficult because there was a lot of empty space, but simply scaling everything up did not look good. Instead I had to create separate wide-screen adjustments, add more rows and balance the different cards while keeping the 1920px layout unchanged. Results This was a productive session but also quite difficult because many small CSS changes affected multiple pages. The UI now feels much more consistent and the Transactions and Receipts pages are much closer to the final design. I still need to refine some spacing differences between the pages and test everything more carefully, but the main structure is now in place and the beta version is getting closer. For anyone wondering about the phone UI I havent touched it in a while and decided to just create it at the end because its such a hedache
Abi Vault - Devlog 7 This section was mainly about adding all other pages creating a fully nice looking functionial phone UI and just cleaning up the UI in general. Pages I created the rest of the pages and created place holders for them and now a whole system is in place the only thing left is writing real logic and conecting it to a server to get user auth. Phone UI This was the biggest phase of this Project i first started with scraping our already existing phone UI and started gathering references I decided to use klarna as they got quite the clean UI. I first started with adding the sidebar to the bottom to make it easier accsessible. I also needed quite A long time to make the UI look clean with adding animation for the modals and making them appear from underneath and not spawn in the middle of the screen Next Steps Now that the UI is kinda finished and school starts in 1 week the next step is creating a fully functional backend syncing the application with superbase and other services so I have a first working demo which I can continue working on during the school year.
Abi Vault - Devlog 8 This phase was mainly about the backend which i have to confess i had to use AI for as it was complicated with supabase clerk and just rotuing everything together. Failed bank API My plan was to allow the use of real bank cards and getting all their information through a bank API, but i missed sth important either you handle all bank apis from all providers yourself or you get a service to do it. The problem is there is no free Opensource service which allows for this and to keep it a buck iam broke asf. So i scraped the Idea and made it only ledger based which means it gets calucalted automatically but you have to write down all transactions and etc. SupaBase This was quite hard as Supabase is hella confusing prob one of the most confusing UI i have ever seen but after some back and forth with the Ai i was able to set it up though i still need to learn a bit as I really didnt undestand what i did there. Clerk this was quite easy clerk really allows for easy synchronisation and it was quite easy to set up the 3 classes admin, supervisor, and student I also made it so the software is request only for the moment so i can send a request with a certain authorisatzion and the User creates their account. But will probally change that soon Next Steps I will probally either get a domain grant or just buy it from my own money and prepare to launch the website over nest. Its nearly finished and the onlz fixes are small UI mismatches, better animation adding things like skelleton loaders and etc.
Abi Vault - Devlog 9 This phase was mostly about moving everything from development to production, using the actual domain, finalising the system, rewriting a bit of the structure and fixing bugs. UI So I finalised the iPad UI and added multiple simple spinner animations and slide-in animations. I also worked a bit more on the blank states, what the placeholder text should say and how everything should look. Right now I am still in the process of finalising the phone UI, as the blank states fucked it up a bit. Logic I rewrote 2 large sections. As I realised in the last devlog that I couldn’t use a bank API, I needed to rewrite the logic of how the platform worked. I decided to keep the cards and make them a visual representation of the physical cash. I also decided to fully transition the system to being ledger-based, which was pretty obvious since we now don’t have an API. For anybody asking, ledger-based basically just means that the system calculates the balances and tracks how everything is performing based on the values that users manually enter. i also decided to create an invite system link so people cant just signup if they somehow find the software and it only works by getting a link from the Admin. For the Supervisor role its a 30 day link for up to 30 people and for admin its a onetime link for up to 7 days and 1 user. Domain I also decided to buy a domain, which I originally didn’t want to do as I thought Vercel was all I needed. However, Clerk required a custom domain so I could move everything from development to production. Also, for anybody asking, I will not reveal the name of the domain as this is a closed platform. That’s also why I made it as badly SEO-optimised as possible in the metadata. And for anybody wondering, this domain cost me A WHOLE $0.07 a month. Quite expensive if you ask me. Clerk Clerk was quite the hassle because, as mentioned before, my plan was to just use Vercel, but Clerk essentially forced a custom domain onto me. Another thing I didn’t know was that under my student plan I was only allowed 2 roles and wasn’t able to add another custom one. This became a bottleneck as I originally had 3 roles in mind: Student Admin Supervisor In the end I decided to scrap Admin and make it only Student and Supervisor. Supabase This part was quite simple as most of it was already finished. I mainly needed to work on the role permissions and also add a caching system because I noticed that some pages would load for 1–2 seconds every time. That’s just bad UX, especially when it happens even during a simple tab switch. The caching system now keeps already-loaded data available where possible instead of unnecessarily fetching everything again. Next Steps The next steps is now creating a demo version and a better opensoure version so people can use my software without depending on my vercel, supabase and etc. Or maybe I will host another workspace of this exact software for hackclub so people can try it what would be your advise for that?
Abi Vault - Devlog 10 This phase was just about creating a demo website for the stardance people. Creating One new tab and cleaning up the final UI. Finish I finished with fully creating the full application privatly and fixing all bugs Ui and backend and also created one new tab which was interseting. Stardance Demo I made a second copy of my repo removed all clerk dependecies translated all the text from german into english and setup a second Supabase and vercel project this will be used without loging which allows for everybody to use and test it. Next Steps creating the readme, cleaning up a bit and its ready for ship
Abi Valut - Last Devlog This phase about cleaning UI elements changing the language of the whole demo website to english and fully preparing it for the offical stardance submission as the offical private one was alredy online for a good while and had near to 0 bugs. Cards This isnt a feature newly added but I just wanted to mention that our system in theory supports cards through gocardless but that isnt setup so its not usable at the moment though the backend exists and for a while even Ui existed but I have removed that. Translation This wasnt so hard just pretty time consuming going over everything and translating every single text. Refelection Pretty proud of myself as I managed to push out a full working apllication of course this isnt 100% selfcoded for example backend features but it is more then fine for what I was aiming to do and It works perfectly. Trying out here is a link to the demo for everybody wanting to try it out. https://abi-vault-demo.vercel.app/
Ships:
AbiVault AbiVault is a finance management web app built with Next.js, TypeScript, Tailwind CSS, Supabase, and Clerk . I built it because my school needed a better way to manage the money around our Abitur. Students organize things like the Abiball, parties, fundraising, and merchandise themselves, which means we also have to keep track of income, expenses, budgets, and the current balance. AbiVault is mainly made for Abitur committees and student finance teams . It gives multiple students access to the same financial data and makes it easier to keep everything organized without relying on several spreadsheets, documents, and group chats. Features Track income and expenses Manage transactions and categories View the current balance Create and manage budgets Support multiple users View simple financial statistics Tech Stack Next.js TypeScript Tailwind CSS Supabase for the database and backend Clerk for authentication and user management The main goal is to make managing Abitur finances simpler, more organized, and more transparent for everyone involved....
|
1793339751.3453062
|
1793426151.3453062
|
|
43935
|
algorithm visualiser by @shouryasharan27 | Stardan algorithm visualiser by @shouryasharan27 | Stardance...
|
shouryasharan27
|
1
|
1.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-04T18:07:22Z", "hours": 1.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Algorithm Visualizer Suite Visualizers Pathfinding Dijkstra’s Algorithm — weighted shortest path A Search* — heuristic-guided pathfinding BFS — unweighted shortest path DFS — exhaustive search Draw walls by clicking/dragging on the grid Sorting Bubble Sort — O(n²) with pairwise comparisons Quick Sort — divide and conquer with pivot visualization Merge Sort — divide and merge with overwrite animation Neural Network Forward Pass Visualization — watch activations propagate through layers Xavier-initialized weights, sigmoid activations Real-time value display on each neuron 🛠️ Tech Stack React 18 + Vite React Router (tab navigation) HTML5 Canvas (neural net rendering) Pure JavaScript algorithms (no libraries) 🧠 What I Learned Implementing A* from scratch taught me why the heuristic must be admissible (never overestimate). I initially used Euclidean distance and noticed suboptimal paths on grid graphs — switching to Manhattan distance fixed it because it exactly matches the 4-directional movement cost.", "repo": "https://github.com/shouryasharan7-netizen/algorithm-visualizer", "demo": "https://algorithm-visualizer-seven-eosin.vercel.app"}]...
|
[{"post_id": 40885, "ts": "202 [{"post_id": 40885, "ts": "2026-08-04T18:05:29Z", "hours": 1.4881, "text": "WHAT BASICALLY THIS LOOKS LIKE"}]...
|
Title: algorithm visualiser by @shouryasharan27 | Title: algorithm visualiser by @shouryasharan27 | Stardance
Devlogs:
WHAT BASICALLY THIS LOOKS LIKE
Ships:
Algorithm Visualizer Suite Visualizers Pathfinding Dijkstra’s Algorithm — weighted shortest path A Search* — heuristic-guided pathfinding BFS — unweighted shortest path DFS — exhaustive search Draw walls by clicking/dragging on the grid Sorting Bubble Sort — O(n²) with pairwise comparisons Quick Sort — divide and conquer with pivot visualization Merge Sort — divide and merge with overwrite animation Neural Network Forward Pass Visualization — watch activations propagate through layers Xavier-initialized weights, sigmoid activations Real-time value display on each neuron 🛠️ Tech Stack React 18 + Vite React Router (tab navigation) HTML5 Canvas (neural net rendering) Pure JavaScript algorithms (no libraries) 🧠 What I Learned Implementing A* from scratch taught me why the heuristic must be admissible (never overestimate). I initially used Euclidean distance and noticed suboptimal paths on grid graphs — switching to Manhattan distance fixed it because it exactly matches the 4-directional movement cost....
|
1793562733.4274094
|
1793649133.4274094
|
|
43937
|
space exploration by @pranavvpatil | Stardance
|
pranavvpatil
|
1
|
2.0
|
2
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-04T18:25:03Z", "hours": 2.0, "multiplier": 1.01, "payout": 2, "blessing": "neutral", "text": "i made this whole site i learnt html found beautiful images about space and uploaded it on the site check it out about my opinion on the space", "repo": "https://github.com/pranav-patil-don/Black-Hole", "demo": "https://pranav-patil-don.github.io/Black-Hole/"}]...
|
[{"post_id": 40895, "ts": "202 [{"post_id": 40895, "ts": "2026-08-04T18:22:11Z", "hours": 1.5958, "text": "a detailed site about black holes"}]...
|
Title: space exploration by @pranavvpatil | Starda Title: space exploration by @pranavvpatil | Stardance
Devlogs:
a detailed site about black holes
Ships:
i made this whole site i learnt html found beautiful images about space and uploaded it on the site check it out about my opinion on the space...
|
1793562738.1567616
|
1793649138.1567616
|
|
43939
|
Weather App by @M-Ibrahim | Stardance
|
M-Ibrahim
|
1
|
3.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-04T18:38:08Z", "hours": 3.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "A weather app created on Weather app and is created by JS , HTML anf CSS", "repo": "https://github.com/Ibrahim-Khudadad/weather-app", "demo": "https://ibrahim-khudadad.github.io/weather-app/"}]...
|
[{"post_id": 40893, "ts": "202 [{"post_id": 40893, "ts": "2026-08-04T18:15:28Z", "hours": 3.3836, "text": "Created entire Weather app"}]...
|
Title: Weather App by @M-Ibrahim | Stardance
Devl Title: Weather App by @M-Ibrahim | Stardance
Devlogs:
Created entire Weather app
Ships:
A weather app created on Weather app and is created by JS , HTML anf CSS...
|
1792882057.6937592
|
1793746057.6937592
|
|
43941
|
MY GOAT WEBSITE by @shouryasharan27 | Stardance
|
shouryasharan27
|
1
|
66.56
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-06T17:54:46Z", "hours": 10.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "my own portfolio website", "repo": "https://github.com/shouryasharan7-netizen/shourya-portfolio", "demo": "https://www.shouryasharan.xyz"}]...
|
[{"post_id": 82011, "ts": "202 [{"post_id": 82011, "ts": "2026-10-23T13:19:36Z", "hours": 14.2069, "text": "I completely changed the whole thing now. Every word is now authentic and me and I finally can say its me afterall. And yeah tbh I took a lot of time debugging issues"}, {"post_id": 74428, "ts": "2026-09-27T11:16:59Z", "hours": 16.81, "text": "i completely revamped the website"}, {"post_id": 69133, "ts": "2026-09-16T13:24:23Z", "hours": 25.5425, "text": "hi changed over the overall design"}, {"post_id": 41849, "ts": "2026-08-06T10:04:07Z", "hours": 9.7272, "text": "I made a website showcasing everything I have done like achievements, work experience etc"}]...
|
Title: MY GOAT WEBSITE by @shouryasharan27 | Stard Title: MY GOAT WEBSITE by @shouryasharan27 | Stardance
Devlogs:
I made a website showcasing everything I have done like achievements, work experience etc
hi changed over the overall design
i completely revamped the website
I completely changed the whole thing now. Every word is now authentic and me and I finally can say its me afterall. And yeah tbh I took a lot of time debugging issues
Ships:
my own portfolio website...
|
1793562753.6391332
|
1793649153.6391332
|
|
43947
|
scout by @ingvard | Stardance
|
ingvard
|
1
|
13.0
|
164
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-18T21:36:20Z", "hours": 13.0, "multiplier": 12.89, "payout": 164, "blessing": "neutral", "text": "Scout is a program that analyzes files by doing pattern matching of strings in the file with strings defined by the user, and doing entropy analysis on all strings to find low and high entropy strings. Its primary use case is reverse engineering and forensics CTF challenges. Things i found difficult were getting the taylor series right in the mathyy library. If i had too few iterations the result would be innacurate for high numbers, but if it had to many iterations it would overflow to infinity. Reading the patterns from the user was also difficult, as it was my first time using the cJSON library, and i had problems with memmory leaks for a while. If you’re planning on using it, make sure to read the readme, especially the Usage section, and dont forget that the config file must be in the working directory. I was going to publish this to the AUR, but to create an account with their gitlab, you have to send an email to the maintainers, and they have not gotten back to me on that. Will update when its availible. In the meantime follow the installation instructions in the readme.", "repo": "https://github.com/hyphen-hyphen-hyphen-hyphen/scout", "demo": "https://github.com/hyphen-hyphen-hyphen-hyphen/scout/releases"}]...
|
[{"post_id": 49209, "ts": "202 [{"post_id": 49209, "ts": "2026-08-17T21:20:56Z", "hours": 0.6981, "text": "More finishing touches. I have added: Install script Install section in README A PKGBUILD file (am planning on publishing to AUR) No real issues this time around, everything mostly worked first (or second) try."}, {"post_id": 49119, "ts": "2026-08-17T19:02:08Z", "hours": 1.7019, "text": "Unfortunately there are no new features, but, i have managed to remove all memory leaks and (almost all) segfaults, as well as (tried to) prevent command injection. some things ive done are: Removed command injection through filename Even though it would technically still be possible, i have blocked it heavily and i can not provide any examples of it, as i have not managed to exploit it. No more errors, warnings or memory leaks! Valgrind doesn’t complain anymore. Using the --help flag no longer messes everything up No segfault if there isn’t a second argument This wasnt a super smooth process, as you can se in the screenshot i managed to make it even worse while trying to fix it, but i eventually figured it out."}, {"post_id": 48399, "ts": "2026-08-16T18:47:21Z", "hours": 2.9214, "text": "Scout now has a readme and a security policy(SECURITY.md). Along with that scout now also has these additional features: (Shannon)Entropy calculation Automatic extraction of high and low entropy strings The --report flag automatically generates a comprehensive malware analysis report and prints it to the terminal. There is now a --help flag, but it is very unstable at the moment, and the help message is, not very helpful Scout is now gcc only. Compiling with other compilers will not work due to certain GNU extensions used in the code. The new tokenize function has a memory leak for every token it generates, but fixing that would mean having to figure out where to put the free() calls. The program also segfaults if the second argument is blank."}, {"post_id": 47066, "ts": "2026-08-14T18:05:36Z", "hours": 3.3597, "text": "Some of the things ive done since the last devlog are: refactoring the code moved some functions to separate module mathyy read json files and use for pattern matching(no more hard-coded patterns) Taylor series to approximate e and the natural logarithm simpler math implementations like factorials and powers New lnsha feature, calculates the natural log of the sha256 hash of the prorgam(completely useless) The taylor series were quite problematic, as the more iterations i had, the higher the values in the factorial and power functions got, so sometimes they would overflow to infinity based on the start value, so i had to find a middle ground where the risc of overflowing was low, but it still had resonable precision. Especially for the natural log, which for higher numbers basically just returns a constant of about 10.48. Ive also discovered some memmory leaks through valgrind, but as i discovered, fixing them breaks everything else, and i dont have the energy to fix it, so i left a comment and moved on"}, {"post_id": 44245, "ts": "2026-08-09T21:28:27Z", "hours": 1.7197, "text": "Scout can now read and parse json files(with the library cjson) and it also now contains a function that returns other functions! Why cJSON? It was easily availible with my package manager, and it looked the simplest out of all the json libraries. how does higher-order functions benefit this project? It dosent, the code is definitely less readable aand its completely unnecessary, but its fun! While implementing this, i have started beef with gcc, as you can see in the attached screenshot, i have absolutely no idea what its talking about or what i did wrong and im pretty certain the compiler had a stroke, but i switched to clang for a while and when i switched back it was working again. As far as ive checked, the code is valid C, it compiled perfectly with clang, so i have no idea what happend, maybe gcc uses another C standard, or thers some weird macro in cjson that fucks things up. The json reading will be used for pattern matching in the file with the patterns in the json file (similar to YARA, but simpler)."}, {"post_id": 41439, "ts": "2026-08-05T17:31:01Z", "hours": 2.3297, "text": "Scout is a CTF tool written in C that does quick analysis on files, mainly for reverse engineering and forensics CTF:s. It’s designed to be the first thing you run on a file, and it gives basic information like any potential flags and any interesting strings in the file. So far the program is able to run strings on a file, and extract potential flags and interesting strings. In the attached screenshot you can see it being run on a file called “chall”, and then underneath the contents of that file are printed out."}]...
|
Title: scout by @ingvard | Stardance
Devlogs:
Sco Title: scout by @ingvard | Stardance
Devlogs:
Scout is a CTF tool written in C that does quick analysis on files, mainly for reverse engineering and forensics CTF:s. It’s designed to be the first thing you run on a file, and it gives basic information like any potential flags and any interesting strings in the file. So far the program is able to run strings on a file, and extract potential flags and interesting strings. In the attached screenshot you can see it being run on a file called “chall”, and then underneath the contents of that file are printed out.
Scout can now read and parse json files(with the library cjson) and it also now contains a function that returns other functions! Why cJSON? It was easily availible with my package manager, and it looked the simplest out of all the json libraries. how does higher-order functions benefit this project? It dosent, the code is definitely less readable aand its completely unnecessary, but its fun! While implementing this, i have started beef with gcc, as you can see in the attached screenshot, i have absolutely no idea what its talking about or what i did wrong and im pretty certain the compiler had a stroke, but i switched to clang for a while and when i switched back it was working again. As far as ive checked, the code is valid C, it compiled perfectly with clang, so i have no idea what happend, maybe gcc uses another C standard, or thers some weird macro in cjson that fucks things up. The json reading will be used for pattern matching in the file with the patterns in the json file (similar to YARA, but simpler).
Some of the things ive done since the last devlog are: refactoring the code moved some functions to separate module mathyy read json files and use for pattern matching(no more hard-coded patterns) Taylor series to approximate e and the natural logarithm simpler math implementations like factorials and powers New lnsha feature, calculates the natural log of the sha256 hash of the prorgam(completely useless) The taylor series were quite problematic, as the more iterations i had, the higher the values in the factorial and power functions got, so sometimes they would overflow to infinity based on the start value, so i had to find a middle ground where the risc of overflowing was low, but it still had resonable precision. Especially for the natural log, which for higher numbers basically just returns a constant of about 10.48. Ive also discovered some memmory leaks through valgrind, but as i discovered, fixing them breaks everything else, and i dont have the energy to fix it, so i left a comment and moved on
Scout now has a readme and a security policy(SECURITY.md). Along with that scout now also has these additional features: (Shannon)Entropy calculation Automatic extraction of high and low entropy strings The --report flag automatically generates a comprehensive malware analysis report and prints it to the terminal. There is now a --help flag, but it is very unstable at the moment, and the help message is, not very helpful Scout is now gcc only. Compiling with other compilers will not work due to certain GNU extensions used in the code. The new tokenize function has a memory leak for every token it generates, but fixing that would mean having to figure out where to put the free() calls. The program also segfaults if the second argument is blank.
Unfortunately there are no new features, but, i have managed to remove all memory leaks and (almost all) segfaults, as well as (tried to) prevent command injection. some things ive done are: Removed command injection through filename Even though it would technically still be possible, i have blocked it heavily and i can not provide any examples of it, as i have not managed to exploit it. No more errors, warnings or memory leaks! Valgrind doesn’t complain anymore. Using the --help flag no longer messes everything up No segfault if there isn’t a second argument This wasnt a super smooth process, as you can se in the screenshot i managed to make it even worse while trying to fix it, but i eventually figured it out.
More finishing touches. I have added: Install script Install section in README A PKGBUILD file (am planning on publishing to AUR) No real issues this time around, everything mostly worked first (or second) try.
Ships:
Scout is a program that analyzes files by doing pattern matching of strings in the file with strings defined by the user, and doing entropy analysis on all strings to find low and high entropy strings. Its primary use case is reverse engineering and forensics CTF challenges. Things i found difficult were getting the taylor series right in the mathyy library. If i had too few iterations the result would be innacurate for high numbers, but if it had to many iterations it would overflow to infinity. Reading the patterns from the user was also difficult, as it was my first time using the cJSON library, and i had problems with memmory leaks for a while. If you’re planning on using it, make sure to read the readme, especially the Usage section, and dont forget that the config file must be in the working directory. I was going to publish this to the AUR, but to create an account with their gitlab, you have to send an email to the maintainers, and they have not gotten back to me on that. Will update when its availible. In the meantime follow the installation instructions in the readme....
|
1793487097.1709704
|
1793573497.1709704
|
|
43963
|
Shark-code by @Praknoor | Stardance
|
Praknoor
|
1
|
15.59
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-22T20:07:18Z", "hours": 15.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "so gng this is v1 of my agent, it was fun making my own cli, but dw more updates will come… rn it has some bugs, if u find them pls forgive me 😭😭, id appreciate if u report them to me……… but yeah this is the base 🦈🦈🦈🦈🦈", "repo": "https://github.com/GurnoorLog/Shark_code", "demo": "https://github.com/GurnoorLog/Shark_code/releases/tag/v1.0.0"}]...
|
[{"post_id": 54092, "ts": "202 [{"post_id": 54092, "ts": "2026-08-24T21:37:33Z", "hours": 0.5867, "text": "yoo just gave the tui more cleaner look,,,,,,,improved the agent, and made the agent working on all system so u can now try it also on mac or linux"}, {"post_id": 52599, "ts": "2026-08-22T20:04:32Z", "hours": 0.9119, "text": "yoo gng made improvments in the agent and improved the tui"}, {"post_id": 45417, "ts": "2026-08-11T20:58:51Z", "hours": 2.2522, "text": "gng .. i made this logo, i mean it’s only a base but yeah……..also made the agent more smarter and other stuff 🤣🤣😭😭"}, {"post_id": 41915, "ts": "2026-08-06T13:05:09Z", "hours": 2.1261, "text": "gng i have just added some more animations, and added tool calling, rn it’s wrking as a normal coding agent, but it still needs some polishing …. it can aslo tool call manage ure folders, create stuff just like opencode, or any other cli agent🦈🦈🦈🦈🦈🦈….stay tuned for more…. my next step is to create a discord server, where u will betatest it and yeah..pls follow me ✌️✌️"}, {"post_id": 41239, "ts": "2026-08-05T10:07:05Z", "hours": 1.0139, "text": "yoo gng just added thebackground bubbles, it’s still no good but slowly is becoming an agent 🦈🦈🦈🦈😭😭"}, {"post_id": 41199, "ts": "2026-08-05T08:37:36Z", "hours": 8.7778, "text": "yoo gng just made this tui, called it shark-code 🤣🦈🦈"}]...
|
Title: Shark-code by @Praknoor | Stardance
Devlog Title: Shark-code by @Praknoor | Stardance
Devlogs:
yoo gng just made this tui, called it shark-code 🤣🦈🦈
yoo gng just added thebackground bubbles, it’s still no good but slowly is becoming an agent 🦈🦈🦈🦈😭😭
gng i have just added some more animations, and added tool calling, rn it’s wrking as a normal coding agent, but it still needs some polishing …. it can aslo tool call manage ure folders, create stuff just like opencode, or any other cli agent🦈🦈🦈🦈🦈🦈….stay tuned for more…. my next step is to create a discord server, where u will betatest it and yeah..pls follow me ✌️✌️
gng .. i made this logo, i mean it’s only a base but yeah……..also made the agent more smarter and other stuff 🤣🤣😭😭
yoo gng made improvments in the agent and improved the tui
yoo just gave the tui more cleaner look,,,,,,,improved the agent, and made the agent working on all system so u can now try it also on mac or linux
Ships:
so gng this is v1 of my agent, it was fun making my own cli, but dw more updates will come… rn it has some bugs, if u find them pls forgive me 😭😭, id appreciate if u report them to me……… but yeah this is the base 🦈🦈🦈🦈🦈...
|
1793490671.8564367
|
1793577071.8564367
|
|
43968
|
Stardance Motor Fault Detector by @AliT | Stardanc Stardance Motor Fault Detector by @AliT | Stardance...
|
AliT
|
1
|
0.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-25T21:08:51Z", "hours": 0.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a motor fault detector, there is an MPU 6050 accelerometer attached to a breaboard that is attached to a USB fan, and it feels the vibration which goes into a model that i trained in Edge Impulse and the model tells you whether it is faulty or healthy when the fan is turned on. To create a fault i put a blob of blu-tack tape on a blade which would cause the balance of the fan to be thrown off and cause a change in vibration, which would be catched by the model in around a second. also the Arduino’s LED lights up like an alarm when it goes faulty too. The challenge i had is getting my model hit 100% accuracy and i also spent some time trying to use an ultrasonic radar from the HCSR04 but i realized it only sample like 25 hertz while the fan actually span at 37.5 hertz which left me with fully focusing with my accelerometer and also Edge Impulse CLI could not be properly installed on my windows ARM so i ended up doing everything through the browser instead and i am proud that it runs live and is fast, 200 samples per second over serial and the inference in 0.3 milliseconds which is all in a browser without a CLI or a compiler. I also found out my fan’s rpm is 2250 without measuring it, the spectrum got it, you can test it here without any hardware needed by using the demo feature “Run demo” as it replays my real recordings through the real model in alternating blocks so you can watch the verdict flip between healthy and faulty but if you do have an Arduino UNO and a MPU 6050, wire it up and give it a try!", "repo": "https://github.com/alioramuss/stardance-motor-fault-detector", "demo": ""}]...
|
[{"post_id": 54748, "ts": "202 [{"post_id": 54748, "ts": "2026-08-25T20:48:20Z", "hours": 0.3256, "text": "Ok so it’s done! There’s an accelerometer taped to a little USB fan (yes, tape I know) and it feels the fan vibrating. That gets fed into a model I trained, and the model tells you if the fan is running fine or if something’s wrong with it. The way I make it “broken” is I stick a bit of blu-tack on one of the blades and it throws the fan off balance and the whole thing shakes differently. The model catches it in about a second and flips to FAULTY. I also made the Arduino’s LED light up when that happens so there’s an actual physical alarm, which is makes it better. Arduino sends 200 readings a second down the USB cable, the model runs in the browser, takes about 0.3ms. The dashboard shows the wave, a live frequency spectrum, and how confident it is also one fun thing I found: the fan spins at 37.5 Hz, so about 2250 rpm. check the video at last image slide or check more of it in my github: https://alioramuss.github.io/stardance-motor-fault-detector/"}, {"post_id": 51725, "ts": "2026-08-21T15:39:57Z", "hours": 6.8014, "text": "Video of it working. The fan runs normally and it says HEALTHY, then I stick a weight on one of the blades and it flips to FAULT. Second clip is the same thing again. Then I mess about tapping the sensor to see what it does. How it works: there’s an accelerometer taped to a USB fan, wired up to an Arduino. The Arduino reads it 200 times a second and sends the numbers to my laptop. It doesn’t do the thinking itself, it’s only got 2 KB of RAM so there’s no room. I recorded a minute of the fan running fine and a minute with a weight on it, chopped those into 5 second bits, and trained a model in Edge Impulse. It looks at a second of data at a time and decides from the frequencies. First go it got 64.7% and just called everything faulty. Turns out I hadn’t normalized the features. Some were tiny numbers, some were in the thousands, so it couldn’t learn properly. Fixed that and it went to 100%. Now it runs in a browser tab and reads the Arduino live. Takes 0.3 ms to classify. There’s a graph that shows the fan’s spin as a spike at 37.5 Hz, which is about 2250 rpm. Also got an LED on the board that lights up when it finds a fault Being honest, that 100% is a bit flattering. Both recordings came from one session so it’s only ever seen this fan on one afternoon. And it only knows two things, so when I tap it there’s no option for “that’s something else”. It has to say healthy or faulty. Next job is recording loads of separate sessions and adding a fan off class. You can try it yourself, no hardware needed: https://alioramuss.github.io/stardance-motor-fault-detector/ I hope you guys like it"}, {"post_id": 51330, "ts": "2026-08-20T22:37:58Z", "hours": 4.0678, "text": "Added a live FFT graph to the dashboard today. You can watch the fan’s spin show up as a spike at 37.5 Hz, which is about 2250 rpm. Kind of cool that I measured my fan’s speed with an accelerometer. Also made the Arduino’s LED light up when it spots a fault, so it’s not just on the screen. And added a slider for how sensitive it is, because it kept flipping between healthy and faulty when it wasn’t sure"}, {"post_id": 50162, "ts": "2026-08-19T08:32:19Z", "hours": 1.9342, "text": "Got and soldered the MPU-6050 accelerometer and wiring was done, most of the two hours was setting it up and installing Node.js and had to resolve issues with an ARM64 and as it did not have a C++ compiler, so i am using PowerShell right now"}, {"post_id": 47145, "ts": "2026-08-14T20:28:22Z", "hours": 0.3017, "text": "Hello, as my first devlog i want to say that my parts have arrived except the sensor, I used Arduino UNO to first test out the LED and counts over serial and i have attached a tape on my fan to represent it as a fauly motor, as it would cause an increase in vibrations"}]...
|
Title: Stardance Motor Fault Detector by @AliT | S Title: Stardance Motor Fault Detector by @AliT | Stardance
Devlogs:
Hello, as my first devlog i want to say that my parts have arrived except the sensor, I used Arduino UNO to first test out the LED and counts over serial and i have attached a tape on my fan to represent it as a fauly motor, as it would cause an increase in vibrations
Got and soldered the MPU-6050 accelerometer and wiring was done, most of the two hours was setting it up and installing Node.js and had to resolve issues with an ARM64 and as it did not have a C++ compiler, so i am using PowerShell right now
Added a live FFT graph to the dashboard today. You can watch the fan’s spin show up as a spike at 37.5 Hz, which is about 2250 rpm. Kind of cool that I measured my fan’s speed with an accelerometer. Also made the Arduino’s LED light up when it spots a fault, so it’s not just on the screen. And added a slider for how sensitive it is, because it kept flipping between healthy and faulty when it wasn’t sure
Video of it working. The fan runs normally and it says HEALTHY, then I stick a weight on one of the blades and it flips to FAULT. Second clip is the same thing again. Then I mess about tapping the sensor to see what it does. How it works: there’s an accelerometer taped to a USB fan, wired up to an Arduino. The Arduino reads it 200 times a second and sends the numbers to my laptop. It doesn’t do the thinking itself, it’s only got 2 KB of RAM so there’s no room. I recorded a minute of the fan running fine and a minute with a weight on it, chopped those into 5 second bits, and trained a model in Edge Impulse. It looks at a second of data at a time and decides from the frequencies. First go it got 64.7% and just called everything faulty. Turns out I hadn’t normalized the features. Some were tiny numbers, some were in the thousands, so it couldn’t learn properly. Fixed that and it went to 100%. Now it runs in a browser tab and reads the Arduino live. Takes 0.3 ms to classify. There’s a graph that shows the fan’s spin as a spike at 37.5 Hz, which is about 2250 rpm. Also got an LED on the board that lights up when it finds a fault Being honest, that 100% is a bit flattering. Both recordings came from one session so it’s only ever seen this fan on one afternoon. And it only knows two things, so when I tap it there’s no option for “that’s something else”. It has to say healthy or faulty. Next job is recording loads of separate sessions and adding a fan off class. You can try it yourself, no hardware needed: https://alioramuss.github.io/stardance-motor-fault-detector/ I hope you guys like it
Ok so it’s done! There’s an accelerometer taped to a little USB fan (yes, tape I know) and it feels the fan vibrating. That gets fed into a model I trained, and the model tells you if the fan is running fine or if something’s wrong with it. The way I make it “broken” is I stick a bit of blu-tack on one of the blades and it throws the fan off balance and the whole thing shakes differently. The model catches it in about a second and flips to FAULTY. I also made the Arduino’s LED light up when that happens so there’s an actual physical alarm, which is makes it better. Arduino sends 200 readings a second down the USB cable, the model runs in the browser, takes about 0.3ms. The dashboard shows the wave, a live frequency spectrum, and how confident it is also one fun thing I found: the fan spins at 37.5 Hz, so about 2250 rpm. check the video at last image slide or check more of it in my github: https://alioramuss.github.io/stardance-motor-fault-detector/
Ships:
I made a motor fault detector, there is an MPU 6050 accelerometer attached to a breaboard that is attached to a USB fan, and it feels the vibration which goes into a model that i trained in Edge Impulse and the model tells you whether it is faulty or healthy when the fan is turned on. To create a fault i put a blob of blu-tack tape on a blade which would cause the balance of the fan to be thrown off and cause a change in vibration, which would be catched by the model in around a second. also the Arduino’s LED lights up like an alarm when it goes faulty too. The challenge i had is getting my model hit 100% accuracy and i also spent some time trying to use an ultrasonic radar from the HCSR04 but i realized it only sample like 25 hertz while the fan actually span at 37.5 hertz which left me with fully focusing with my accelerometer and also Edge Impulse CLI could not be properly installed on my windows ARM so i ended up doing everything through the browser instead and i am proud that it runs live and is fast, 200 samples per second over serial and the inference in 0.3 milliseconds which is all in a browser without a CLI or a compiler. I also found out my fan’s rpm is 2250 without measuring it, the spectrum got it, you can test it here without any hardware needed by using the demo feature “Run demo” as it replays my real recordings through the real model in alternating blocks so you can watch the verdict flip between healthy and faulty but if you do have an Arduino UNO and a MPU 6050, wire it up and give it a try!...
|
1793566375.3483987
|
1793652775.3483987
|
|
43969
|
Smart Relocator ESP32 by @henilX0 | Stardance
|
henilX0
|
1
|
31.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-25T17:20:11Z", "hours": 31.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Building this ESP32-powered automated robot was an awesome ride—it uses a sweeping servo and ultrasonic sensor to scan the area, detects objects, and pulls off precise turns using MPU6050 IMU feedback alongside custom 3D-printed rack-and-pinion parts. The trickiest part wasn’t just the code, but figuring out KiCad from scratch to design a compact, clean custom circuit board schematic, all while wrestling with the tight wiring and power stability for the motors and sensors.", "repo": "https://github.com/HENILX0/ESP32_SMART_ROBOT-", "demo": ""}]...
|
[{"post_id": 66823, "ts": "202 [{"post_id": 66823, "ts": "2026-09-12T18:39:26Z", "hours": 3.5917, "text": "Just wrapped up designing and routing the custom dual-layer PCB for my ESP32 Smart Robot in KiCad!Took quite a bit of time to get all the pin mapping and trace routing clean without messy crossovers. Here’s what’s packed onto the board:ESP32 DevKit footprint & MPU6050 IMU connectorPin headers for motor driver, ultrasonic sensor, and dual servosPower circuitry with DPDT switch, filter capacitors, and status LEDsChecked everything in the 3D viewer and all the component clearances look clean. Next up: exporting Gerbers and getting this board fabricated!"}, {"post_id": 59854, "ts": "2026-09-01T20:34:45Z", "hours": 2.5875, "text": "Finally back on track after taking about a week off due to some medical/health reasons! Today, I finished designing the complete rack-and-pinion servo gripper in Onshape and integrated it into the full mobile robot assembly. The CAD model is now 100% complete, including the multi-tier chassis, ultrasonic sensor mount, motor driver, and gripper mechanism. Since all the CAD designs are ready, I really need 3D printing grant support/help now to get these physical parts printed so I can start assembling the hardware!"}, {"post_id": 54045, "ts": "2026-08-24T20:06:51Z", "hours": 0.4503, "text": "Redesigned the spur gear and rack profiles in Onshape to get a better tooth fit and pitch alignment. Spent time tweaking assembly mates and testing how the mechanism converts servo rotation into smooth linear movement for the gripper arms. Still fine-tuning, but getting closer to the final assembly!"}, {"post_id": 53245, "ts": "2026-08-23T18:06:05Z", "hours": 0.3, "text": "Spent time in Onshape experimenting with different gear profiles and rack designs for the gripper! Tested tooth counts and pitch alignments to figure out how to convert the servo’s rotation into smooth linear motion. Still tweaking the design, but getting closer!"}, {"post_id": 52650, "ts": "2026-08-22T21:51:45Z", "hours": 1.8875, "text": "Modeled the gripper base plate in Onshape with integrated guide rails and gear clearance for the servo horn. Also mounted the HC-SR04 ultrasonic sensor to the top deck! Still working on finishing the moving gripper arms, but the base structure and sensor placement are locked in."}, {"post_id": 51941, "ts": "2026-08-21T21:48:17Z", "hours": 1.2344, "text": "Designed a custom H-shaped bracket in Onshape to mount the SG90 gripper servo directly onto the front chassis. Integrated precise cutout & screw mounts, aligned everything, and successfully mated the part into the main robot assembly!"}, {"post_id": 51338, "ts": "2026-08-20T23:00:26Z", "hours": 2.6814, "text": "Worked super hard today to completely redesign the robot chassis from scratch in Onshape! My main goal was to optimize material usage, keep the structure lightweight, and make physical assembly as easy as possible.The best part about this new design is all the open space ,there’s so much room from every side now. Routing wires, tuning components, or swapping parts like the ESP32 and motor driver will be totally effortless. Spent hours fine-tuning the component placement and layout, and everything fits together perfectly now!"}, {"post_id": 50564, "ts": "2026-08-19T19:29:04Z", "hours": 0.7011, "text": "Designed a custom mounting bracket for the HC-SR04 ultrasonic sensor in Onshape today! Created the front casing to hold the sensor, added filleted edges for structural rigidity, and integrated a bottom mounting arm to attach it to the servo motor."}, {"post_id": 49794, "ts": "2026-08-18T18:48:37Z", "hours": 0.7506, "text": "Fine-tuned chassis dimensions in Onshape and modeled two structural components: designed a precision grid of internal screw bosses on the base plate for component mounting, and created a custom plate with filleted edges and corner screw holes."}, {"post_id": 49141, "ts": "2026-08-17T19:32:06Z", "hours": 0.9847, "text": "Updated the chassis dimensions in Onshape for better alignment! Also designed and mounted the bracket connecting the ultrasonic sensor to the SG90 servo motor."}, {"post_id": 48459, "ts": "2026-08-16T20:14:17Z", "hours": 2.0519, "text": "Designed the top cover plate for the robot chassis in Onshape today! Added a custom honeycomb mesh pattern for weight reduction, integrated an exact cutout for the SG90 servo motor, and added corner screw bosses to mount it securely to the chassis."}, {"post_id": 47721, "ts": "2026-08-15T20:23:24Z", "hours": 1.9272, "text": "Updated the robot chassis dimensions in Onshape today! Arranged 3D models for components (motors, wheels, battery holder, and electronics) inside the frame to verify fitment and component spacing. Will keep tweaking dimensions as physical assembly progresses."}, {"post_id": 47135, "ts": "2026-08-14T20:10:20Z", "hours": 0.4178, "text": "Worked on the robot chassis CAD design in Onshape today! Added a custom pattern and configured the motor mounting dimensions so everything fits properly."}, {"post_id": 46538, "ts": "2026-08-13T20:42:42Z", "hours": 0.8614, "text": "Fixed the MPU6050 power drop issue today by properly wiring it with the capacitor setup on the PCB. After fixing the power, started designing the initial robot chassis base in Onshape to fit all components!"}, {"post_id": 45953, "ts": "2026-08-12T19:30:18Z", "hours": 2.7806, "text": "Fixed a short circuit today by replacing a damaged capacitor. Got the MPU6050 setup fully working and tested it with code. Also started drafting the 8cm target logic for the servo and ultrasonic sensor,will code the full logic tomorrow!"}, {"post_id": 45333, "ts": "2026-08-11T18:35:33Z", "hours": 0.9825, "text": "Wired and soldered the buck converter power setup. Ran into a short circuit issue whenever the ESP32 was connected and spent the entire session testing voltages and debugging (still in progress)."}, {"post_id": 44786, "ts": "2026-08-10T19:58:42Z", "hours": 2.5739, "text": "Finished soldering and hardware connections for the MPU6050 sensor today! Added this sensor so the robot can measure precise turning angles to face target objects accurately. Next step is writing the code for it!"}, {"post_id": 44094, "ts": "2026-08-09T17:03:31Z", "hours": 0.4006, "text": "Updated the robot’s code in Arduino IDE today! Fixed a few compilation errors in the logic and tweaked some code settings so everything runs smoothly now. Next step is testing it live on the chassis!"}, {"post_id": 43403, "ts": "2026-08-08T16:59:41Z", "hours": 1.8772, "text": "Wrote some new code in Arduino IDE today and wired up the ultrasonic sensor! I set the motor speed to 50% so it moves slow and doesn’t crash while testing. Right now, I’ve added a simple logic where as soon as the sensor detects an object in front, the robot moves towards it. Step by step getting it to work!"}, {"post_id": 43084, "ts": "2026-08-08T05:11:05Z", "hours": 1.6028, "text": "Finally built the first working prototype today! I mounted the ESP32, motor driver, and BO motors onto a temporary MDF board chassis to check wiring and component balance.Wrote custom code in Arduino IDE to handle motor control, flashed it to the board, and successfully verified basic movement!Next steps:Integrate the ultrasonic sensor for obstacle avoidance.Connect the servo motor for the gripper mechanism."}, {"post_id": 42288, "ts": "2026-08-06T22:32:07Z", "hours": 0.3, "text": "Devlog #1: Hardware Soldering & Power Distribution SetupTime Spent: 4 Hours Project Concept & Autonomous Logic Building an autonomous ESP32 mobile robot that identifies, grips, and clears obstacle objects to open areas.- Search & Detection: Ultrasonic sensor continuously scans forward; halts and aligns when an object enters the 8cm threshold.- Gripping & Spatial Mapping: Servo gripper secures the object. A servo-mounted ultrasonic sensor rotates 0°–180° to calculate the vector with maximum open clearance.- Relocation & Rescan: Robot navigates to the identified open space, drops the object, and rescans the environment.- Idle Search Loop: If no target is within 8cm, the robot incrementally pivots left in a continuous patrol-and-scan loop. What I Built Today (Hardware Progress) - Layout Design: Planned component placement and trace routing on Zero PCB board.- Power Regulation: Connected 18650 Li-ion battery pack to LM2596 Buck Converter for stable 5V output.- Header Sockets: Soldered 8-pin female header block for motor driver + male headers for ESP32, servos, and sensors.- Circuit Protection: Soldered main push-button switch and 1000µF decoupling capacitor across 5V rails to prevent ESP32 brownouts.- Auxiliary Power: Added separate 9V battery line to power motor drivers independently."}]...
|
Title: Smart Relocator ESP32 by @henilX0 | Stardan Title: Smart Relocator ESP32 by @henilX0 | Stardance
Devlogs:
Devlog #1: Hardware Soldering & Power Distribution SetupTime Spent: 4 Hours Project Concept & Autonomous Logic Building an autonomous ESP32 mobile robot that identifies, grips, and clears obstacle objects to open areas.- Search & Detection: Ultrasonic sensor continuously scans forward; halts and aligns when an object enters the 8cm threshold.- Gripping & Spatial Mapping: Servo gripper secures the object. A servo-mounted ultrasonic sensor rotates 0°–180° to calculate the vector with maximum open clearance.- Relocation & Rescan: Robot navigates to the identified open space, drops the object, and rescans the environment.- Idle Search Loop: If no target is within 8cm, the robot incrementally pivots left in a continuous patrol-and-scan loop. What I Built Today (Hardware Progress) - Layout Design: Planned component placement and trace routing on Zero PCB board.- Power Regulation: Connected 18650 Li-ion battery pack to LM2596 Buck Converter for stable 5V output.- Header Sockets: Soldered 8-pin female header block for motor driver + male headers for ESP32, servos, and sensors.- Circuit Protection: Soldered main push-button switch and 1000µF decoupling capacitor across 5V rails to prevent ESP32 brownouts.- Auxiliary Power: Added separate 9V battery line to power motor drivers independently.
Finally built the first working prototype today! I mounted the ESP32, motor driver, and BO motors onto a temporary MDF board chassis to check wiring and component balance.Wrote custom code in Arduino IDE to handle motor control, flashed it to the board, and successfully verified basic movement!Next steps:Integrate the ultrasonic sensor for obstacle avoidance.Connect the servo motor for the gripper mechanism.
Wrote some new code in Arduino IDE today and wired up the ultrasonic sensor! I set the motor speed to 50% so it moves slow and doesn’t crash while testing. Right now, I’ve added a simple logic where as soon as the sensor detects an object in front, the robot moves towards it. Step by step getting it to work!
Updated the robot’s code in Arduino IDE today! Fixed a few compilation errors in the logic and tweaked some code settings so everything runs smoothly now. Next step is testing it live on the chassis!
Finished soldering and hardware connections for the MPU6050 sensor today! Added this sensor so the robot can measure precise turning angles to face target objects accurately. Next step is writing the code for it!
Wired and soldered the buck converter power setup. Ran into a short circuit issue whenever the ESP32 was connected and spent the entire session testing voltages and debugging (still in progress).
Fixed a short circuit today by replacing a damaged capacitor. Got the MPU6050 setup fully working and tested it with code. Also started drafting the 8cm target logic for the servo and ultrasonic sensor,will code the full logic tomorrow!
Fixed the MPU6050 power drop issue today by properly wiring it with the capacitor setup on the PCB. After fixing the power, started designing the initial robot chassis base in Onshape to fit all components!
Worked on the robot chassis CAD design in Onshape today! Added a custom pattern and configured the motor mounting dimensions so everything fits properly.
Updated the robot chassis dimensions in Onshape today! Arranged 3D models for components (motors, wheels, battery holder, and electronics) inside the frame to verify fitment and component spacing. Will keep tweaking dimensions as physical assembly progresses.
Designed the top cover plate for the robot chassis in Onshape today! Added a custom honeycomb mesh pattern for weight reduction, integrated an exact cutout for the SG90 servo motor, and added corner screw bosses to mount it securely to the chassis.
Updated the chassis dimensions in Onshape for better alignment! Also designed and mounted the bracket connecting the ultrasonic sensor to the SG90 servo motor.
Fine-tuned chassis dimensions in Onshape and modeled two structural components: designed a precision grid of internal screw bosses on the base plate for component mounting, and created a custom plate with filleted edges and corner screw holes.
Designed a custom mounting bracket for the HC-SR04 ultrasonic sensor in Onshape today! Created the front casing to hold the sensor, added filleted edges for structural rigidity, and integrated a bottom mounting arm to attach it to the servo motor.
Worked super hard today to completely redesign the robot chassis from scratch in Onshape! My main goal was to optimize material usage, keep the structure lightweight, and make physical assembly as easy as possible.The best part about this new design is all the open space ,there’s so much room from every side now. Routing wires, tuning components, or swapping parts like the ESP32 and motor driver will be totally effortless. Spent hours fine-tuning the component placement and layout, and everything fits together perfectly now!
Designed a custom H-shaped bracket in Onshape to mount the SG90 gripper servo directly onto the front chassis. Integrated precise cutout & screw mounts, aligned everything, and successfully mated the part into the main robot assembly!
Modeled the gripper base plate in Onshape with integrated guide rails and gear clearance for the servo horn. Also mounted the HC-SR04 ultrasonic sensor to the top deck! Still working on finishing the moving gripper arms, but the base structure and sensor placement are locked in.
Spent time in Onshape experimenting with different gear profiles and rack designs for the gripper! Tested tooth counts and pitch alignments to figure out how to convert the servo’s rotation into smooth linear motion. Still tweaking the design, but getting closer!
Redesigned the spur gear and rack profiles in Onshape to get a better tooth fit and pitch alignment. Spent time tweaking assembly mates and testing how the mechanism converts servo rotation into smooth linear movement for the gripper arms. Still fine-tuning, but getting closer to the final assembly!
Finally back on track after taking about a week off due to some medical/health reasons! Today, I finished designing the complete rack-and-pinion servo gripper in Onshape and integrated it into the full mobile robot assembly. The CAD model is now 100% complete, including the multi-tier chassis, ultrasonic sensor mount, motor driver, and gripper mechanism. Since all the CAD designs are ready, I really need 3D printing grant support/help now to get these physical parts printed so I can start assembling the hardware!
Just wrapped up designing and routing the custom dual-layer PCB for my ESP32 Smart Robot in KiCad!Took quite a bit of time to get all the pin mapping and trace routing clean without messy crossovers. Here’s what’s packed onto the board:ESP32 DevKit footprint & MPU6050 IMU connectorPin headers for motor driver, ultrasonic sensor, and dual servosPower circuitry with DPDT switch, filter capacitors, and status LEDsChecked everything in the 3D viewer and all the component clearances look clean. Next up: exporting Gerbers and getting this board fabricated!
Ships:
Building this ESP32-powered automated robot was an awesome ride—it uses a sweeping servo and ultrasonic sensor to scan the area, detects objects, and pulls off precise turns using MPU6050 IMU feedback alongside custom 3D-printed rack-and-pinion parts. The trickiest part wasn’t just the code, but figuring out KiCad from scratch to design a compact, clean custom circuit board schematic, all while wrestling with the tight wiring and power stability for the motors and sensors....
|
1793339766.9913738
|
1793426166.9913738
|
|
43975
|
grow a garden by @maxhlepine | Stardance
|
maxhlepine
|
1
|
0.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-04T21:09:36Z", "hours": 0.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made website about grow a garden. It was hard getting all the bugs worked out but im proud of my work", "repo": "https://github.com/yesbro-lab/growagarden", "demo": "https://github.com/yesbro-lab/growagarden/branches"}]...
|
[{"post_id": 40975, "ts": "202 [{"post_id": 40975, "ts": "2026-08-04T21:05:51Z", "hours": 0.25, "text": "a code for my website"}]...
|
Title: grow a garden by @maxhlepine | Stardance
D Title: grow a garden by @maxhlepine | Stardance
Devlogs:
a code for my website
Ships:
I made website about grow a garden. It was hard getting all the bugs worked out but im proud of my work...
|
1793569861.5326407
|
1793656261.5326407
|
|
43993
|
Izzy is too bizzy by @isabel_lester | Stardance
|
isabel_lester
|
1
|
1.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-07T19:33:57Z", "hours": 1.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a simple personal website to use as a portfolio! It has a couple sections for text and images, as well as buttons that link to other sites. It’s pretty empty for now, but I’m hoping to add more of my work and customize it more later. The CSS was/still is a bit challenging.", "repo": "https://github.com/bizzymaria-bit/personal-website", "demo": "https://bizzymaria-bit.github.io/personal-website/"}]...
|
[{"post_id": 42712, "ts": "202 [{"post_id": 42712, "ts": "2026-08-07T15:48:14Z", "hours": 0.9906, "text": "Adding images and substance to my “About Me”, trying to fix the bug in my instagram link"}]...
|
Title: Izzy is too bizzy by @isabel_lester | Stard Title: Izzy is too bizzy by @isabel_lester | Stardance
Devlogs:
Adding images and substance to my “About Me”, trying to fix the bug in my instagram link
Ships:
I made a simple personal website to use as a portfolio! It has a couple sections for text and images, as well as buttons that link to other sites. It’s pretty empty for now, but I’m hoping to add more of my work and customize it more later. The CSS was/still is a bit challenging....
|
1793569864.43336
|
1793656264.43336
|
|
44004
|
AI APEX Trader by @alex4o | Stardance
|
alex4o
|
1
|
0.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-05T13:25:15Z", "hours": 0.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "What I made apex-trader — a fully autonomous crypto trend-following bot trading BTC-EUR and ETH-EUR on Revolut X. It enters only when three conditions align on daily candles: price breaks above a 30-day Donchian channel, Supertrend(10,3) points up, and price sits above the 200-day SMA. It exits when Supertrend flips, protected by a Chandelier hard stop (6xATR). Risk is rules-based: max 25% of equity per position, max 2 positions, 50% exposure cap, -5% daily circuit breaker. An LLM (4-model fallback chain: Groq -> OpenRouter) reviews each entry as a risk-off veto — it can block trades but never create them, and fails open if all models are down. It runs unattended in the cloud: a cron-job.org pinger triggers a GitHub Actions cycle every 15 minutes, the bot commits its own state and decision log back to the repo, and ntfy.sh pushes entry/exit alerts to my phone. Currently paper trading EUR 500. What was challenging The hardest part wasn’t the strategy — it was trusting it, then deploying it. My first backtests looked amazing until I learned to distrust them: I built proper out-of-sample validation (frozen parameters, last 30% of history, real fees + slippage) plus a robustness check across all 7 neighboring parameter combos. That process killed one exit rule — the Donchian lower band was silently cutting winners on ~100% of bars; removing it improved OOS Sharpe on both assets. On deployment, GitHub’s built-in 15-min cron proved unreliable (measured gaps of 76-204 minutes overnight), so I built an external metronome via cron-job.org + repository_dispatch — then debugged a misleading 404 that turned out to be GitHub’s response when a fine-grained PAT can’t see a repo (fixed with least-privilege token scoping). I also had to guarantee the local and cloud bots could never run simultaneously — shared git state means double-trade risk. What I’m proud of The discipline. Every number in my README carries its caveats: out-of-sample trade counts are below statistical significance and I say so; buy-and-hold actually beat the strategy on raw return in the bull window, and I publish that too — the real edge is drawdown survival (-11% vs -52% for holding). The bot runs itself for days with zero intervention, every decision logged to a public JSONL audit trail from cron ping to trade decision. The LLM is caged — used only where it’s defensible (a second opinion on risk) and locked out of creating trades. And the parity check: live bot logic vs backtest engine, 0 mismatches — the bot IS what was tested. How to test it out No UI — it’s headless — but everything is verifiable: Watch it live: the repo’s Actions tab shows a full trading cycle every 15 min (market data -> signals -> decision). Read its mind: apex_decisions.jsonl logs every decision it has ever made with reasoning; apex_state.json is its current portfolio. Reproduce my backtest: clone the repo, pip install -r requirements.txt, python backtest_apex.py — public Coinbase data, zero secrets needed; you should get the same numbers as the README table. Run it yourself: python apex_trader.py defaults to paper mode with zero secrets — it evaluates live market data and tells you what it WOULD do. It can’t place a real order unless you deliberately set LIVE_TRADING=true and add exchange credentials.", "repo": "https://github.com/alexgamingmax11-code/apex-trader", "demo": "https://github.com/alexgamingmax11-code/apex-trader/actions"}]...
|
[{"post_id": 41296, "ts": "202 [{"post_id": 41296, "ts": "2026-08-05T13:04:21Z", "hours": 0.3139, "text": "My very own trading automation project!"}]...
|
Title: AI APEX Trader by @alex4o | Stardance
Devl Title: AI APEX Trader by @alex4o | Stardance
Devlogs:
My very own trading automation project!
Ships:
What I made apex-trader — a fully autonomous crypto trend-following bot trading BTC-EUR and ETH-EUR on Revolut X. It enters only when three conditions align on daily candles: price breaks above a 30-day Donchian channel, Supertrend(10,3) points up, and price sits above the 200-day SMA. It exits when Supertrend flips, protected by a Chandelier hard stop (6xATR). Risk is rules-based: max 25% of equity per position, max 2 positions, 50% exposure cap, -5% daily circuit breaker. An LLM (4-model fallback chain: Groq -> OpenRouter) reviews each entry as a risk-off veto — it can block trades but never create them, and fails open if all models are down. It runs unattended in the cloud: a cron-job.org pinger triggers a GitHub Actions cycle every 15 minutes, the bot commits its own state and decision log back to the repo, and ntfy.sh pushes entry/exit alerts to my phone. Currently paper trading EUR 500. What was challenging The hardest part wasn’t the strategy — it was trusting it, then deploying it. My first backtests looked amazing until I learned to distrust them: I built proper out-of-sample validation (frozen parameters, last 30% of history, real fees + slippage) plus a robustness check across all 7 neighboring parameter combos. That process killed one exit rule — the Donchian lower band was silently cutting winners on ~100% of bars; removing it improved OOS Sharpe on both assets. On deployment, GitHub’s built-in 15-min cron proved unreliable (measured gaps of 76-204 minutes overnight), so I built an external metronome via cron-job.org + repository_dispatch — then debugged a misleading 404 that turned out to be GitHub’s response when a fine-grained PAT can’t see a repo (fixed with least-privilege token scoping). I also had to guarantee the local and cloud bots could never run simultaneously — shared git state means double-trade risk. What I’m proud of The discipline. Every number in my README carries its caveats: out-of-sample trade counts are below statistical significance and I say so; buy-and-hold actually beat the strategy on raw return in the bull window, and I publish that too — the real edge is drawdown survival (-11% vs -52% for holding). The bot runs itself for days with zero intervention, every decision logged to a public JSONL audit trail from cron ping to trade decision. The LLM is caged — used only where it’s defensible (a second opinion on risk) and locked out of creating trades. And the parity check: live bot logic vs backtest engine, 0 mismatches — the bot IS what was tested. How to test it out No UI — it’s headless — but everything is verifiable: Watch it live: the repo’s Actions tab shows a full trading cycle every 15 min (market data -> signals -> decision). Read its mind: apex_decisions.jsonl logs every decision it has ever made with reasoning; apex_state.json is its current portfolio. Reproduce my backtest: clone the repo, pip install -r requirements.txt, python backtest_apex.py — public Coinbase data, zero secrets needed; you should get the same numbers as the README table. Run it yourself: python apex_trader.py defaults to paper mode with zero secrets — it evaluates live market data and tells you what it WOULD do. It can’t place a real order unless you deliberately set LIVE_TRADING=true and add exchange credentials....
|
1793328779.1723146
|
1793415179.1723146
|
|
44005
|
Travel Budget Planner by @Ombama | Stardance
|
Ombama
|
1
|
5.64
|
38
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-04T22:28:59Z", "hours": 5.0, "multiplier": 7.28, "payout": 38, "blessing": "neutral", "text": "I made a Travel Budget Planner that helps users estimate the full cost of a trip. Users enter their destination, number of days, travelers, hotel, food, transportation, activities, and emergency-budget percentage. The app calculates each expense category, total trip cost, cost per person, and average daily cost. It also labels the trip as Budget, Standard, or Expensive, saves the latest trip, and includes reset and print options. The most challenging parts were validating inputs, organizing the calculations, preventing incorrect results, and saving data with localStorage. I am most proud of the responsive design and visual budget breakdown. To test it, enter trip details and click Calculate Budget. Also try missing fields, zero or negative values, refreshing the page, resetting the form, and printing the summary.", "repo": "https://github.com/Om-Bhagat-prog/Travel-Budget-Planner", "demo": "https://travel-budget-planner-five.vercel.app/"}]...
|
[{"post_id": 41558, "ts": "202 [{"post_id": 41558, "ts": "2026-08-05T21:00:17Z", "hours": 0.6419, "text": "I changed the README.md file."}, {"post_id": 41019, "ts": "2026-08-04T22:25:53Z", "hours": 5.1947, "text": "The final project includes a responsive interface where users enter their destination, trip length, number of travelers, hotel cost, food cost, transportation, activities, and an extra emergency-budget percentage. JavaScript reads and validates the form, calculates each expense category, total trip cost, cost per person, and average daily cost. It also labels the trip as Budget, Standard, or Expensive and displays visual spending bars. I added currency formatting, clear error messages, reset and print buttons, and browser localStorage so the latest trip can be saved and restored after refreshing the page. The CSS includes cards, responsive layouts, mobile support, and print styles. The finished GitHub project also includes a detailed README explaining its features, calculations, technologies, file structure, and possible future improvements."}]...
|
Title: Travel Budget Planner by @Ombama | Stardanc Title: Travel Budget Planner by @Ombama | Stardance
Devlogs:
The final project includes a responsive interface where users enter their destination, trip length, number of travelers, hotel cost, food cost, transportation, activities, and an extra emergency-budget percentage. JavaScript reads and validates the form, calculates each expense category, total trip cost, cost per person, and average daily cost. It also labels the trip as Budget, Standard, or Expensive and displays visual spending bars. I added currency formatting, clear error messages, reset and print buttons, and browser localStorage so the latest trip can be saved and restored after refreshing the page. The CSS includes cards, responsive layouts, mobile support, and print styles. The finished GitHub project also includes a detailed README explaining its features, calculations, technologies, file structure, and possible future improvements.
I changed the README.md file.
Ships:
I made a Travel Budget Planner that helps users estimate the full cost of a trip. Users enter their destination, number of days, travelers, hotel, food, transportation, activities, and emergency-budget percentage. The app calculates each expense category, total trip cost, cost per person, and average daily cost. It also labels the trip as Budget, Standard, or Expensive, saves the latest trip, and includes reset and print options. The most challenging parts were validating inputs, organizing the calculations, preventing incorrect results, and saving data with localStorage. I am most proud of the responsive design and visual budget breakdown. To test it, enter trip details and click Calculate Budget. Also try missing fields, zero or negative values, refreshing the page, resetting the form, and printing the summary....
|
1793328780.3133526
|
1793415180.3133526
|
|
44009
|
Multiversal Remote by @antellij | Stardance
|
antellij
|
1
|
41.2
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-28T01:35:17Z", "hours": 39.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "A project aimed at replicating IR signals for media communication while also being able to act as a Bluetooth keyboard (Can do media controls and keystrokes), with the ability to be (fairly) easily extensible for more profiles and devices.", "repo": "https://github.com/antelliJ/Universal-Remote", "demo": ""}]...
|
[{"post_id": 78449, "ts": "202 [{"post_id": 78449, "ts": "2026-10-10T20:25:14Z", "hours": 0.725, "text": "Added a BOM and STEP file to the repository, so it should become a lot more clear on how to reproduce the project, and should help prepare for shipping."}, {"post_id": 64470, "ts": "2026-09-08T21:54:07Z", "hours": 1.4783, "text": "Actually started designing something to make it look nice in, and something to hold down the microcontroller and other components. That means you don’t need to touch the main board when plugging in power (novel). The wiring has been cleaned up a little (still looks terrible), so it should be far easier to repair / replace any parts that aren’t working. I have now actually been able to use the 8 buttons of the shift register due to this. I cut some grooves for necessary IO sensors and for the power, added a filet to the corners to make it more ergonomic and comfortable to hold. There is now also a back panel so you can rest your hands there instead of pulling out a wire. I also designed a 3d version of this just incase it was necessary."}, {"post_id": 56312, "ts": "2026-08-28T01:29:34Z", "hours": 1.6631, "text": "Devlog 7.1 Was just about to ship when I realized there was a bug that I somehow never noticed before that would mean you couldn’t functionally use more than a single page of profiles (4), which would be quite detrimental to anyone wishing to turn on more than a set of lights"}, {"post_id": 55369, "ts": "2026-08-27T04:50:28Z", "hours": 1.7567, "text": "Devlog 7 While I could at leas try to make something pretty, I’ll just say I’m a pragmatist and don’t need extra fluff. The casing is just a wooden frame that I drilled holes for the buttons and screen, and the final and basically only functional button is just taped on at the top, but with that being said, it does do what I want it to do, and I think that that is enough. I’ve decided this project has set its sail and is about to roam the open waters of the shipyard. I’ve taken some fine looking photos to attach to the top of the github repository, shined up the README to make proper installation instructions, and am just about ready to ship what I have."}, {"post_id": 54557, "ts": "2026-08-25T16:04:53Z", "hours": 6.6308, "text": "Devlog 6 I might just be the most oblivious person I know Since my shift register wasn’t registering, I went ahead to continuity check every connection from each input pin to the register, then form the register to the microcontroller, then to just about every other pin, and cross referencing with the schematic, fixing minor issues and repeat like 5 times, but to no avail. I seemed to believe I was Terry Davis or something because I was convinced it was a hardware issue and didn’t check any of the software, only the code that checks the inputs, which theoretically should have worked. I assumed at some point I catastrophically ruined the IC So I desoldered all register related components and just used a single button for debugging. Just for fun I tested the IC on another breadboard with an ESP32 that I know was working and it functioned properly. Odd. When I’m rewriting the code to work for a single button I was trying to alter the logic for the register setup, it was at this moment I realized the setup function wasn’t called - gasp one line – registerSetup(); would have made everything work. While I could put everything back together, I don’t want to deal with the glob just yet, I’ll wait to get a socket (in case the IC does actually break at some point) I’ll also begin writing the README for the project on github since the major parts of the project are done PS - I just realized I missed devlog 3 - welp there’s no going back now"}, {"post_id": 52768, "ts": "2026-08-23T03:32:44Z", "hours": 5.8708, "text": "Devlog 5 I’ve done a bit of soldering at this point, but I will say it is definitely not pretty. It is a rats nest of floating wires that probably won’t short or disconnect if I’m lucky, and all the power lines are held together with massive blobs of solder (or wires connecting the blobs since the blobs don’t stay together if they get too large) In all my genius I also used solid core wire, which means they are more stiff, and more likely to break off from my weak solder points than flex, so I had to do a lot of reattachment. Magically, it appears a lot of things are working, just not the shift register and its hard to say why. Perhaps I burned it and ruined the internal ICs, I’m not sure. I think I’ll disconnect it and reattach a singular button just to make sure everything else works (and I at least have some feasible product at the end of this)."}, {"post_id": 50723, "ts": "2026-08-20T02:04:22Z", "hours": 3.6953, "text": "Devlog 4 I’ve been working on some light soldering, but the most interesting part was the work on the woodwork for the actual remote chassis since I don’t have a 3d printer. I used an old wooden frame i had around. Maybe its the calm before the storm, but I found this part really relaxing. I would drill and chip away bit by bit, and eventually things would go in and fit flushly, and was really rewarding. During the timelapse you can see each hit as the camera moves, and I think its really satisfying cleaning the workbench, making progress, and the cleanup. Feeling the buttons and rotary encoder firmly in place made me realize I quite like the tactile feel, and I might want to implement some games, maybe like a memory game so I can use all the buttons or a space invaders replica."}, {"post_id": 49180, "ts": "2026-08-17T20:24:29Z", "hours": 7.9239, "text": "Devlog 2 Now that I have the bluetooth and IR functionality working together, the ir demo is attached in the video. I’ve also created a schematic, which was done as my first time ever using KiCad, so I first followed the web tutorial to get the basics, then went in. While I don’t need to get a pcb since I plan on just soldering everything directly, it does make visualizing the connections easier. That is especially imoprtant since I’m running very tight on applicable GPIO pins. I need 10 total IO pins for everything (screen I2C, shift register, rotary encoder, IR receiver and transmitter). The board I’m using (ESP32 C3 super-mini) has 16 pins, 13 for GPIO. But of that 13, 3 are strapping pins (required to be in particular states at boot), and 2 are for UART transmission. Leaving only 8 fully open pins. Theoretically I could just stack shift registers for everything input and only use like 5 pins, but that sounds overcomplicated, and I thought it would be a fun challenge to get everything to work. I went through the datasheets to figure out which state would be safest and would logically not be a worry, for instance pin 8 should be low at boot, but afterwards it acts an output to the internal LED, that meant I could safely connect that to the IR since it would never need to be pulled high unless it was being used, and having a visual indicator of when the IR was transmitting seemed like a fun inclusion. I’m sure the final schematic is not the most tidy thing, but I think it works for what it needs to be. I attached it to the end of the video"}, {"post_id": 45873, "ts": "2026-08-12T16:41:02Z", "hours": 3.1183, "text": "Devlog 1 I seem to be very good at getting lost. I realized that I couldn’t safely handle Bluetooth or IR commands since all the logic uses the base class (that makes switching between them easy). The only problem is when I actually have to use the specific properties of each. So I went into a rabbit hole trying to get variants, and implementing some of the bluetooth protocols as I passed by that file, and when I remembered what was actually trying to fix I realized I could just force it to recognize it based on the state (the property that I had set up at the start). At least working on the bluetooth media part did make me realize that I only had the foresight to add character presses into my structs, and not necessarily media keys. So I’ll need to figure that out… Since I’ll be getting my proper board with some other necessary components soon, I think I’ll also start to work on a schematic and readme as I’m getting closer to actually finishing (and shipping) this project"}, {"post_id": 44303, "ts": "2026-08-09T23:29:14Z", "hours": 8.5378, "text": "Devlog 0 yap yap A whole lot of things today are built on being convenient and therefore wireless, but sometimes things are too convenient that they end up creating an annoyance. Case being the amount of remotes that powers an LED strip at most once a month and then hides away collecting dust ready to be forgotten, and it being the only way to power these devices makes them quite necessary. I wanted to solve this by creating my own IR remote, which can read any signal and proceed to save it so that I only need one remote for LEDs, TVs, or other IR devices. Using the beloved ESP32, I also have bluetooth functionality and thought it would be good to bring the idea of a universal remote into a modern age by allowing it to also connect and give wireless commands through bluetooth. This allows it to pause/play/skip media, act as a shutter for a phone’s camera, become a macro pad, all through the various profiles that you can set up for your own needs. what I’ve actually done Now with all these lofty ideas requires a strong foundation, so after testing all the libraries and components individually I needed to bring these all together gracefully (at least to the best of my ability). So I started creating a framework for all of the components and how they will relate to each other without having the ability to cause direct harm to the other parts of the system should I mess up (which is likely). I’ve done enough coding to get my way around and find what I need, but I wouldn’t be able to name what approach I’m using at the top of my head, and maybe putting everything in header files isn’t the best idea long term but that’s a problem for later. Component wise I’m using an esp32-c3 with a standard OLED module, a rotary encoder, several buttons, and a shift register. Apparently the shift register is rated for 5v logic only, but it appears to be working during my tests so I’m assuming its fine. Anyways actually creating a derived class and propagating the values of the current state of the program was a bit more involved than I thought, so I needed to spend time debugging that while I was setting up the screen logic at the same time. It currently works by showing the title of the current profile, the available 8 commands (which would map to the 8 buttons), and whether there are more commands that can be scrolled to using the rotary encoder. Video stuff Attached is the video that shows the first 8 commands of a profile being drawn step by step. Afterwards is a showcase of some of the planning and code (terribly written I’m sure) that I’ve done so far"}]...
|
Title: Multiversal Remote by @antellij | Stardance Title: Multiversal Remote by @antellij | Stardance
Devlogs:
Devlog 0 yap yap A whole lot of things today are built on being convenient and therefore wireless, but sometimes things are too convenient that they end up creating an annoyance. Case being the amount of remotes that powers an LED strip at most once a month and then hides away collecting dust ready to be forgotten, and it being the only way to power these devices makes them quite necessary. I wanted to solve this by creating my own IR remote, which can read any signal and proceed to save it so that I only need one remote for LEDs, TVs, or other IR devices. Using the beloved ESP32, I also have bluetooth functionality and thought it would be good to bring the idea of a universal remote into a modern age by allowing it to also connect and give wireless commands through bluetooth. This allows it to pause/play/skip media, act as a shutter for a phone’s camera, become a macro pad, all through the various profiles that you can set up for your own needs. what I’ve actually done Now with all these lofty ideas requires a strong foundation, so after testing all the libraries and components individually I needed to bring these all together gracefully (at least to the best of my ability). So I started creating a framework for all of the components and how they will relate to each other without having the ability to cause direct harm to the other parts of the system should I mess up (which is likely). I’ve done enough coding to get my way around and find what I need, but I wouldn’t be able to name what approach I’m using at the top of my head, and maybe putting everything in header files isn’t the best idea long term but that’s a problem for later. Component wise I’m using an esp32-c3 with a standard OLED module, a rotary encoder, several buttons, and a shift register. Apparently the shift register is rated for 5v logic only, but it appears to be working during my tests so I’m assuming its fine. Anyways actually creating a derived class and propagating the values of the current state of the program was a bit more involved than I thought, so I needed to spend time debugging that while I was setting up the screen logic at the same time. It currently works by showing the title of the current profile, the available 8 commands (which would map to the 8 buttons), and whether there are more commands that can be scrolled to using the rotary encoder. Video stuff Attached is the video that shows the first 8 commands of a profile being drawn step by step. Afterwards is a showcase of some of the planning and code (terribly written I’m sure) that I’ve done so far
Devlog 1 I seem to be very good at getting lost. I realized that I couldn’t safely handle Bluetooth or IR commands since all the logic uses the base class (that makes switching between them easy). The only problem is when I actually have to use the specific properties of each. So I went into a rabbit hole trying to get variants, and implementing some of the bluetooth protocols as I passed by that file, and when I remembered what was actually trying to fix I realized I could just force it to recognize it based on the state (the property that I had set up at the start). At least working on the bluetooth media part did make me realize that I only had the foresight to add character presses into my structs, and not necessarily media keys. So I’ll need to figure that out… Since I’ll be getting my proper board with some other necessary components soon, I think I’ll also start to work on a schematic and readme as I’m getting closer to actually finishing (and shipping) this project
Devlog 2 Now that I have the bluetooth and IR functionality working together, the ir demo is attached in the video. I’ve also created a schematic, which was done as my first time ever using KiCad, so I first followed the web tutorial to get the basics, then went in. While I don’t need to get a pcb since I plan on just soldering everything directly, it does make visualizing the connections easier. That is especially imoprtant since I’m running very tight on applicable GPIO pins. I need 10 total IO pins for everything (screen I2C, shift register, rotary encoder, IR receiver and transmitter). The board I’m using (ESP32 C3 super-mini) has 16 pins, 13 for GPIO. But of that 13, 3 are strapping pins (required to be in particular states at boot), and 2 are for UART transmission. Leaving only 8 fully open pins. Theoretically I could just stack shift registers for everything input and only use like 5 pins, but that sounds overcomplicated, and I thought it would be a fun challenge to get everything to work. I went through the datasheets to figure out which state would be safest and would logically not be a worry, for instance pin 8 should be low at boot, but afterwards it acts an output to the internal LED, that meant I could safely connect that to the IR since it would never need to be pulled high unless it was being used, and having a visual indicator of when the IR was transmitting seemed like a fun inclusion. I’m sure the final schematic is not the most tidy thing, but I think it works for what it needs to be. I attached it to the end of the video
Devlog 4 I’ve been working on some light soldering, but the most interesting part was the work on the woodwork for the actual remote chassis since I don’t have a 3d printer. I used an old wooden frame i had around. Maybe its the calm before the storm, but I found this part really relaxing. I would drill and chip away bit by bit, and eventually things would go in and fit flushly, and was really rewarding. During the timelapse you can see each hit as the camera moves, and I think its really satisfying cleaning the workbench, making progress, and the cleanup. Feeling the buttons and rotary encoder firmly in place made me realize I quite like the tactile feel, and I might want to implement some games, maybe like a memory game so I can use all the buttons or a space invaders replica.
Devlog 5 I’ve done a bit of soldering at this point, but I will say it is definitely not pretty. It is a rats nest of floating wires that probably won’t short or disconnect if I’m lucky, and all the power lines are held together with massive blobs of solder (or wires connecting the blobs since the blobs don’t stay together if they get too large) In all my genius I also used solid core wire, which means they are more stiff, and more likely to break off from my weak solder points than flex, so I had to do a lot of reattachment. Magically, it appears a lot of things are working, just not the shift register and its hard to say why. Perhaps I burned it and ruined the internal ICs, I’m not sure. I think I’ll disconnect it and reattach a singular button just to make sure everything else works (and I at least have some feasible product at the end of this).
Devlog 6 I might just be the most oblivious person I know Since my shift register wasn’t registering, I went ahead to continuity check every connection from each input pin to the register, then form the register to the microcontroller, then to just about every other pin, and cross referencing with the schematic, fixing minor issues and repeat like 5 times, but to no avail. I seemed to believe I was Terry Davis or something because I was convinced it was a hardware issue and didn’t check any of the software, only the code that checks the inputs, which theoretically should have worked. I assumed at some point I catastrophically ruined the IC So I desoldered all register related components and just used a single button for debugging. Just for fun I tested the IC on another breadboard with an ESP32 that I know was working and it functioned properly. Odd. When I’m rewriting the code to work for a single button I was trying to alter the logic for the register setup, it was at this moment I realized the setup function wasn’t called - gasp one line – registerSetup(); would have made everything work. While I could put everything back together, I don’t want to deal with the glob just yet, I’ll wait to get a socket (in case the IC does actually break at some point) I’ll also begin writing the README for the project on github since the major parts of the project are done PS - I just realized I missed devlog 3 - welp there’s no going back now
Devlog 7 While I could at leas try to make something pretty, I’ll just say I’m a pragmatist and don’t need extra fluff. The casing is just a wooden frame that I drilled holes for the buttons and screen, and the final and basically only functional button is just taped on at the top, but with that being said, it does do what I want it to do, and I think that that is enough. I’ve decided this project has set its sail and is about to roam the open waters of the shipyard. I’ve taken some fine looking photos to attach to the top of the github repository, shined up the README to make proper installation instructions, and am just about ready to ship what I have.
Devlog 7.1 Was just about to ship when I realized there was a bug that I somehow never noticed before that would mean you couldn’t functionally use more than a single page of profiles (4), which would be quite detrimental to anyone wishing to turn on more than a set of lights
Actually started designing something to make it look nice in, and something to hold down the microcontroller and other components. That means you don’t need to touch the main board when plugging in power (novel). The wiring has been cleaned up a little (still looks terrible), so it should be far easier to repair / replace any parts that aren’t working. I have now actually been able to use the 8 buttons of the shift register due to this. I cut some grooves for necessary IO sensors and for the power, added a filet to the corners to make it more ergonomic and comfortable to hold. There is now also a back panel so you can rest your hands there instead of pulling out a wire. I also designed a 3d version of this just incase it was necessary.
Added a BOM and STEP file to the repository, so it should become a lot more clear on how to reproduce the project, and should help prepare for shipping.
Ships:
A project aimed at replicating IR signals for media communication while also being able to act as a Bluetooth keyboard (Can do media controls and keystrokes), with the ability to be (fairly) easily extensible for more profiles and devices....
|
1793328540.7017715
|
1793414940.7017715
|
|
44019
|
My own site! by @AllyD | Stardance
|
AllyD
|
1
|
1.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-13T22:10:59Z", "hours": 1.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made my website, personal website where i will add every project that i will do in the future. First time trying to make a website wasnt really that challenging and so I am pretty happy with it for now , but as i said i will keep updating it with my new projects.", "repo": "https://github.com/AllyD002/My-website", "demo": "https://allyd002.github.io/My-website/"}]...
|
[{"post_id": 46574, "ts": "202 [{"post_id": 46574, "ts": "2026-08-13T22:08:45Z", "hours": 0.4481, "text": "So, tried to fix some bugs it worked and now im realising it fully, in the future i will add projects and other things but for now thats it, i guess."}, {"post_id": 41873, "ts": "2026-08-06T10:56:12Z", "hours": 0.2775, "text": "So this is my very first time making a HTML website, I am very happy to realease it to public, this is not the final version but for now it seems to be okay for me."}]...
|
Title: My own site! by @AllyD | Stardance
Devlogs Title: My own site! by @AllyD | Stardance
Devlogs:
So this is my very first time making a HTML website, I am very happy to realease it to public, this is not the final version but for now it seems to be okay for me.
So, tried to fix some bugs it worked and now im realising it fully, in the future i will add projects and other things but for now thats it, i guess.
Ships:
I made my website, personal website where i will add every project that i will do in the future. First time trying to make a website wasnt really that challenging and so I am pretty happy with it for now , but as i said i will keep updating it with my new projects....
|
1793533988.1375194
|
1793620388.1375194
|
|
44021
|
wildfire by @Imtiaz | Stardance
|
Imtiaz
|
1
|
3.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-06T23:14:23Z", "hours": 3.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "So, it’s a fun project of mine made by using NASA’s Firms software. NASA actually collects data from the space and puts it into FIRMS if any place is getting cooked. To see if you’re living in a great place, check it out!!", "repo": "https://github.com/imtua/wildfire", "demo": "https://imtua.github.io/wildfire/"}]...
|
[{"post_id": 42101, "ts": "202 [{"post_id": 42101, "ts": "2026-08-06T17:45:34Z", "hours": 0.3542, "text": "just wrote the scoring.js file, everythings working good, it scores."}, {"post_id": 42084, "ts": "2026-08-06T17:19:48Z", "hours": 0.2933, "text": "wrote the firms.js file"}, {"post_id": 41830, "ts": "2026-08-06T09:07:20Z", "hours": 1.2853, "text": "just wrote the app.js file, i used CARTO api for the map."}, {"post_id": 41605, "ts": "2026-08-05T22:12:30Z", "hours": 0.5072, "text": "just wrote the main.css file that gives my website a beautiful design."}, {"post_id": 41586, "ts": "2026-08-05T21:41:03Z", "hours": 0.9125, "text": "as you can see, the index.html is done here. whatever im doing is getting logged in the readme file."}]...
|
Title: wildfire by @Imtiaz | Stardance
Devlogs:
a Title: wildfire by @Imtiaz | Stardance
Devlogs:
as you can see, the index.html is done here. whatever im doing is getting logged in the readme file.
just wrote the main.css file that gives my website a beautiful design.
just wrote the app.js file, i used CARTO api for the map.
wrote the firms.js file
just wrote the scoring.js file, everythings working good, it scores.
Ships:
So, it’s a fun project of mine made by using NASA’s Firms software. NASA actually collects data from the space and puts it into FIRMS if any place is getting cooked. To see if you’re living in a great place, check it out!!...
|
1793328781.485332
|
1793415181.485332
|
|
44042
|
cool homepage by @Aliexpress_enjoyer | Stardance
|
Aliexpress_enjoyer
|
1
|
2.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-05T18:03:56Z", "hours": 2.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a custom homepage yay I am proud of how quickly did it, since this would have taken me much longer when I first started years ago.", "repo": "https://github.com/boredguywithacomputer/homepage", "demo": "https://boredguywithacomputer.github.io/homepage/"}]...
|
[{"post_id": 41447, "ts": "202 [{"post_id": 41447, "ts": "2026-08-05T17:38:18Z", "hours": 0.7875, "text": "Added a simple temperature reading from a weather api I tried stealing firefox’s sponsored weather api but couldnt figure it out so I just went with a random one"}, {"post_id": 41158, "ts": "2026-08-05T06:01:22Z", "hours": 0.6911, "text": "Added the spinning turtle using threejs and a suspiciously google colored text and other css things I was wondering why threejs was tweaking when I remembered webgl didnt work on my firefox installation for some reason, I think i’ll be fixing that right after posting this devlog"}, {"post_id": 41072, "ts": "2026-08-05T01:08:35Z", "hours": 0.3503, "text": "made a turtle in blender he will return later…"}, {"post_id": 41059, "ts": "2026-08-05T00:41:34Z", "hours": 0.2644, "text": "I made a basic Google search bar It allows you to type slash to focus on the input"}]...
|
Title: cool homepage by @Aliexpress_enjoyer | Star Title: cool homepage by @Aliexpress_enjoyer | Stardance
Devlogs:
I made a basic Google search bar It allows you to type slash to focus on the input
made a turtle in blender he will return later…
Added the spinning turtle using threejs and a suspiciously google colored text and other css things I was wondering why threejs was tweaking when I remembered webgl didnt work on my firefox installation for some reason, I think i’ll be fixing that right after posting this devlog
Added a simple temperature reading from a weather api I tried stealing firefox’s sponsored weather api but couldnt figure it out so I just went with a random one
Ships:
I made a custom homepage yay I am proud of how quickly did it, since this would have taken me much longer when I first started years ago....
|
1793328791.1450217
|
1793415191.1450217
|
|
44078
|
Print Website by @a360 | Stardance
|
a360
|
1
|
4.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-06T05:40:47Z", "hours": 4.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I started this project about a week before I signed up here — I don’t know the exact date, but I’m fairly sure it was before June 1st, which is why I checked that box. It’s real client work: one of my customers needed a website for his print shop, QB Custom Apparel. The deal is that if he likes it, he get me referrals. The public repo is a sanitized demo. It exists so I could have something in my portfolio without putting my customer’s business information in a public repository, so a lot of the real work isn’t in it. The 3D builder in the repo is a much older version — the whole thing got rewritten in Liquid and JavaScript (instead of the original Python-based version) to run natively inside Shopify, and honestly that rewrite is a project of its own. The real build is a full store where my customer sells through his own website with actual sales numbers. We use Shopify’s own integrated features plus Drip, a third-party app, for gang sheets — collections of images packed onto a fixed-size print canvas. And we built a full 3D shirt design tool for him, because every tool available at the time was horrible and unusable. Everything is custom; there was no pre-made theme that could work as a base. It’s a real store and it works. Getting the 3D models right took hours of my life I’m not getting back. The version on the live domain is the release version — what I’m working on now runs on a separate preview theme, basically a playground where I can’t break anything for real customers. It’s a detailed, complicated project, and Shopify’s APIs are the most confusing thing you will ever find.", "repo": "https://github.com/ahmet360/emberline-print-studio", "demo": "https://www.qbcustomapparel.com/"}]...
|
[{"post_id": 41773, "ts": "202 [{"post_id": 41773, "ts": "2026-08-06T05:20:04Z", "hours": 0.5683, "text": "Changed: the native Upload / By-Size flows filter out any sheet longer than 240” (sizes now stop at 22×240), and the Dawn variant pickers on the gang product pages hide the 22×360 pill. The variant itself stays on the Drip-owned products untouched (the app manages those); the storefront just never offers it. Verified on staging: filter keeps 13 sizes, drops exactly 22×360. Why: 22×240 is the largest sheet that opens anywhere - 360 is past the 2GB decode wall, unviewable even for the print team."}, {"post_id": 41720, "ts": "2026-08-06T03:27:24Z", "hours": 2.8469, "text": "Currently adding a system to allow multiple designs to be put on the same shirt. Currently rendering is made per image. Replacing the current render system with a multi-image rendering system that allows multiple image meshes to be placed on the shirts, allowing for more unique variations and creations."}, {"post_id": 41137, "ts": "2026-08-05T04:48:17Z", "hours": 0.5614, "text": "I’m adding a way to first download files above a certain size because most browsers can’t render really large images. I need to be able to download those really large images even when they can’t be rendered."}]...
|
Title: Print Website by @a360 | Stardance
Devlogs Title: Print Website by @a360 | Stardance
Devlogs:
I’m adding a way to first download files above a certain size because most browsers can’t render really large images. I need to be able to download those really large images even when they can’t be rendered.
Currently adding a system to allow multiple designs to be put on the same shirt. Currently rendering is made per image. Replacing the current render system with a multi-image rendering system that allows multiple image meshes to be placed on the shirts, allowing for more unique variations and creations.
Changed: the native Upload / By-Size flows filter out any sheet longer than 240” (sizes now stop at 22×240), and the Dawn variant pickers on the gang product pages hide the 22×360 pill. The variant itself stays on the Drip-owned products untouched (the app manages those); the storefront just never offers it. Verified on staging: filter keeps 13 sizes, drops exactly 22×360. Why: 22×240 is the largest sheet that opens anywhere - 360 is past the 2GB decode wall, unviewable even for the print team.
Ships:
I started this project about a week before I signed up here — I don’t know the exact date, but I’m fairly sure it was before June 1st, which is why I checked that box. It’s real client work: one of my customers needed a website for his print shop, QB Custom Apparel. The deal is that if he likes it, he get me referrals. The public repo is a sanitized demo. It exists so I could have something in my portfolio without putting my customer’s business information in a public repository, so a lot of the real work isn’t in it. The 3D builder in the repo is a much older version — the whole thing got rewritten in Liquid and JavaScript (instead of the original Python-based version) to run natively inside Shopify, and honestly that rewrite is a project of its own. The real build is a full store where my customer sells through his own website with actual sales numbers. We use Shopify’s own integrated features plus Drip, a third-party app, for gang sheets — collections of images packed onto a fixed-size print canvas. And we built a full 3D shirt design tool for him, because every tool available at the time was horrible and unusable. Everything is custom; there was no pre-made theme that could work as a base. It’s a real store and it works. Getting the 3D models right took hours of my life I’m not getting back. The version on the live domain is the release version — what I’m working on now runs on a separate preview theme, basically a playground where I can’t break anything for real customers. It’s a detailed, complicated project, and Shopify’s APIs are the most confusing thing you will ever find....
|
1793332568.3293886
|
1793418968.3293886
|
|
44087
|
GrowthCalc by @knightfallShashy | Stardance
|
knightfallShashy
|
1
|
10.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-14T08:37:34Z", "hours": 10.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made Growthcalc: a python written investment based calculator app. It has 4 different calculation metrics: an investment growth calculator, a retirement checker, a tax- advantaged vs taxable account comparison, and a loan payoff calculator. In general, the equations was probably the toughest part, understanding them and implementing them. Im really proud of going from nearly no python knowledge, to knowing how to use streamlit and work my way around functions. I also learned different financial concepts that I can use later down my life. Before people test my project they should know that it’s very interactive, try every single tab and basically enjoy. Have fun and look at how much your money can really grow.", "repo": "https://github.com/Shashyster/growthcalc", "demo": "https://growthcalcc.netlify.app"}]...
|
[{"post_id": 46174, "ts": "202 [{"post_id": 46174, "ts": "2026-08-13T06:20:57Z", "hours": 1.2567, "text": "After quite some time Im finally done with the project. I spent quite a long time writing the README since I wanted it quite detailed and didn’t want to leave any information out. Additionally, I deployed my local host through streamlet’s community cloud and got it an actual URL. Growthcalc.streamlit.app. During the streamlit process I also learned the difference between owner controls such as editor, manage, and share. I also figured out the visitors POV as well. All in all, I had a lot of fun with this project and learned a lot finance wise and coding wise."}, {"post_id": 45582, "ts": "2026-08-12T05:19:26Z", "hours": 1.8889, "text": "I built probably my last tab, the Loan payoff Calculator. I had a LOTTTT of bugs with my formula and the overall persona of the concept. There was a confusing /$ display in a few places but I fixed it after some trouble. Apparently streamline treats $ the same way as st.write/st.errors/st.success. I also ended up building the amortization loop with monthly splits for fixed payment and interest based on the remaining balance. Im probably going to spend some time trying to turn this into a final website type project, which I’ve never done before."}, {"post_id": 44988, "ts": "2026-08-11T03:39:44Z", "hours": 4.4969, "text": "This is a big devlog post but I finished two more tabs: A retirement checker tab and a Tax advantage Comparison tab. For the retirement checker I aded the 4% rule comparison logic to it. During the coding I ran into many many bugs, one of them being a dollar sign error and I took rlly long to fix. Also I realized halfway through that the retirement mode was using the return rate and monthly contribution from another tab and it was messing everything up. For the tax advantage tab, I ran two columns where one is tax growth every year, and the other is taxes only at withdrawal. Making the tax loop was incredible hard and it took a long time. Additionally, for th equations themselves, it was all new information for me and I spent way too long writing the wrong equations over and over."}, {"post_id": 42973, "ts": "2026-08-07T23:35:21Z", "hours": 2.175, "text": "This is my first devlog for growthcalc. I’m basically making an investment calculator. The initial calculation will use compound interest logic with 4 sliders to predict future value of an investment. Along with the math I also added a chart which looks really cool and puts the growth into perspective."}]...
|
Title: GrowthCalc by @knightfallShashy | Stardance Title: GrowthCalc by @knightfallShashy | Stardance
Devlogs:
This is my first devlog for growthcalc. I’m basically making an investment calculator. The initial calculation will use compound interest logic with 4 sliders to predict future value of an investment. Along with the math I also added a chart which looks really cool and puts the growth into perspective.
This is a big devlog post but I finished two more tabs: A retirement checker tab and a Tax advantage Comparison tab. For the retirement checker I aded the 4% rule comparison logic to it. During the coding I ran into many many bugs, one of them being a dollar sign error and I took rlly long to fix. Also I realized halfway through that the retirement mode was using the return rate and monthly contribution from another tab and it was messing everything up. For the tax advantage tab, I ran two columns where one is tax growth every year, and the other is taxes only at withdrawal. Making the tax loop was incredible hard and it took a long time. Additionally, for th equations themselves, it was all new information for me and I spent way too long writing the wrong equations over and over.
I built probably my last tab, the Loan payoff Calculator. I had a LOTTTT of bugs with my formula and the overall persona of the concept. There was a confusing /$ display in a few places but I fixed it after some trouble. Apparently streamline treats $ the same way as st.write/st.errors/st.success. I also ended up building the amortization loop with monthly splits for fixed payment and interest based on the remaining balance. Im probably going to spend some time trying to turn this into a final website type project, which I’ve never done before.
After quite some time Im finally done with the project. I spent quite a long time writing the README since I wanted it quite detailed and didn’t want to leave any information out. Additionally, I deployed my local host through streamlet’s community cloud and got it an actual URL. Growthcalc.streamlit.app. During the streamlit process I also learned the difference between owner controls such as editor, manage, and share. I also figured out the visitors POV as well. All in all, I had a lot of fun with this project and learned a lot finance wise and coding wise.
Ships:
I made Growthcalc: a python written investment based calculator app. It has 4 different calculation metrics: an investment growth calculator, a retirement checker, a tax- advantaged vs taxable account comparison, and a loan payoff calculator. In general, the equations was probably the toughest part, understanding them and implementing them. Im really proud of going from nearly no python knowledge, to knowing how to use streamlit and work my way around functions. I also learned different financial concepts that I can use later down my life. Before people test my project they should know that it’s very interactive, try every single tab and basically enjoy. Have fun and look at how much your money can really grow....
|
1793541065.8090568
|
1793627465.8090568
|
|
44092
|
Physics Simulator by @jayeshsinghal | Stardance
|
jayeshsinghal
|
1
|
47.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-19T05:48:47Z", "hours": 47.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a physics simulator; it was challenging to make because a lot of the concepts necessary were new to me, especially implementing the math. But I learned a lot from building it, and I hope it’s enjoyed or useful!", "repo": "https://github.com/jsplaystore/physics-simulator", "demo": "https://frontend-iota-puce-93.vercel.app/"}]...
|
[{"post_id": 50110, "ts": "202 [{"post_id": 50110, "ts": "2026-08-19T05:35:04Z", "hours": 5.3539, "text": "OKAY – LAST DEVLOG… THIS ONE WAS A TRICKY ONE AND I’M excited to share what i’ve done! What I did was add a restitution index to the balls so they bounce more, and so you can compare weight of the balls to the bounciness of the balls combined with the gravity of different planets. Fun, right? What I also added was a little bit of an air resistance simulator which you can change for the whole environment (non-exclusive, the change above is exclusive) Some issues I encountered while building was that I accidentally broke the gravity while trying to do the restitution index and so I had to do some major debugging in that department, and I also messed up my dropdowns, which was an easier fix. I’m excited to ship this project! i hope you’ve enjoyed following along, and next project will be made soon!"}, {"post_id": 49297, "ts": "2026-08-18T01:11:49Z", "hours": 7.9428, "text": "Okay – Back from vacation… put a pretty hefty chunk of time in today! Forgot to do a halfway devlog again today, but I’ll make up for it later or tomorrow! I added a live physics readout And added the labels while making the gravity exclusive (like I said I would :D) ctx.font = \"11px sans-serif\"; ctx.fillStyle = \"#ffffff\"; ctx.textAlign = \"center\"; const label = `${ball.speed.toFixed(1)} m/s | ${ball.kinetic_energy.toFixed(1)} J`; ctx.fillText(label, ball.x, ball.y - ball.radius - 6); const line1 = `${ball.mass.toFixed(1)}kg @ ${ball.gravity.toFixed(1)}m/s²`; const line2 = `${ball.speed.toFixed(1)} m/s | ${ball.kinetic_energy.toFixed(1)} J`; ctx.fillText(line1, ball.x, ball.y - ball.radius - 18); ctx.fillText(line2, ball.x, ball.y - ball.radius - 6); } if (dragStart && dragCurrent) { some sample code for your liking.. no one commented on my last devlog, so if you have any ideas comment on this one. I have a couple QoL upgrades i’m going to make but then ship. Often feedback on my projects says that it doesn’t take the reviewer as long as it took me to code, and I completely understand that take, but personally, I am pretty new at coding, so I do take a lot of time debugging and understanding what I am coding, so just a little behind-the-scenes! Oh yeah, also a sweet little speed indicator!"}, {"post_id": 47774, "ts": "2026-08-15T22:52:19Z", "hours": 6.0628, "text": "Okay – I added a little fun feature where you can build walls and have the balls bounce off of it! It’s late, so expect a more detailed devlog and more on-track stuff after I get back from vacation! See ya!"}, {"post_id": 47588, "ts": "2026-08-15T15:53:01Z", "hours": 8.5336, "text": "Okay – 8 and half hours of work done… (I forgot to post a devlog between when I stopped and restarted working, whoops) I had fun with this one haha What i added: Slider to change the gravity (total, changes for all current objects) Slider to change the ball weight/size/mass (local and exclusive) Back on track. This was fun because I’ve never done anything of the sort, so here’s a bit of what I wrote: PX_PER_M = 100 # scale factor from real-world m/s^2 to our pixel-space gravityEARTH_GRAVITY = 9.8 * PX_PER_MPLANET_GRAVITY_MS2 = { “mercury”: 3.7, “venus”: 8.87, “earth”: 9.8, “moon”: 1.62, “mars”: 3.71, “jupiter”: 24.79, “saturn”: 10.44, “uranus”: 8.69, “neptune”: 11.15, “pluto”: 0.62,}RESTITUTION = 0.8 # energy kept on bounceMAX_BALLS = 8BASE_RADIUS = 15RADIUS_PER_MASS = 5 (i’ll add screenshots so the text is clearer) class Ball: def init (self, x, y, vx=0.0, vy=0.0, mass=1.0): self.x = x self.y = y self.vx = vx self.vy = vy self.mass = mass self.radius = BASE_RADIUS + RADIUS_PER_MASS * mass def state(self): return {\"x\": self.x, \"y\": self.y, \"radius\": self.radius, \"mass\": self.mass} class World: def init (self, width, height, gravity=EARTH_GRAVITY): self.width = width self.height = height self.gravity = gravity self.balls = [Ball(x=width / 2, y=height / 4)] def set_gravity(self, gravity): self.gravity = gravity def launch(self, x, y, vx, vy, mass=1.0): if len(self.balls) >= MAX_BALLS: self.balls.pop(0) self.balls.append(Ball(x=x, y=y, vx=vx, vy=vy, mass=mass)) def step(self, dt): for ball in self.balls: ball.vy += self.gravity * dt ball.x += ball.vx * dt ball.y += ball.vy * dt floor = self.height - ball.radius ceiling = ball.radius if ball.y > floor: ball.y = floor ball.vy = -ball.vy * RESTITUTION elif ball.y < ceiling: ball.y = ceiling ball.vy = -ball.vy * RESTITUTION left = ball.radius right = self.width - ball.radius if ball.x < left: ball.x = left ball.vx = -ball.vx * RESTITUTION elif ball.x > right: ball.x = right ball.vx = -ball.vx * RESTITUTION self.resolve_collisions() What I plan to do: Add different shapes (not really important tho) add backgrounds add labels for the details of each ball whcih will bleed into making the gravitas exclusive as well. Let me know if you have any ideas!"}, {"post_id": 47212, "ts": "2026-08-14T23:43:30Z", "hours": 6.1786, "text": "Okay Devlog #3 i think… Anyway, I’ve been on vacation (and still am) but started doign some work. Here’s what i’ve done: I’ve added a small little fun pool type feature where you can add different balls and have them bounce off of each other (a little off track, yes, but I found it fun to implement and use)! Its great! Short devlog because its late, but heres what I plan to implement: Customizable gravity Maybe different shapes and weights Sliders"}, {"post_id": 42448, "ts": "2026-08-07T05:19:34Z", "hours": 7.8814, "text": "Okay Devlog #2: I’ve taken a little bit of a different fork, and I’ve implemented a feature where you can launch the ball around the screen so you can feel the physics for yourself. This took quite a while to get right because it isn’t binary like the first version. I added 360 deg collisions and a line drawing tool to adjust strength and direction, sort of like a pool game. Going to work on customization in the future. It’s late, so this isn’t as detailed as I’d like but screenshots are attached below. Not sure if I can upload screen recordings, but I would for the next time."}, {"post_id": 41678, "ts": "2026-08-06T01:35:57Z", "hours": 4.8661, "text": "Uhh Devlog #1 FOR THIS NEW PROJECT1 Spent some good time on hit heres what I have so far. Firstly, I got FAST API working. just ofr a little backend I also got a simple bouncing ball working drawn using JavaScript. Added SS below. Next I want to work on being able to change the gravity parameters of the ball, then adding different envs and items."}]...
|
Title: Physics Simulator by @jayeshsinghal | Stard Title: Physics Simulator by @jayeshsinghal | Stardance
Devlogs:
Uhh Devlog #1 FOR THIS NEW PROJECT1 Spent some good time on hit heres what I have so far. Firstly, I got FAST API working. just ofr a little backend I also got a simple bouncing ball working drawn using JavaScript. Added SS below. Next I want to work on being able to change the gravity parameters of the ball, then adding different envs and items.
Okay Devlog #2: I’ve taken a little bit of a different fork, and I’ve implemented a feature where you can launch the ball around the screen so you can feel the physics for yourself. This took quite a while to get right because it isn’t binary like the first version. I added 360 deg collisions and a line drawing tool to adjust strength and direction, sort of like a pool game. Going to work on customization in the future. It’s late, so this isn’t as detailed as I’d like but screenshots are attached below. Not sure if I can upload screen recordings, but I would for the next time.
Okay Devlog #3 i think… Anyway, I’ve been on vacation (and still am) but started doign some work. Here’s what i’ve done: I’ve added a small little fun pool type feature where you can add different balls and have them bounce off of each other (a little off track, yes, but I found it fun to implement and use)! Its great! Short devlog because its late, but heres what I plan to implement: Customizable gravity Maybe different shapes and weights Sliders
Okay – 8 and half hours of work done… (I forgot to post a devlog between when I stopped and restarted working, whoops) I had fun with this one haha What i added: Slider to change the gravity (total, changes for all current objects) Slider to change the ball weight/size/mass (local and exclusive) Back on track. This was fun because I’ve never done anything of the sort, so here’s a bit of what I wrote: PX_PER_M = 100 # scale factor from real-world m/s^2 to our pixel-space gravityEARTH_GRAVITY = 9.8 * PX_PER_MPLANET_GRAVITY_MS2 = { “mercury”: 3.7, “venus”: 8.87, “earth”: 9.8, “moon”: 1.62, “mars”: 3.71, “jupiter”: 24.79, “saturn”: 10.44, “uranus”: 8.69, “neptune”: 11.15, “pluto”: 0.62,}RESTITUTION = 0.8 # energy kept on bounceMAX_BALLS = 8BASE_RADIUS = 15RADIUS_PER_MASS = 5 (i’ll add screenshots so the text is clearer) class Ball: def init (self, x, y, vx=0.0, vy=0.0, mass=1.0): self.x = x self.y = y self.vx = vx self.vy = vy self.mass = mass self.radius = BASE_RADIUS + RADIUS_PER_MASS * mass def state(self): return {"x": self.x, "y": self.y, "radius": self.radius, "mass": self.mass} class World: def init (self, width, height, gravity=EARTH_GRAVITY): self.width = width self.height = height self.gravity = gravity self.balls = [Ball(x=width / 2, y=height / 4)] def set_gravity(self, gravity): self.gravity = gravity def launch(self, x, y, vx, vy, mass=1.0): if len(self.balls) >= MAX_BALLS: self.balls.pop(0) self.balls.append(Ball(x=x, y=y, vx=vx, vy=vy, mass=mass)) def step(self, dt): for ball in self.balls: ball.vy += self.gravity * dt ball.x += ball.vx * dt ball.y += ball.vy * dt floor = self.height - ball.radius ceiling = ball.radius if ball.y > floor: ball.y = floor ball.vy = -ball.vy * RESTITUTION elif ball.y < ceiling: ball.y = ceiling ball.vy = -ball.vy * RESTITUTION left = ball.radius right = self.width - ball.radius if ball.x < left: ball.x = left ball.vx = -ball.vx * RESTITUTION elif ball.x > right: ball.x = right ball.vx = -ball.vx * RESTITUTION self.resolve_collisions() What I plan to do: Add different shapes (not really important tho) add backgrounds add labels for the details of each ball whcih will bleed into making the gravitas exclusive as well. Let me know if you have any ideas!
Okay – I added a little fun feature where you can build walls and have the balls bounce off of it! It’s late, so expect a more detailed devlog and more on-track stuff after I get back from vacation! See ya!
Okay – Back from vacation… put a pretty hefty chunk of time in today! Forgot to do a halfway devlog again today, but I’ll make up for it later or tomorrow! I added a live physics readout And added the labels while making the gravity exclusive (like I said I would :D) ctx.font = "11px sans-serif"; ctx.fillStyle = "#ffffff"; ctx.textAlign = "center"; const label = `${ball.speed.toFixed(1)} m/s | ${ball.kinetic_energy.toFixed(1)} J`; ctx.fillText(label, ball.x, ball.y - ball.radius - 6); const line1 = `${ball.mass.toFixed(1)}kg @ ${ball.gravity.toFixed(1)}m/s²`; const line2 = `${ball.speed.toFixed(1)} m/s | ${ball.kinetic_energy.toFixed(1)} J`; ctx.fillText(line1, ball.x, ball.y - ball.radius - 18); ctx.fillText(line2, ball.x, ball.y - ball.radius - 6); } if (dragStart && dragCurrent) { some sample code for your liking.. no one commented on my last devlog, so if you have any ideas comment on this one. I have a couple QoL upgrades i’m going to make but then ship. Often feedback on my projects says that it doesn’t take the reviewer as long as it took me to code, and I completely understand that take, but personally, I am pretty new at coding, so I do take a lot of time debugging and understanding what I am coding, so just a little behind-the-scenes! Oh yeah, also a sweet little speed indicator!
OKAY – LAST DEVLOG… THIS ONE WAS A TRICKY ONE AND I’M excited to share what i’ve done! What I did was add a restitution index to the balls so they bounce more, and so you can compare weight of the balls to the bounciness of the balls combined with the gravity of different planets. Fun, right? What I also added was a little bit of an air resistance simulator which you can change for the whole environment (non-exclusive, the change above is exclusive) Some issues I encountered while building was that I accidentally broke the gravity while trying to do the restitution index and so I had to do some major debugging in that department, and I also messed up my dropdowns, which was an easier fix. I’m excited to ship this project! i hope you’ve enjoyed following along, and next project will be made soon!
Ships:
I made a physics simulator; it was challenging to make because a lot of the concepts necessary were new to me, especially implementing the math. But I learned a lot from building it, and I hope it’s enjoyed or useful!...
|
1792878769.85204
|
1793742769.85204
|
|
44094
|
Quantum Mechanical Model of An Atom in Python by @ Quantum Mechanical Model of An Atom in Python by @dionysus | Stardance...
|
dionysus
|
1
|
4.0
|
34
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-09T07:28:26Z", "hours": 4.0, "multiplier": 8.57, "payout": 34, "blessing": "neutral", "text": "Li²⁺ Quantum Mechanical Simulator I made an interactive quantum mechanical simulator using pure Python, using Numpy, SciPy, Matplotlib, and Numba! It replicates the electron wavefunctions of hydrogen and presents the probability distributions, wavefunctions, quantum nodes, and energy levels. The toughest aspect of the project was getting to grips with the mathematics underlying the wavefunctions and quantum states, as well as visualizing the model effectively onto a 3D plane. The part of the project that makes me the most proud this time was that I converted scientific theories and equation that normally exist on the paper of quantum mechanics into an object that you can actually see and engage with. All the components, such as wave functions, probabilities have been calculated using Python programming language. P.S. this REALLLYYY helped me in chemistry in school as I mostly used the information I knew beforehand in class. (yes they teach us this in chem here, yes im in highschool)", "repo": "https://github.com/dionysus887/Quantum-Model-Of-An-Atom", "demo": "https://github.com/dionysus887/Quantum-Model-Of-An-Atom/releases/tag/v.0.1"}]...
|
[{"post_id": 64642, "ts": "202 [{"post_id": 64642, "ts": "2026-09-09T06:26:15Z", "hours": 1.0597, "text": "QUANTUM MODEL OF AN ATOM #Devlog-3 No words people its finally done"}, {"post_id": 50273, "ts": "2026-08-19T13:02:25Z", "hours": 1.9153, "text": "QUANTUM MODEL OF AN ATOM #Devlog-2 Howdy everyone! sorry for the long break, i was busy and all because school 😭 and they give so much work omg! SOOO yeahh im back because the alpha never dies So this time i added more things and removed some things for the simulation. Tasks done today in the code: ** added multiple orbitals ** added density threshold ** numba optimization ** keyboard controls ** monte carlo probability sampling ** removed the basic single orbital only limitation MAY OUR PROJECT GO WELL COMRADE! ARRIVEDERCI! also the tony montana pfp is so sick lolz"}, {"post_id": 41753, "ts": "2026-08-06T04:37:39Z", "hours": 0.9589, "text": "QUANTUM MODEL OF AN ATOM #Devlog-1 Howdy everyone! im back with another simulation (calm down my fans.. wait i dont have fans no one knows me…nvm) SORRY FOR THE INTERNAL MONOLOGUE IM JS A DRAMATIC TEENAGER IRWEYUVREWNYUEWR… wait thats wayyy too energetic.. AHEM AHEM! this is better! So first things first this model is going to be of a Li²⁺ ion since its a hydrogen atom like species and would be easier to simulate and yep! Tasks done today in the code: ** made a cartesian grid ** used the cartesian coordinates as spherical coordinates (r, θ, φ) ** normalized the wave function ** computed the probability density ** displayed a 3d scatter plot of the 1s orbital P.S. THE CODE ONLY SHOWS THE 1s ORBITAL AS OF NOW! yes the code is OUR code comrade"}]...
|
Title: Quantum Mechanical Model of An Atom in Pyth Title: Quantum Mechanical Model of An Atom in Python by @dionysus | Stardance
Devlogs:
QUANTUM MODEL OF AN ATOM #Devlog-1 Howdy everyone! im back with another simulation (calm down my fans.. wait i dont have fans no one knows me…nvm) SORRY FOR THE INTERNAL MONOLOGUE IM JS A DRAMATIC TEENAGER IRWEYUVREWNYUEWR… wait thats wayyy too energetic.. AHEM AHEM! this is better! So first things first this model is going to be of a Li²⁺ ion since its a hydrogen atom like species and would be easier to simulate and yep! Tasks done today in the code: ** made a cartesian grid ** used the cartesian coordinates as spherical coordinates (r, θ, φ) ** normalized the wave function ** computed the probability density ** displayed a 3d scatter plot of the 1s orbital P.S. THE CODE ONLY SHOWS THE 1s ORBITAL AS OF NOW! yes the code is OUR code comrade
QUANTUM MODEL OF AN ATOM #Devlog-2 Howdy everyone! sorry for the long break, i was busy and all because school 😭 and they give so much work omg! SOOO yeahh im back because the alpha never dies So this time i added more things and removed some things for the simulation. Tasks done today in the code: ** added multiple orbitals ** added density threshold ** numba optimization ** keyboard controls ** monte carlo probability sampling ** removed the basic single orbital only limitation MAY OUR PROJECT GO WELL COMRADE! ARRIVEDERCI! also the tony montana pfp is so sick lolz
QUANTUM MODEL OF AN ATOM #Devlog-3 No words people its finally done
Ships:
Li²⁺ Quantum Mechanical Simulator I made an interactive quantum mechanical simulator using pure Python, using Numpy, SciPy, Matplotlib, and Numba! It replicates the electron wavefunctions of hydrogen and presents the probability distributions, wavefunctions, quantum nodes, and energy levels. The toughest aspect of the project was getting to grips with the mathematics underlying the wavefunctions and quantum states, as well as visualizing the model effectively onto a 3D plane. The part of the project that makes me the most proud this time was that I converted scientific theories and equation that normally exist on the paper of quantum mechanics into an object that you can actually see and engage with. All the components, such as wave functions, probabilities have been calculated using Python programming language. P.S. this REALLLYYY helped me in chemistry in school as I mostly used the information I knew beforehand in class. (yes they teach us this in chem here, yes im in highschool)...
|
1793339781.1475585
|
1793426181.1475585
|
|
44095
|
My own site! by @Resk | Stardance
|
Resk
|
1
|
3.54
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-07T13:47:53Z", "hours": 0.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made my personal site the most challenging thing was coding on mobile I’m proud that I made this much on mobile.", "repo": "https://github.com/VanshWebDevloper/Resk-s-Site", "demo": "https://vanshwebdevloper.github.io/Resk-s-Site/"}]...
|
[{"post_id": 44619, "ts": "202 [{"post_id": 44619, "ts": "2026-08-10T14:47:26Z", "hours": 3.5361, "text": "I have made my best interective personal site read my Readme.md and image letter at ending section for more info also its fully coded on mobile"}, {"post_id": 42472, "ts": "2026-08-07T07:07:48Z", "hours": 0.0, "text": "I’m done my personal site✅"}, {"post_id": 41799, "ts": "2026-08-06T06:54:33Z", "hours": 0.0, "text": "I’m making my personal site 🖥️"}]...
|
Title: My own site! by @Resk | Stardance
Devlogs: Title: My own site! by @Resk | Stardance
Devlogs:
I’m making my personal site 🖥️
I’m done my personal site✅
I have made my best interective personal site read my Readme.md and image letter at ending section for more info also its fully coded on mobile
Ships:
I made my personal site the most challenging thing was coding on mobile I’m proud that I made this much on mobile....
|
1793332575.7673585
|
1793418975.7673585
|
|
44105
|
My own site! by @pancakse | Stardance
|
pancakse
|
1
|
2.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-05T18:02:57Z", "hours": 2.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made my own website without completely AI generating it! The most challenging part was Javascript its super annoying to use!", "repo": "https://github.com/ItzPancakse/website", "demo": "https://pancakse.dev"}]...
|
[{"post_id": 41451, "ts": "202 [{"post_id": 41451, "ts": "2026-08-05T17:44:42Z", "hours": 0.5225, "text": "So i added projects"}, {"post_id": 41215, "ts": "2026-08-05T09:24:06Z", "hours": 0.5572, "text": "Ive added buttons and themed them"}, {"post_id": 41191, "ts": "2026-08-05T07:45:28Z", "hours": 0.6, "text": "So I’ve managed to get a theme and a font! :D"}]...
|
Title: My own site! by @pancakse | Stardance
Devl Title: My own site! by @pancakse | Stardance
Devlogs:
So I’ve managed to get a theme and a font! :D
Ive added buttons and themed them
So i added projects
Ships:
I made my own website without completely AI generating it! The most challenging part was Javascript its super annoying to use!...
|
1793408165.1674085
|
1793494565.1674085
|
|
44109
|
Cozy Farm by @Irtaza | Stardance
|
Irtaza
|
1
|
18.0
|
264
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-20T14:13:05Z", "hours": 18.0, "multiplier": 14.58, "payout": 264, "blessing": "neutral", "text": "I made a cozy farming simulation game! Raise chickens, collect eggs, and sell them for money! And repeat. You can also hire workers to collect eggs for you! And expand your farm using the money you make!", "repo": "https://github.com/Irtaza2009/Cozy-Farm", "demo": "https://irtaza.itch.io/cozy-farm"}]...
|
[{"post_id": 71217, "ts": "202 [{"post_id": 71217, "ts": "2026-09-20T13:57:58Z", "hours": 0.3767, "text": "Decided to finally ship the game! And updated the itch.io page! Also manually updated the index.html build file produced by Unity to remove the footer and make the fullscreen button an overlay. BTW, the game looks best in full screen, so try it in full screen when playing it!"}, {"post_id": 65797, "ts": "2026-09-11T05:29:35Z", "hours": 2.1333, "text": "I added bridges between islands! I also tried to play around with colliders and physics shapes in the Unity Sprite Editor, and I tried to automate the boundary colliders of a tilemap, but it didn’t work. I guess I will have to manually place objects around the islands to make a boundary… Also, I have disabled boat movement for now. I am thinking of just adding bridges between the islands…"}, {"post_id": 61567, "ts": "2026-09-04T15:25:33Z", "hours": 1.4067, "text": "I added a player which you can control to move around the island. And made a boat controller and manager, and now you can board, and control the boat and sail! Also a text pops up when you go near the boat, telling the player to press enter to board ship."}, {"post_id": 60242, "ts": "2026-09-02T14:19:04Z", "hours": 1.6783, "text": "Created a new home island! Also added some objects like rocks and weeds in the water, and improved the water animations. And added an animated docked boat! I am planning for this to be the main scene of the game, and then you use the boat to get to the chicken farm and other farms that I might add in the future. Will add sailing in the boat next!"}, {"post_id": 58816, "ts": "2026-08-31T12:17:59Z", "hours": 1.2, "text": "Added icons to the left menu for eggs, coins and chickens!! Also updated the shapes of the chicken, worker and hen house colliders, (so they aren’t exactly the size of the characters, but a bit smaller)"}, {"post_id": 57283, "ts": "2026-08-29T12:06:20Z", "hours": 3.5225, "text": "Made an auto controller for the worker rabbit. Now you can hire the worker, and it can auto-collect eggs. It detects and moves towards an egg (only up, down, left or right movement. No diagonal, as it didn’t look good), and collects it on collision. Also, when there is no egg nearby, it can randomly choose between wandering or idle behaviour/animations! Also revamped the shop UI to make space for the hire button, and changed the button sizes and layout."}, {"post_id": 44473, "ts": "2026-08-10T07:50:50Z", "hours": 3.1283, "text": "I added a worker (rabbit), with 4 idle animations and 4 move animations! It ignores collisions with chickens and eggs, and has a sorting layer script so it can appear behind or in front of other sprites correctly. Will make it move automatically in the next update so you don’t have to control it, and also make it auto-collect eggs."}, {"post_id": 42895, "ts": "2026-08-07T21:02:29Z", "hours": 2.9161, "text": "Added zoom functionality! Now you can zoom in or out using the scroll wheel or pinching. And added some islands spelling out “IRT” (just for fun!). Also made the tutorial only load on the player’s first time playing. I also found out that eggs weren’t spawning on the expanded island, so I fixed that by updating the boundaries I had hard-coded."}, {"post_id": 41163, "ts": "2026-08-05T06:11:23Z", "hours": 1.7208, "text": "Started working on making an interactive tutorial! Made 4 steps: it teaches the player how to collect eggs, open the shop, sell the eggs, and get more chickens."}]...
|
Title: Cozy Farm by @Irtaza | Stardance
Devlogs:
Title: Cozy Farm by @Irtaza | Stardance
Devlogs:
Started working on making an interactive tutorial! Made 4 steps: it teaches the player how to collect eggs, open the shop, sell the eggs, and get more chickens.
Added zoom functionality! Now you can zoom in or out using the scroll wheel or pinching. And added some islands spelling out “IRT” (just for fun!). Also made the tutorial only load on the player’s first time playing. I also found out that eggs weren’t spawning on the expanded island, so I fixed that by updating the boundaries I had hard-coded.
I added a worker (rabbit), with 4 idle animations and 4 move animations! It ignores collisions with chickens and eggs, and has a sorting layer script so it can appear behind or in front of other sprites correctly. Will make it move automatically in the next update so you don’t have to control it, and also make it auto-collect eggs.
Made an auto controller for the worker rabbit. Now you can hire the worker, and it can auto-collect eggs. It detects and moves towards an egg (only up, down, left or right movement. No diagonal, as it didn’t look good), and collects it on collision. Also, when there is no egg nearby, it can randomly choose between wandering or idle behaviour/animations! Also revamped the shop UI to make space for the hire button, and changed the button sizes and layout.
Added icons to the left menu for eggs, coins and chickens!! Also updated the shapes of the chicken, worker and hen house colliders, (so they aren’t exactly the size of the characters, but a bit smaller)
Created a new home island! Also added some objects like rocks and weeds in the water, and improved the water animations. And added an animated docked boat! I am planning for this to be the main scene of the game, and then you use the boat to get to the chicken farm and other farms that I might add in the future. Will add sailing in the boat next!
I added a player which you can control to move around the island. And made a boat controller and manager, and now you can board, and control the boat and sail! Also a text pops up when you go near the boat, telling the player to press enter to board ship.
I added bridges between islands! I also tried to play around with colliders and physics shapes in the Unity Sprite Editor, and I tried to automate the boundary colliders of a tilemap, but it didn’t work. I guess I will have to manually place objects around the islands to make a boundary… Also, I have disabled boat movement for now. I am thinking of just adding bridges between the islands…
Decided to finally ship the game! And updated the itch.io page! Also manually updated the index.html build file produced by Unity to remove the footer and make the fullscreen button an overlay. BTW, the game looks best in full screen, so try it in full screen when playing it!
Ships:
I made a cozy farming simulation game! Raise chickens, collect eggs, and sell them for money! And repeat. You can also hire workers to collect eggs for you! And expand your farm using the money you make!...
|
1793339806.5949605
|
1793426206.5949605
|
|
44128
|
Extract - Chrome Colour Picker by @Shaarav4795 | S Extract - Chrome Colour Picker by @Shaarav4795 | Stardance...
|
Shaarav4795
|
1
|
6.0
|
26
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-12T08:12:35Z", "hours": 6.0, "multiplier": 8.36, "payout": 26, "blessing": "neutral", "text": "I made Extract, a simple Chrome extension that lets users select a colour anywhere and copy its HEX, RGB, HSV and CMYK values. Overall, this is a really simple project hence the little amount of devlogs and I only spent 6hrs on this… (it would have been around 5 but the damned eyedropper took soo long) Normally I wouldn’t even make a project as simple as this, but I felt the need for such an extension so I built my own and submitted it here. Hope you guys like it :)", "repo": "https://github.com/Shaarav4795/Extract", "demo": "https://github.com/Shaarav4795/Extract/releases/download/v1.0.0/Extract.zip"}]...
|
[{"post_id": 45615, "ts": "202 [{"post_id": 45615, "ts": "2026-08-12T07:03:34Z", "hours": 0.6883, "text": "I made the README.md and I made the Github Release as well (as a ZIP file of course)… There’s not much else to say here except how are my last 2 devlogs the same time??? like lol what are the chances of that ._."}, {"post_id": 45118, "ts": "2026-08-11T12:16:57Z", "hours": 2.7147, "text": "I made the colour picker actually work now…. so for some reason this took wayyy longer than it shouldve because the eyedropper API was so annoying to use and I gebuinely felt like trying another approach…. but after making that work, and also making dark mode work (including inverting the extension icon in the header) I also got the recent colour list working and I used the colour conversion logic from Formatly (my previous project) to convert between different formats of colours via I finally got the colour picker working. For some reason this took way longer than it should have, because the Eyedropper API was so annoying to use, and I genuinely felt like trying another approach. After getting that working, and also implementing dark mode(including inverting the extension icon in the header bcz it looked bad without it ngl)I also got the recent colour list working. I used the colour conversion logic from Formatly to convert between different colour formats via a dropdown (yes yes excellent UX frfr)"}, {"post_id": 44461, "ts": "2026-08-10T07:04:35Z", "hours": 2.7053, "text": "I initialised a React +vite project (normally I use Next.js, but it felt overkill for such a simple tool) and then scaffolded the UI and made the extension’s icon. To make the icon I decided to use Canva, as it was an easy process, and I exported it as an svg so I can manipulate it easily. As for the UI, I decided to use elements and styling from my previous project (Formatly), as people really liked it, but I also added a dark mode button because that was some feedback I had gotten."}]...
|
Title: Extract - Chrome Colour Picker by @Shaarav4 Title: Extract - Chrome Colour Picker by @Shaarav4795 | Stardance
Devlogs:
I initialised a React +vite project (normally I use Next.js, but it felt overkill for such a simple tool) and then scaffolded the UI and made the extension’s icon. To make the icon I decided to use Canva, as it was an easy process, and I exported it as an svg so I can manipulate it easily. As for the UI, I decided to use elements and styling from my previous project (Formatly), as people really liked it, but I also added a dark mode button because that was some feedback I had gotten.
I made the colour picker actually work now…. so for some reason this took wayyy longer than it shouldve because the eyedropper API was so annoying to use and I gebuinely felt like trying another approach…. but after making that work, and also making dark mode work (including inverting the extension icon in the header) I also got the recent colour list working and I used the colour conversion logic from Formatly (my previous project) to convert between different formats of colours via I finally got the colour picker working. For some reason this took way longer than it should have, because the Eyedropper API was so annoying to use, and I genuinely felt like trying another approach. After getting that working, and also implementing dark mode(including inverting the extension icon in the header bcz it looked bad without it ngl)I also got the recent colour list working. I used the colour conversion logic from Formatly to convert between different colour formats via a dropdown (yes yes excellent UX frfr)
I made the README.md and I made the Github Release as well (as a ZIP file of course)… There’s not much else to say here except how are my last 2 devlogs the same time??? like lol what are the chances of that ._.
Ships:
I made Extract, a simple Chrome extension that lets users select a colour anywhere and copy its HEX, RGB, HSV and CMYK values. Overall, this is a really simple project hence the little amount of devlogs and I only spent 6hrs on this… (it would have been around 5 but the damned eyedropper took soo long) Normally I wouldn’t even make a project as simple as this, but I felt the need for such an extension so I built my own and submitted it here. Hope you guys like it :)...
|
1793541194.3019974
|
1793627594.3019974
|
|
44129
|
My own site! by @mons_reinus | Stardance
|
mons_reinus
|
1
|
2.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-16T18:27:22Z", "hours": 2.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made my own personal website, including my hobbies, current projects ect", "repo": "https://github.com/eestigamer69/personal_site", "demo": "https://eestigamer69.github.io/personal_site/"}]...
|
[{"post_id": 69271, "ts": "202 [{"post_id": 69271, "ts": "2026-09-16T18:25:14Z", "hours": 0.85, "text": "I basically finished what I wanted to accomplish. If I get any ideas I might add them in the future"}, {"post_id": 49065, "ts": "2026-08-17T17:38:48Z", "hours": 0.7472, "text": "I initalized making the site"}]...
|
Title: My own site! by @mons_reinus | Stardance
D Title: My own site! by @mons_reinus | Stardance
Devlogs:
I initalized making the site
I basically finished what I wanted to accomplish. If I get any ideas I might add them in the future
Ships:
I made my own personal website, including my hobbies, current projects ect...
|
1793339813.1805162
|
1793426213.1805162
|
|
44130
|
PollyGlot by @ahmdesmaill | Stardance
|
ahmdesmaill
|
1
|
6.0
|
38
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-08T17:53:31Z", "hours": 6.0, "multiplier": 6.02, "payout": 38, "blessing": "neutral", "text": "PollyGlot is a translation app that works with AI. You simple type what you want to translate, then hit the translate button. The website then makes an AI request to output the translation for you. The main goal from developing this website was mostly practicing integrating AI in projects rather than the translation itself. This can also justify why there’re only 3 languages in the website.", "repo": "https://github.com/ahmdesmaill/ai-translator", "demo": "https://pollyglot.ahmdesmaill.hackclub.app/"}]...
|
[{"post_id": 43431, "ts": "202 [{"post_id": 43431, "ts": "2026-08-08T17:47:45Z", "hours": 0.6303, "text": "Final Devlog! I deployed PollyGlot using Hack Club Nest and added some final details. I’m quite happy with the progress I made until now. It was kinda confusing as this is the first time I deploy a website with a backend (express)."}, {"post_id": 43279, "ts": "2026-08-08T13:27:33Z", "hours": 1.8386, "text": "Devlog #3 I finished creating the express backend logic for PollyGlot! Here’s the flow of the website: User enters input on the client and clicks translate. The backend validates input, then make an AI request using the OpenAI responses API. When the request finishes, the server responds to the client and display the translation on the frontend. I used the AI model openai/gpt-oss-20b through Groq’s free tier. My next step would probably be shipping & adding the final details to the GitHub repo."}, {"post_id": 42082, "ts": "2026-08-06T17:18:58Z", "hours": 2.1583, "text": "Devlog #2 Almost finished the design of PollyGlot! What I did: Worked on CSS properties to make the site render smoothly on wide screens. Made the website more accessible by using something called Semantic HTML. What I learnt: I learnt a little bit about radio inputs & AI integration, as this website will mainly use AI for its functionality."}, {"post_id": 41308, "ts": "2026-08-05T13:35:48Z", "hours": 1.6933, "text": "Started working on PollyGlot! I’m currently creating the HTML & CSS code, then I’ll move to JS logic It’s a simple translation tool that works with AI, I’m creating it mainly to practice integrating AI APIs & stuff like that as the core idea itself is pretty simple"}]...
|
Title: PollyGlot by @ahmdesmaill | Stardance
Devl Title: PollyGlot by @ahmdesmaill | Stardance
Devlogs:
Started working on PollyGlot! I’m currently creating the HTML & CSS code, then I’ll move to JS logic It’s a simple translation tool that works with AI, I’m creating it mainly to practice integrating AI APIs & stuff like that as the core idea itself is pretty simple
Devlog #2 Almost finished the design of PollyGlot! What I did: Worked on CSS properties to make the site render smoothly on wide screens. Made the website more accessible by using something called Semantic HTML. What I learnt: I learnt a little bit about radio inputs & AI integration, as this website will mainly use AI for its functionality.
Devlog #3 I finished creating the express backend logic for PollyGlot! Here’s the flow of the website: User enters input on the client and clicks translate. The backend validates input, then make an AI request using the OpenAI responses API. When the request finishes, the server responds to the client and display the translation on the frontend. I used the AI model openai/gpt-oss-20b through Groq’s free tier. My next step would probably be shipping & adding the final details to the GitHub repo.
Final Devlog! I deployed PollyGlot using Hack Club Nest and added some final details. I’m quite happy with the progress I made until now. It was kinda confusing as this is the first time I deploy a website with a backend (express).
Ships:
PollyGlot is a translation app that works with AI. You simple type what you want to translate, then hit the translate button. The website then makes an AI request to output the translation for you. The main goal from developing this website was mostly practicing integrating AI in projects rather than the translation itself. This can also justify why there’re only 3 languages in the website....
|
1793408181.3964355
|
1793494581.3964355
|
|
44142
|
Why is my Slack ID v2 by @inw | Stardance
|
inw
|
1
|
5.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-04T00:35:53Z", "hours": 5.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a Slack bot that generates far fetched explanations for the characters in your Slack ID! To test this you just go to the #why-is-my-slack-id channel and send any message and it should hopefully work.", "repo": "https://github.com/ingoau/why-is-my-slack-id", "demo": "https://hackclub.enterprise.slack.com/archives/C0AF8SA49J8"}]...
|
[{"post_id": 61192, "ts": "202 [{"post_id": 61192, "ts": "2026-09-04T00:25:54Z", "hours": 0.6406, "text": "Error handling and rate limiting time… Also fixed some other bugs and deployed!"}, {"post_id": 60870, "ts": "2026-09-03T14:52:56Z", "hours": 0.275, "text": "It’s almost finished! Just need to do some error handling and rate limiting and it’s done!"}, {"post_id": 60864, "ts": "2026-09-03T14:24:06Z", "hours": 0.7253, "text": "Migrated over to Cursor SDK because I managed to get my OpenAI account deactivated. I think it’s turning out better actually, because I can use more models which seem to poke around the internet a lot more."}, {"post_id": 45785, "ts": "2026-08-12T14:18:22Z", "hours": 0.7272, "text": "It finally works! I’m also sending profile fields now so less data needs to be discovered by the agent. I now just have to do rate limiting, error handling, etc, etc that kinda stuff, and deploy it and I’ll be done!"}, {"post_id": 45748, "ts": "2026-08-12T13:17:07Z", "hours": 0.8456, "text": "Got the status updates with processing working! Openrouter Typescript SDK sucks."}, {"post_id": 45726, "ts": "2026-08-12T12:24:02Z", "hours": 0.3125, "text": "Got status updates working! Currently just truncates the agent output to 50 characters but I have plans for it"}, {"post_id": 45722, "ts": "2026-08-12T12:05:17Z", "hours": 0.3528, "text": "AYY IT WORKS! Finally got the agentic AI B2B SaaS part to work!"}, {"post_id": 44472, "ts": "2026-08-10T07:49:21Z", "hours": 1.1033, "text": "I am kinda annoyed. So basically I did some more work on this and it was going kinda well, but the Slack library I was using ( @Jolly ‘s slack.ts) doesn’t support the complete Slack API. Ok I’ll just use Bolt I guess. I set up a Bolt project and then realised that it doesn’t support Bun, the runtime I’m using… So now I’m considering just building it myself, using @slack /web-api and @slack /socket-mode. Or using Node with Bolt… And then I come across an old Bolt project, and uh… it’s using Bun? and it doesn’t work on my newly inited project?? idk slack is weird. future me problem. Time to start again…"}, {"post_id": 41216, "ts": "2026-08-05T09:26:10Z", "hours": 0.4331, "text": "Tried to decide between Deno and Bun for too long but eventually decided to go with Bun because I’m used to it. I’ve started the actually coding part now! Only basic functionality for now."}]...
|
Title: Why is my Slack ID v2 by @inw | Stardance
Title: Why is my Slack ID v2 by @inw | Stardance
Devlogs:
Tried to decide between Deno and Bun for too long but eventually decided to go with Bun because I’m used to it. I’ve started the actually coding part now! Only basic functionality for now.
I am kinda annoyed. So basically I did some more work on this and it was going kinda well, but the Slack library I was using ( @Jolly ‘s slack.ts) doesn’t support the complete Slack API. Ok I’ll just use Bolt I guess. I set up a Bolt project and then realised that it doesn’t support Bun, the runtime I’m using… So now I’m considering just building it myself, using @slack /web-api and @slack /socket-mode. Or using Node with Bolt… And then I come across an old Bolt project, and uh… it’s using Bun? and it doesn’t work on my newly inited project?? idk slack is weird. future me problem. Time to start again…
AYY IT WORKS! Finally got the agentic AI B2B SaaS part to work!
Got status updates working! Currently just truncates the agent output to 50 characters but I have plans for it
Got the status updates with processing working! Openrouter Typescript SDK sucks.
It finally works! I’m also sending profile fields now so less data needs to be discovered by the agent. I now just have to do rate limiting, error handling, etc, etc that kinda stuff, and deploy it and I’ll be done!
Migrated over to Cursor SDK because I managed to get my OpenAI account deactivated. I think it’s turning out better actually, because I can use more models which seem to poke around the internet a lot more.
It’s almost finished! Just need to do some error handling and rate limiting and it’s done!
Error handling and rate limiting time… Also fixed some other bugs and deployed!
Ships:
I made a Slack bot that generates far fetched explanations for the characters in your Slack ID! To test this you just go to the #why-is-my-slack-id channel and send any message and it should hopefully work....
|
1793458198.9587939
|
1793544598.9587939
|
|
44160
|
Voxlord by @Praknoor | Stardance
|
Praknoor
|
1
|
36.04
|
20
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-06T14:37:51Z", "hours": 16.0, "multiplier": 1.96, "payout": 20, "blessing": "neutral", "text": "so this is a game i made for fun, custum engine, made it by myself😭, it was made only for fun, hope u like it…. rn now the character selection doesn’t work, but u can skip it by just pressing enter", "repo": "https://github.com/GurnoorLog/Voxelord", "demo": "https://github.com/GurnoorLog/Voxelord/releases/tag/voxlord"}]...
|
[{"post_id": 65005, "ts": "202 [{"post_id": 65005, "ts": "2026-09-09T19:45:42Z", "hours": 4.8894, "text": "yoo gng improved the world, and the sky, added also a launch screen"}, {"post_id": 60324, "ts": "2026-09-02T16:35:46Z", "hours": 3.3658, "text": "improved the world and also added an mcp so u can play with ure llm(why did i add that? idk just for fun 😭😭😭😭😭😭)"}, {"post_id": 49771, "ts": "2026-08-18T18:10:35Z", "hours": 3.0428, "text": "yoo gng i have just added the the clouds, improved the sky, and the water , i am now working on the multiplayer side"}, {"post_id": 48375, "ts": "2026-08-16T18:13:24Z", "hours": 8.7394, "text": "yop gng jsut made improvmnet…made it more optimized, also improved the world lighthingh"}, {"post_id": 41251, "ts": "2026-08-05T10:49:28Z", "hours": 15.6686, "text": "yoo gng….so i made this game just for fun, maybe i will add also some backgroud track"}]...
|
Title: Voxlord by @Praknoor | Stardance
Devlogs:
Title: Voxlord by @Praknoor | Stardance
Devlogs:
yoo gng….so i made this game just for fun, maybe i will add also some backgroud track
yop gng jsut made improvmnet…made it more optimized, also improved the world lighthingh
yoo gng i have just added the the clouds, improved the sky, and the water , i am now working on the multiplayer side
improved the world and also added an mcp so u can play with ure llm(why did i add that? idk just for fun 😭😭😭😭😭😭)
yoo gng improved the world, and the sky, added also a launch screen
Ships:
so this is a game i made for fun, custum engine, made it by myself😭, it was made only for fun, hope u like it…. rn now the character selection doesn’t work, but u can skip it by just pressing enter...
|
1793436971.5302045
|
1793523371.5302045
|
|
44161
|
Linx by @tobias_pacal | Stardance
|
tobias_pacal
|
1
|
9.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-13T16:23:17Z", "hours": 9.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "i tried making my own router os based on openwrt but it didnt work out so its just proof of concept i bricked the router and it didnt want to comunicate with me :(", "repo": "https://github.com/tobiawspac/linx-router-os", "demo": "https://linx-router.boteda429.workers.dev/"}]...
|
[{"post_id": 46335, "ts": "202 [{"post_id": 46335, "ts": "2026-08-13T14:10:54Z", "hours": 5.9756, "text": "it was a failure :( it doesnt boot or react to serial tryed fixing it but cant upload even ai wasnt able to fix it"}, {"post_id": 41423, "ts": "2026-08-05T16:52:00Z", "hours": 3.3592, "text": "I bricked the router and this is the version of the firmware i made and it bricked"}]...
|
Title: Linx by @tobias_pacal | Stardance
Devlogs: Title: Linx by @tobias_pacal | Stardance
Devlogs:
I bricked the router and this is the version of the firmware i made and it bricked
it was a failure :( it doesnt boot or react to serial tryed fixing it but cant upload even ai wasnt able to fix it
Ships:
i tried making my own router os based on openwrt but it didnt work out so its just proof of concept i bricked the router and it didnt want to comunicate with me :(...
|
1792882073.6880136
|
1793746073.6880136
|
|
44163
|
Basic Linux Command Guide by @valtdaizora | Starda Basic Linux Command Guide by @valtdaizora | Stardance...
|
valtdaizora
|
1
|
1.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-17T21:25:43Z", "hours": 1.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a basic Linux command guide made for beginners or people who want to try Linux but don’t know where to start on the Terminal. I had some issues. so I asked AI for help like to make the slideshow and others. To learn these commands, You need to have something to test it on, like installed Linux, Live Boot, Virtual Machine or WSL (Windows Subsystem for Linux). You don’t need to know any previous commands to learn these cause they are beginner friendly.", "repo": "https://github.com/Valt-Daizora/linuxtips", "demo": "https://valt-daizora.github.io/linuxtips"}]...
|
[{"post_id": 49204, "ts": "202 [{"post_id": 49204, "ts": "2026-08-17T21:14:01Z", "hours": 0.3333, "text": "Devlog #2 To make it simple, I added a search bar and a copy-paste button."}, {"post_id": 41938, "ts": "2026-08-06T13:52:44Z", "hours": 0.2667, "text": "Devlog #1 This simple website is made for Linux beginners and Users who don’t know how to use the terminal. The website contains the basic Linux commands and Terminal shortcut that help you use Linux easier. Not that fancy but I believe it’s useful for a full beginner :)"}]...
|
Title: Basic Linux Command Guide by @valtdaizora | Title: Basic Linux Command Guide by @valtdaizora | Stardance
Devlogs:
Devlog #1 This simple website is made for Linux beginners and Users who don’t know how to use the terminal. The website contains the basic Linux commands and Terminal shortcut that help you use Linux easier. Not that fancy but I believe it’s useful for a full beginner :)
Devlog #2 To make it simple, I added a search bar and a copy-paste button.
Ships:
I made a basic Linux command guide made for beginners or people who want to try Linux but don’t know where to start on the Terminal. I had some issues. so I asked AI for help like to make the slideshow and others. To learn these commands, You need to have something to test it on, like installed Linux, Live Boot, Virtual Machine or WSL (Windows Subsystem for Linux). You don’t need to know any previous commands to learn these cause they are beginner friendly....
|
1793512332.914508
|
1793598732.914508
|
|
44186
|
Flask Othello by @vindognz | Stardance
|
vindognz
|
1
|
26.0
|
446
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-23T11:43:27Z", "hours": 26.0, "multiplier": 17.32, "payout": 446, "blessing": "neutral", "text": "I made a full Othello game you can simply play in the browser, using vanilla JS and Flask! It features online multiplayer, a CPU opponent, replays, spectating and much more. My biggest challenge was definitely the countless hours of debugging, and chasing AI optimisations which actually made it perform worse. I am super proud of how the entire project came together, but especially happy with how satisfying the tile flip animation + sound cascading effect turned out.", "repo": "https://github.com/vindognz/flask-othello", "demo": "https://othello.vindognz.hackclub.app/"}]...
|
[{"post_id": 72575, "ts": "202 [{"post_id": 72575, "ts": "2026-09-23T08:20:47Z", "hours": 3.1811, "text": "MY EIGHTH AND (hopefully) FINAL DEVLOG I THINK WE’RE SHIP READY. I spent these 3 hours doing a bunch of final polish. The AI now has three difficulty levels to pick from (Easy, Medium and Impossible). I also added some actual juice to the game. Pieces now make sounds when placed and captured, and buttons make a little click sound. I also added a little rules popup with a tiny board showing how the game works for those who don’t know :) I finally updated the README from my initial commit too! It now has the full project info, as well as instructions for running FlaskOthello locally. Everything else was just minor fixes / cleanup. FlaskOthello is officially feature complete. Time to ship! 🚢"}, {"post_id": 71670, "ts": "2026-09-21T08:46:58Z", "hours": 3.4522, "text": "My seventh devloggg I replaced the AI search that was array based with a full bitboard implementation. This means that the board state is now stored as two 64-bit integers instead of nested lists. We also now have transposition tables and alpha-beta with move ordering based on the TT too! This was lowkey not THAT much work, but there were SOOOO many bugs to fix. I tried a bunch of ‘optimisations’ that actually made the AI ~27% worse… In the end, we scored a 36% decrease in search time though! During this time, I did some test deployments to NEST for playtesting with my girlfriend. Turns out, running a Flask dev server in production is a bad idea 💀 I had WebSockets, hints, undo, and UI redesign in my todo list, but decided to scratch those to make sure I ship in time."}, {"post_id": 68874, "ts": "2026-09-15T22:43:34Z", "hours": 3.7547, "text": "Sixth Devlog! (IM LOWKEY REMEMBERING TO DO THESE) This one was heavy on AI modifications, but I also implemented a replay system! I added transposition tables to the AI, which allows it to reuse positions it has already searched, along with a BUNCH of benchmarking for comparing. I also changed the AI’s minimax search to make and undo moves in-place instead of constantly creating new OthelloBoard objects which was a BIG optimization. Now, about that replay system! Games now keep a full move history which allows you to rewatch your game after play. You can jump to the start/end, step through moves one by one, and hold the buttons to scrub through the game. Lastly, I improve the piece flip animations so captured pieces do a proper flip + many minor bug fixes / refactors."}, {"post_id": 67923, "ts": "2026-09-14T07:13:46Z", "hours": 5.91, "text": "Fifth devlog! (I KEEP FORGETTING TO DO THESE) SO much has happened. I added full Player vs CPU support, fixed a major bug where if the AI was black it never made a starting move + a crash from the AI “make a move” loop firing every 1.5s 💀 Draw offers and resignation have been added. For draws, either player can offer and the other can accept/decline, and the AI automatically responds to draw requests based on piece count. Resignation has a confirm dialog to prevent accidents. Games are now automatically archived when they conclude (read only game copy at /archive/<id> which you’re automatically redirected to if on a stale /game/<id> URL). I also added piece ‘flip’ animations for the tiles that just got captured, so you can easily tell which tiles have just been captured. And alongside all this, TONS of refactoring and bug fixes, including extracing common code into resolve_player() and serialize_game() functions, and a strings.js module for game status strings."}, {"post_id": 61156, "ts": "2026-09-03T22:37:30Z", "hours": 3.305, "text": "Fourth devlog!! Today I built the actual frontend with a landing page (pick black/white, creates a game and redirects you), a live board page which polls the backend every 1.5s, click to play on legal squares, and CSS of course (green board, yellow legal move outlines). Previously, when the player had no legal moves, the game would just stop and you’d be stuck. Now, your turn is automatically passed if you have no legal moves. Added last-move highlighting (red outline on the most recently placed piece, so it’s obvious where your opponent just played) and a proper game-over screen showing the winning colour and final tile count."}, {"post_id": 56245, "ts": "2026-08-27T22:32:56Z", "hours": 3.8075, "text": "Third devlog! (I forgot to devlog…) I fixed a bunch of serious bugs in the engine (illegal moves overwriting occupied tiles, allowing negative indexing of the board, and more). The minimax now scores wins/loses by token count, not positional advantage at the end of the game, and some documentation cleanup. I also started working on the Flask backend, which now features 4 API routes for creating and joining games, making your move, and calling for AI moves. I tested this thoroughly with cURL, so hopefully there aren’t any significant bugs!"}, {"post_id": 44584, "ts": "2026-08-10T13:20:11Z", "hours": 1.0883, "text": "My second devlog! It’s 1:17am right now, but I just finished implementing the most basic minimax algorithm possible, and it (miraculously) works! I even hacked together a quick CPU vs CPU prototype, and it plays all the way through without any bugs, crashes or other breakage. Goodnight 💀"}, {"post_id": 41886, "ts": "2026-08-06T11:58:03Z", "hours": 1.2464, "text": "First Devlog! I have a really bad habit of starting 12 projects and never shipping any of them… so I started yet another project! I loved playing Othello with my brother growing up, but we haven’t been able to play much anymore since I moved to uni. To solve this, I’m developing FlaskOthello in my free time, and I plan to add a minimax algorithm with alpha-beta pruning. The plan is a Python Flask backend, and a vanilla HTML + CSS + JS frontend, probably hosted on Github Pages. So far, I’ve made an OthelloBoard class, with a basic board representation, and most of the fundamental game logic (making moves, flipping opponent tiles, validity checks, etc.), and since my COSC class forces me to, I wrote a bunch of doctests out of habit… Next up: minimax algorithm + alpha-beta pruning!"}]...
|
Title: Flask Othello by @vindognz | Stardance
Dev Title: Flask Othello by @vindognz | Stardance
Devlogs:
First Devlog! I have a really bad habit of starting 12 projects and never shipping any of them… so I started yet another project! I loved playing Othello with my brother growing up, but we haven’t been able to play much anymore since I moved to uni. To solve this, I’m developing FlaskOthello in my free time, and I plan to add a minimax algorithm with alpha-beta pruning. The plan is a Python Flask backend, and a vanilla HTML + CSS + JS frontend, probably hosted on Github Pages. So far, I’ve made an OthelloBoard class, with a basic board representation, and most of the fundamental game logic (making moves, flipping opponent tiles, validity checks, etc.), and since my COSC class forces me to, I wrote a bunch of doctests out of habit… Next up: minimax algorithm + alpha-beta pruning!
My second devlog! It’s 1:17am right now, but I just finished implementing the most basic minimax algorithm possible, and it (miraculously) works! I even hacked together a quick CPU vs CPU prototype, and it plays all the way through without any bugs, crashes or other breakage. Goodnight 💀
Third devlog! (I forgot to devlog…) I fixed a bunch of serious bugs in the engine (illegal moves overwriting occupied tiles, allowing negative indexing of the board, and more). The minimax now scores wins/loses by token count, not positional advantage at the end of the game, and some documentation cleanup. I also started working on the Flask backend, which now features 4 API routes for creating and joining games, making your move, and calling for AI moves. I tested this thoroughly with cURL, so hopefully there aren’t any significant bugs!
Fourth devlog!! Today I built the actual frontend with a landing page (pick black/white, creates a game and redirects you), a live board page which polls the backend every 1.5s, click to play on legal squares, and CSS of course (green board, yellow legal move outlines). Previously, when the player had no legal moves, the game would just stop and you’d be stuck. Now, your turn is automatically passed if you have no legal moves. Added last-move highlighting (red outline on the most recently placed piece, so it’s obvious where your opponent just played) and a proper game-over screen showing the winning colour and final tile count.
Fifth devlog! (I KEEP FORGETTING TO DO THESE) SO much has happened. I added full Player vs CPU support, fixed a major bug where if the AI was black it never made a starting move + a crash from the AI “make a move” loop firing every 1.5s 💀 Draw offers and resignation have been added. For draws, either player can offer and the other can accept/decline, and the AI automatically responds to draw requests based on piece count. Resignation has a confirm dialog to prevent accidents. Games are now automatically archived when they conclude (read only game copy at /archive/<id> which you’re automatically redirected to if on a stale /game/<id> URL). I also added piece ‘flip’ animations for the tiles that just got captured, so you can easily tell which tiles have just been captured. And alongside all this, TONS of refactoring and bug fixes, including extracing common code into resolve_player() and serialize_game() functions, and a strings.js module for game status strings.
Sixth Devlog! (IM LOWKEY REMEMBERING TO DO THESE) This one was heavy on AI modifications, but I also implemented a replay system! I added transposition tables to the AI, which allows it to reuse positions it has already searched, along with a BUNCH of benchmarking for comparing. I also changed the AI’s minimax search to make and undo moves in-place instead of constantly creating new OthelloBoard objects which was a BIG optimization. Now, about that replay system! Games now keep a full move history which allows you to rewatch your game after play. You can jump to the start/end, step through moves one by one, and hold the buttons to scrub through the game. Lastly, I improve the piece flip animations so captured pieces do a proper flip + many minor bug fixes / refactors.
My seventh devloggg I replaced the AI search that was array based with a full bitboard implementation. This means that the board state is now stored as two 64-bit integers instead of nested lists. We also now have transposition tables and alpha-beta with move ordering based on the TT too! This was lowkey not THAT much work, but there were SOOOO many bugs to fix. I tried a bunch of ‘optimisations’ that actually made the AI ~27% worse… In the end, we scored a 36% decrease in search time though! During this time, I did some test deployments to NEST for playtesting with my girlfriend. Turns out, running a Flask dev server in production is a bad idea 💀 I had WebSockets, hints, undo, and UI redesign in my todo list, but decided to scratch those to make sure I ship in time.
MY EIGHTH AND (hopefully) FINAL DEVLOG I THINK WE’RE SHIP READY. I spent these 3 hours doing a bunch of final polish. The AI now has three difficulty levels to pick from (Easy, Medium and Impossible). I also added some actual juice to the game. Pieces now make sounds when placed and captured, and buttons make a little click sound. I also added a little rules popup with a tiny board showing how the game works for those who don’t know :) I finally updated the README from my initial commit too! It now has the full project info, as well as instructions for running FlaskOthello locally. Everything else was just minor fixes / cleanup. FlaskOthello is officially feature complete. Time to ship! 🚢
Ships:
I made a full Othello game you can simply play in the browser, using vanilla JS and Flask! It features online multiplayer, a CPU opponent, replays, spectating and much more. My biggest challenge was definitely the countless hours of debugging, and chasing AI optimisations which actually made it perform worse. I am super proud of how the entire project came together, but especially happy with how satisfying the tile flip animation + sound cascading effect turned out....
|
1793339828.2461064
|
1793426228.2461064
|
|
44192
|
one-sided keyboard by @zakorm | Stardance
|
zakorm
|
1
|
1.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-05T23:49:44Z", "hours": 1.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a one sided keyboard! Right now I am typing with only one hand! It helps a lot if you are moving the marker and typing something, and your right hand has to move from the keyboard to the mouse. Its also very fun to try! Now you can type in all the letters of the alphabet along with Delete and Enter. You can also type numbers, and capital letters with Shift+Caps. Very easy to use if you are on windows. It can be very useful for accessibility, like if someone only has one hand, or can’t type with the other.", "repo": "https://github.com/zakorm/one-side-keyboard", "demo": "https://drive.google.com/file/d/1JboOgAUtMJjkmE0oqGwpY8PUEebgl0qB/view?usp=sharing"}]...
|
[{"post_id": 41381, "ts": "202 [{"post_id": 41381, "ts": "2026-08-05T15:42:29Z", "hours": 1.3158, "text": "I made a macro! You only use your left hand to type and your right hand can stay on your mouse. to change mode to left hand only mode you press f9 and to shift your right hand keys to your left, hold caps lock. also capslock + g is delete and capslock + b is enter. heres it on drive: https://drive.google.com/file/d/1JboOgAUtMJjkmE0oqGwpY8PUEebgl0qB/view?usp=sharing"}]...
|
Title: one-sided keyboard by @zakorm | Stardance
Title: one-sided keyboard by @zakorm | Stardance
Devlogs:
I made a macro! You only use your left hand to type and your right hand can stay on your mouse. to change mode to left hand only mode you press f9 and to shift your right hand keys to your left, hold caps lock. also capslock + g is delete and capslock + b is enter. heres it on drive: https://drive.google.com/file/d/1JboOgAUtMJjkmE0oqGwpY8PUEebgl0qB/view?usp=sharing
Ships:
I made a one sided keyboard! Right now I am typing with only one hand! It helps a lot if you are moving the marker and typing something, and your right hand has to move from the keyboard to the mouse. Its also very fun to try! Now you can type in all the letters of the alphabet along with Delete and Enter. You can also type numbers, and capital letters with Shift+Caps. Very easy to use if you are on windows. It can be very useful for accessibility, like if someone only has one hand, or can’t type with the other....
|
1793436982.3491466
|
1793523382.3491466
|
|
44201
|
FFACore by @Polokalap | Stardance
|
Polokalap
|
1
|
21.09
|
135
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-11T15:21:54Z", "hours": 17.0, "multiplier": 9.06, "payout": 135, "blessing": "neutral", "text": "Minecraft FFA Plugin This is a Minecraft FFA plugin designed to make it easy to create and manage arenas where players can fight each other. The plugin comes with a variety of configurable options, including things like: Block-breaking permissions Arena regeneration times Arena-specific settings And other options to help customize how each arena works The goal was to keep the plugin as simple and minimal as possible. You can use it as the foundation for a complete FFA server, similar to servers like Stray.gg, especially when combined with NPC plugins and other server-side tools. I intentionally kept the plugin lightweight and didn’t add things like custom death messages. The idea is to provide the core functionality without adding unnecessary features or complexity. Requirements Server software: Paper 1.21.11 Java: Java 25 recommended You can get Paper from the official website: PaperMC Java versions lower than 25 should work in theory, although Java 25 is the version I personally use and recommend. Don’t want to set up a server? Watch this video! Yes I also hate AI, but I wanted to make this as easy to read and understand as possible. Unlike other people, I actually read the stuff it gave me.", "repo": "https://github.com/Polokalap/FFACore", "demo": "https://github.com/Polokalap/FFACore/releases/tag/v1.0"}]...
|
[{"post_id": 57510, "ts": "202 [{"post_id": 57510, "ts": "2026-08-29T17:55:26Z", "hours": 3.1914, "text": "Added filters :o Added a filter system that basically doesn’t allow the users to break, place or craft certain blocks."}, {"post_id": 53256, "ts": "2026-08-23T18:15:24Z", "hours": 0.8972, "text": "Message to the reviewer (image unreleated) EDIT!!!!!! In slack, they told this should be fine!!!"}, {"post_id": 44910, "ts": "2026-08-10T23:42:54Z", "hours": 0.5347, "text": "Cleaning up some stuff, edited readme"}, {"post_id": 44886, "ts": "2026-08-10T22:38:16Z", "hours": 3.6814, "text": "Added Combat System, Warps and Item Dropping option! The latest version includes a combat system. Here’s how it works: If a user is in an arena and attacks/is attacked by another player, they get tagged and cannot log on until it expires . The tag gets set to 30 seconds by default. This helps prevent combat logging , which is basically leaving from a fight to save your K/D ratio or items. If you log off while tagged, you die . Drop option You can now enable or disable if items should be dropped after death. Warps Users can now type /warp to warp to an arena. They cannot do that in combat to prevent combat logging."}, {"post_id": 42273, "ts": "2026-08-06T22:04:47Z", "hours": 0.4386, "text": "Added more options to arena editing Now you can access the arena adding options to the arena editing menu!"}, {"post_id": 42242, "ts": "2026-08-06T21:11:43Z", "hours": 0.2536, "text": "Added arena system! An arena system has been added that allows you to make arenas with: Block Break/Place permissions Block decay time Explosion Damage/Block breaking Map regeneration time When creating the arena, you need to select 2 points with a wand you get from the /selection-wand command. Then, you can type the /add-arena <name> command, that opens the menu you can view in the first picture. When you are done configuring the arena, you can click the Confirm button which saves the map as a schematic and creates the arena. If you want to edit the map, or you simply just want to regenerate it, you can enter the /arenas <name> command, which brings up the menu seen in the third image, or you can just simply type /arenas to open the menu seen in the second image, where you can browse the arenas. When editing an arena, currently you can only reset it, delete it and rename it. In a future update, I’ll add the other settings too. If you are wondering, yes this was written by me. I just use a frick ton of markdown, and like to format my messages. AI wasn’t used in this message at all."}, {"post_id": 42153, "ts": "2026-08-06T19:18:41Z", "hours": 11.6236, "text": "Still creating stuff, don’t worry! A big devlog will be created soon of how stuff works. I am just creating an arena system and don’t want to lose hours on it."}]...
|
Title: FFACore by @Polokalap | Stardance
Devlogs: Title: FFACore by @Polokalap | Stardance
Devlogs:
Still creating stuff, don’t worry! A big devlog will be created soon of how stuff works. I am just creating an arena system and don’t want to lose hours on it.
Added arena system! An arena system has been added that allows you to make arenas with: Block Break/Place permissions Block decay time Explosion Damage/Block breaking Map regeneration time When creating the arena, you need to select 2 points with a wand you get from the /selection-wand command. Then, you can type the /add-arena <name> command, that opens the menu you can view in the first picture. When you are done configuring the arena, you can click the Confirm button which saves the map as a schematic and creates the arena. If you want to edit the map, or you simply just want to regenerate it, you can enter the /arenas <name> command, which brings up the menu seen in the third image, or you can just simply type /arenas to open the menu seen in the second image, where you can browse the arenas. When editing an arena, currently you can only reset it, delete it and rename it. In a future update, I’ll add the other settings too. If you are wondering, yes this was written by me. I just use a frick ton of markdown, and like to format my messages. AI wasn’t used in this message at all.
Added more options to arena editing Now you can access the arena adding options to the arena editing menu!
Added Combat System, Warps and Item Dropping option! The latest version includes a combat system. Here’s how it works: If a user is in an arena and attacks/is attacked by another player, they get tagged and cannot log on until it expires . The tag gets set to 30 seconds by default. This helps prevent combat logging , which is basically leaving from a fight to save your K/D ratio or items. If you log off while tagged, you die . Drop option You can now enable or disable if items should be dropped after death. Warps Users can now type /warp to warp to an arena. They cannot do that in combat to prevent combat logging.
Cleaning up some stuff, edited readme
Message to the reviewer (image unreleated) EDIT!!!!!! In slack, they told this should be fine!!!
Added filters :o Added a filter system that basically doesn’t allow the users to break, place or craft certain blocks.
Ships:
Minecraft FFA Plugin This is a Minecraft FFA plugin designed to make it easy to create and manage arenas where players can fight each other. The plugin comes with a variety of configurable options, including things like: Block-breaking permissions Arena regeneration times Arena-specific settings And other options to help customize how each arena works The goal was to keep the plugin as simple and minimal as possible. You can use it as the foundation for a complete FFA server, similar to servers like Stray.gg, especially when combined with NPC plugins and other server-side tools. I intentionally kept the plugin lightweight and didn’t add things like custom death messages. The idea is to provide the core functionality without adding unnecessary features or complexity. Requirements Server software: Paper 1.21.11 Java: Java 25 recommended You can get Paper from the official website: PaperMC Java versions lower than 25 should work in theory, although Java 25 is the version I personally use and recommend. Don’t want to set up a server? Watch this video! Yes I also hate AI, but I wanted to make this as easy to read and understand as possible. Unlike other people, I actually read the stuff it gave me....
|
1793562587.6627548
|
1793648987.6627548
|
|
44205
|
Chill introductory website! by @Pampers | Stardanc Chill introductory website! by @Pampers | Stardance...
|
Pampers
|
1
|
11.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-13T11:57:33Z", "hours": 11.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a personal website (not including my real identity) that encapsulates my hobbies, inspirations, and aspirations! Some parts of it include my thoughts and opinions that hopefully inspire and give your current opinions with additional opinions from others (which is me)! To be fair, the challenging and AI-assisted part of this website is the animation because it wasn’t deeply discussed in my school’s programming subject. I’m very proud of the whole product because it is my first time publishing a full-fledged beginner website. It looks good to me as a first-time public project.", "repo": "https://github.com/Pammmmaela/testslackbot", "demo": "https://pammmmaela.github.io"}]...
|
[{"post_id": 46262, "ts": "202 [{"post_id": 46262, "ts": "2026-08-13T11:38:21Z", "hours": 3.5653, "text": "I finished my deep-sea introductory website! It feels so great that I finished it, especially the content! It’s a lot of debugging but honestly, worth the effort. You can visit the website by going through this project’s repository: https://pammmmaela.github.io Thank you!!"}, {"post_id": 44478, "ts": "2026-08-10T08:07:07Z", "hours": 1.3811, "text": "BUBBLES!! 🫧🫧🫧🫧🫧 I’m very proud of the outcome. I was able to learn how to use setInterval and setTimeout, and those were my challenges yesterday. I had to use Lambda functions to properly use those two. Edit: These are moving bubbles!!"}, {"post_id": 43983, "ts": "2026-08-09T13:55:13Z", "hours": 2.2606, "text": "Fixed how it looked upon clicking the start button! Tried to do multiple bubbles but will continue for another time."}, {"post_id": 43887, "ts": "2026-08-09T10:21:10Z", "hours": 1.8108, "text": "Added starting page for audio accessibility Also added a transition with ease animation for a calmer vibe instead of a quick, fast-paced one. Upon clicking the starting button you’re seeing below, it will lead to three options. The information, aspirations, and inspirations sections which lead to separate HTML files. Located at the top-right of the page, you will see your device’s date and time at the exact moment you viewed the site. For convenience, I’ll be using the same JavaScript and CSS files for those three different HTML files. I’m planning to add those floating bubbles on the page, either idle or not, to appeal to users with my taste for deep-sea aesthetics."}, {"post_id": 43797, "ts": "2026-08-09T07:01:44Z", "hours": 2.2322, "text": "The starting page of my personal website!"}]...
|
Title: Chill introductory website! by @Pampers | S Title: Chill introductory website! by @Pampers | Stardance
Devlogs:
The starting page of my personal website!
Added starting page for audio accessibility Also added a transition with ease animation for a calmer vibe instead of a quick, fast-paced one. Upon clicking the starting button you’re seeing below, it will lead to three options. The information, aspirations, and inspirations sections which lead to separate HTML files. Located at the top-right of the page, you will see your device’s date and time at the exact moment you viewed the site. For convenience, I’ll be using the same JavaScript and CSS files for those three different HTML files. I’m planning to add those floating bubbles on the page, either idle or not, to appeal to users with my taste for deep-sea aesthetics.
Fixed how it looked upon clicking the start button! Tried to do multiple bubbles but will continue for another time.
BUBBLES!! 🫧🫧🫧🫧🫧 I’m very proud of the outcome. I was able to learn how to use setInterval and setTimeout, and those were my challenges yesterday. I had to use Lambda functions to properly use those two. Edit: These are moving bubbles!!
I finished my deep-sea introductory website! It feels so great that I finished it, especially the content! It’s a lot of debugging but honestly, worth the effort. You can visit the website by going through this project’s repository: https://pammmmaela.github.io Thank you!!
Ships:
I made a personal website (not including my real identity) that encapsulates my hobbies, inspirations, and aspirations! Some parts of it include my thoughts and opinions that hopefully inspire and give your current opinions with additional opinions from others (which is me)! To be fair, the challenging and AI-assisted part of this website is the animation because it wasn’t deeply discussed in my school’s programming subject. I’m very proud of the whole product because it is my first time publishing a full-fledged beginner website. It looks good to me as a first-time public project....
|
1793562621.2207923
|
1793649021.2207923
|
|
44215
|
My first slack bot! by @AkshatBansal | Stardance
|
|
1
|
1.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-06T04:44:13Z", "hours": 1.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made Buddy-a slack bot, it is my first genuine project, The most difficult part was the Demo website and using Git. But now I am proud for it!", "repo": "https://github.com/akshatbansaltech/Slack-Bot", "demo": "https://hackclub.enterprise.slack.com/archives/C0BN01NTATZ"}]...
|
[{"post_id": 41725, "ts": "202 [{"post_id": 41725, "ts": "2026-08-06T03:42:26Z", "hours": 0.5567, "text": "Helloo everyone reading this, Slack Bot is my first genuine project and all i have to say is this was fun!!"}]...
|
Title: My first slack bot! by @AkshatBansal | Star Title: My first slack bot! by @AkshatBansal | Stardance
Devlogs:
Helloo everyone reading this, Slack Bot is my first genuine project and all i have to say is this was fun!!
Ships:
I made Buddy-a slack bot, it is my first genuine project, The most difficult part was the Demo website and using Git. But now I am proud for it!...
|
1793444143.195151
|
1793530543.195151
|
|
44220
|
Pulse by @rehanhabbu | Stardance
|
rehanhabbu
|
1
|
1.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-05T14:56:54Z", "hours": 1.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Very basic website with a new tab page: Displays the image from the API in the background with a clock in the foreground Uses HTML, JS, and CSS Uses a .env and github secret for API", "repo": "https://github.com/Catsarepro21/starry", "demo": "https://catsarepro21.github.io/starry/"}]...
|
[{"post_id": 41357, "ts": "202 [{"post_id": 41357, "ts": "2026-08-05T14:55:37Z", "hours": 0.5517, "text": "Started and finished up this very simple website using NASA’s api. Displays the image from the API in the background with a clock in the foreground Uses HTML, JS, and CSS Uses a .env and github secret for API"}]...
|
Title: Pulse by @rehanhabbu | Stardance
Devlogs:
Title: Pulse by @rehanhabbu | Stardance
Devlogs:
Started and finished up this very simple website using NASA’s api. Displays the image from the API in the background with a clock in the foreground Uses HTML, JS, and CSS Uses a .env and github secret for API
Ships:
Very basic website with a new tab page: Displays the image from the API in the background with a clock in the foreground Uses HTML, JS, and CSS Uses a .env and github secret for API...
|
1793461677.910399
|
1793548077.910399
|