|
9349
|
Configuring my Neovim by @sanji | Stardance
|
sanji
|
1
|
7.0
|
118
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-24T04:47:47Z", "hours": 7.0, "multiplier": 15.73, "payout": 118, "blessing": "neutral", "text": "I built a fully customized, lightweight Neovim IDE from scratch using Lua. It’s my first time I configured my neovim and its simple and just have main feature of IDE. Right now it’s Not a Full VSCode like configuration. I did it just for fun. And I really enjoyed it, I used documentation available on the internet for my help. Cause it’s my first time working with Lua language its challenging for me but I used the documentation and little bit ai(just for learning ) and then tried myself. I am incredibly proud of transforming a raw, blank terminal editor into a professional-grade development environment. I added a demo video so other can see what I have done, but if you want to try it by user-self then follow the readme.md file for installation.", "repo": "https://github.com/balu401/nvim", "demo": "https://github.com/balu401/nvim/releases/tag/v1.0.0"}]...
|
[{"post_id": 14862, "ts": "202 [{"post_id": 14862, "ts": "2026-06-24T04:02:53Z", "hours": 0.5533, "text": "Added a README.MD file and tested all the features of my neovim configuration. I used some AI for creating the readme"}, {"post_id": 13627, "ts": "2026-06-22T11:04:23Z", "hours": 0.3925, "text": "Added Terminal Feature a built-in terminal that slides up from the bottom of the screen is exactly like VSCode. Now when I Press Ctrl + \\ on your keyboard.A sleek terminal will instantly slide up from the bottom of my screen, ready to type git commands, run servers, or compile code. If you press Ctrl + \\ again, it will hide away but keep whatever process you started running in the background! Hit Esc (or type jk fast) to exit terminal insert mode."}, {"post_id": 13523, "ts": "2026-06-22T04:13:14Z", "hours": 0.6117, "text": "Nvim-Tree Sidebar! Having a visual file tree on the left side of your screen is essential for navigating a large project. It lets you explore folders, create new files, and delete directories visually without memorizing paths. How It works - Press Space then e then e ( <leader>ee ). A clean, structural file panel will slide open on the left hand side of your screen! Use your standard j and k movements to navigate up and down the file tree. Press Enter on a folder to expand it, or Enter on a file to open it in your main window. To close the panel, just tap <leader>ee again. and more…"}, {"post_id": 13509, "ts": "2026-06-22T03:22:33Z", "hours": 0.4181, "text": "Added Conform Formatter ( code formatter) for Neovim This plugin is going to take Prettier (for your JavaScript/HTML) and hook it directly into your save command. Now the moment I save my file, it will instantly snap all my messy indentation and brackets into perfect alignment. Earlier in the setup, I mapped my Leader key + s (Space + s) to save the file. Now when I press Space + s. Conform will catch the save command, perfectly format the entire file using Prettier/Stylua, and then write it to the disk, all in a fraction of a millisecond!"}, {"post_id": 13483, "ts": "2026-06-22T02:32:24Z", "hours": 0.5458, "text": "Autocomplete Menu Feature Added a A beautiful, responsive autocomplete menu.without an autocomplete plugin, it has no way to actually show those suggestions while typing. This feature configures nvim-cmp, which is the autocomplete engine for your Neovim setup So I added Autocomplete menu feature, which - popup menu appears when you start typing code It decides what to show you (functions, variables, file paths, snippets) Gives auto code snippet"}, {"post_id": 13164, "ts": "2026-06-21T15:18:23Z", "hours": 0.4436, "text": "Configured Mason and LSP think of them as an app store and an interpreter Mason: It is the Language Server. It’s the most powerful tool as it allows us to implement language validation, import dependencies, go to definition, renaming, and much more. It is your built-in App Store It downloads Language Engines It manages dependencies safely LSP: In Neovim, the Language Server Protocol (LSP) acts as a standardized bridge between the editor and external language servers, enabling IDE-like features without requiring a full IDE. This separation allows Neovim to handle text editing while third-party servers manage code analysis, resulting in support for many languages and composable components. It acts as the Bridge/Interpreter It activates servers dynamically It maps your power-shortcuts"}, {"post_id": 13118, "ts": "2026-06-21T13:35:10Z", "hours": 0.6119, "text": "Added Status Line And I ndentation It displays contextual information about the current buffer, cursor, and editor state. By default, it shows the file path, modification status (e.g., [+] for unsaved changes), LSP diagnostics (error/warning counts), and cursor position (line and column). By default, this specific layout divides status line into distinct visual chunks: Far Left: Instantly shows what mode you are in (NORMAL, INSERT, VISUAL) with clear color changes. Middle Left: Hooks directly into your GitHub configuration to show you which branch you are on and if you have any uncommitted changes. Far Right: Displays the exact line and column number your cursor is sitting on, along with the file type (like lua or markdown). Indentation - plugin for displaying indentation in the file. You can see that vertical lines which show the indentation in the code."}, {"post_id": 12421, "ts": "2026-06-20T08:25:39Z", "hours": 0.7008, "text": "Added Fuzzy finder in my Neovim It will help us find any files or text that we need quickly and efficiently. Ctrl + p finds files in the project Space + b shows a fuzzy finder with the list of opened buffers Space + / gives you live search in the project."}, {"post_id": 12381, "ts": "2026-06-20T06:32:28Z", "hours": 0.3853, "text": "A plugin is for commenting code. Now, I can use gcc , for example, to comment a line or gcG to comment the whole file. I used numToStr/Comment.nvim github repo and doc for this"}, {"post_id": 7346, "ts": "2026-06-12T07:43:42Z", "hours": 0.9264, "text": "Custom Keymaps For my Neovim setup, I kept the custom keymaps minimal. Neovim already provides many useful default keybindings, so there is no need to create hundreds of custom shortcuts. Some of the keymaps I added include: Space + s to save the current file k and j for smoother cursor movement H and L to jump to the beginning and end of a line Q to close the current buffer vv and ss to create vertical and horizontal splits Ctrl + h/j/k/l to navigate between splits Tab and Shift + Tab for indentation in visual mode Improved y and p behavior to move the cursor to the end of copied or pasted text Space + h to clear search highlights"}, {"post_id": 6716, "ts": "2026-06-11T07:51:25Z", "hours": 0.7219, "text": "configured all my settings in Neovim, here what I have done: -Map our Leader key to Space -Highlight search in the file. -Show line numbers. -Disable the mouse completely. -Enable copying between Neovim and the system clipboard. -Wrap our lines. -Disable swap files but keep undo history. -Decrease update time to make Neovim faster. -Configure how and where we open splits. -Change the indentation. -Adjust how we scroll on the screen."}, {"post_id": 6646, "ts": "2026-06-11T04:21:10Z", "hours": 0.3619, "text": "configured colors scheme for my editor, explored various colors schemes available by installing and I picked gruvbox.nvim for my IDE"}, {"post_id": 6104, "ts": "2026-06-10T08:24:16Z", "hours": 0.42, "text": "Today I started working on configuring my own Neovim setup and turning it into a personal IDE. I have : -installed neovim -created directory structure and setup files -Started Using Lua for Configuration(using documentation) -I installed and configured Lazy.nvim as my plugin manager. -configured hackatime for neovim following documentation for configuration & debugging issues some of my time spent on debuggin and solving the errors, because it’s my first time working with Lua language"}]...
|
Title: Configuring my Neovim by @sanji | Stardance Title: Configuring my Neovim by @sanji | Stardance
Devlogs:
Today I started working on configuring my own Neovim setup and turning it into a personal IDE. I have : -installed neovim -created directory structure and setup files -Started Using Lua for Configuration(using documentation) -I installed and configured Lazy.nvim as my plugin manager. -configured hackatime for neovim following documentation for configuration & debugging issues some of my time spent on debuggin and solving the errors, because it’s my first time working with Lua language
configured colors scheme for my editor, explored various colors schemes available by installing and I picked gruvbox.nvim for my IDE
configured all my settings in Neovim, here what I have done: -Map our Leader key to Space -Highlight search in the file. -Show line numbers. -Disable the mouse completely. -Enable copying between Neovim and the system clipboard. -Wrap our lines. -Disable swap files but keep undo history. -Decrease update time to make Neovim faster. -Configure how and where we open splits. -Change the indentation. -Adjust how we scroll on the screen.
Custom Keymaps For my Neovim setup, I kept the custom keymaps minimal. Neovim already provides many useful default keybindings, so there is no need to create hundreds of custom shortcuts. Some of the keymaps I added include: Space + s to save the current file k and j for smoother cursor movement H and L to jump to the beginning and end of a line Q to close the current buffer vv and ss to create vertical and horizontal splits Ctrl + h/j/k/l to navigate between splits Tab and Shift + Tab for indentation in visual mode Improved y and p behavior to move the cursor to the end of copied or pasted text Space + h to clear search highlights
A plugin is for commenting code. Now, I can use gcc , for example, to comment a line or gcG to comment the whole file. I used numToStr/Comment.nvim github repo and doc for this
Added Fuzzy finder in my Neovim It will help us find any files or text that we need quickly and efficiently. Ctrl + p finds files in the project Space + b shows a fuzzy finder with the list of opened buffers Space + / gives you live search in the project.
Added Status Line And I ndentation It displays contextual information about the current buffer, cursor, and editor state. By default, it shows the file path, modification status (e.g., [+] for unsaved changes), LSP diagnostics (error/warning counts), and cursor position (line and column). By default, this specific layout divides status line into distinct visual chunks: Far Left: Instantly shows what mode you are in (NORMAL, INSERT, VISUAL) with clear color changes. Middle Left: Hooks directly into your GitHub configuration to show you which branch you are on and if you have any uncommitted changes. Far Right: Displays the exact line and column number your cursor is sitting on, along with the file type (like lua or markdown). Indentation - plugin for displaying indentation in the file. You can see that vertical lines which show the indentation in the code.
Configured Mason and LSP think of them as an app store and an interpreter Mason: It is the Language Server. It’s the most powerful tool as it allows us to implement language validation, import dependencies, go to definition, renaming, and much more. It is your built-in App Store It downloads Language Engines It manages dependencies safely LSP: In Neovim, the Language Server Protocol (LSP) acts as a standardized bridge between the editor and external language servers, enabling IDE-like features without requiring a full IDE. This separation allows Neovim to handle text editing while third-party servers manage code analysis, resulting in support for many languages and composable components. It acts as the Bridge/Interpreter It activates servers dynamically It maps your power-shortcuts
Autocomplete Menu Feature Added a A beautiful, responsive autocomplete menu.without an autocomplete plugin, it has no way to actually show those suggestions while typing. This feature configures nvim-cmp, which is the autocomplete engine for your Neovim setup So I added Autocomplete menu feature, which - popup menu appears when you start typing code It decides what to show you (functions, variables, file paths, snippets) Gives auto code snippet
Added Conform Formatter ( code formatter) for Neovim This plugin is going to take Prettier (for your JavaScript/HTML) and hook it directly into your save command. Now the moment I save my file, it will instantly snap all my messy indentation and brackets into perfect alignment. Earlier in the setup, I mapped my Leader key + s (Space + s) to save the file. Now when I press Space + s. Conform will catch the save command, perfectly format the entire file using Prettier/Stylua, and then write it to the disk, all in a fraction of a millisecond!
Nvim-Tree Sidebar! Having a visual file tree on the left side of your screen is essential for navigating a large project. It lets you explore folders, create new files, and delete directories visually without memorizing paths. How It works - Press Space then e then e ( <leader>ee ). A clean, structural file panel will slide open on the left hand side of your screen! Use your standard j and k movements to navigate up and down the file tree. Press Enter on a folder to expand it, or Enter on a file to open it in your main window. To close the panel, just tap <leader>ee again. and more…
Added Terminal Feature a built-in terminal that slides up from the bottom of the screen is exactly like VSCode. Now when I Press Ctrl + \ on your keyboard.A sleek terminal will instantly slide up from the bottom of my screen, ready to type git commands, run servers, or compile code. If you press Ctrl + \ again, it will hide away but keep whatever process you started running in the background! Hit Esc (or type jk fast) to exit terminal insert mode.
Added a README.MD file and tested all the features of my neovim configuration. I used some AI for creating the readme
Ships:
I built a fully customized, lightweight Neovim IDE from scratch using Lua. It’s my first time I configured my neovim and its simple and just have main feature of IDE. Right now it’s Not a Full VSCode like configuration. I did it just for fun. And I really enjoyed it, I used documentation available on the internet for my help. Cause it’s my first time working with Lua language its challenging for me but I used the documentation and little bit ai(just for learning ) and then tried myself. I am incredibly proud of transforming a raw, blank terminal editor into a professional-grade development environment. I added a demo video so other can see what I have done, but if you want to try it by user-self then follow the readme.md file for installation....
|
1793706482.3338416
|
1793792882.3338416
|
|
31684
|
Neptune by @DrewRat | Stardance
|
DrewRat
|
1
|
41.0
|
441
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-12T23:52:04Z", "hours": 41.0, "multiplier": 10.71, "payout": 441, "blessing": "neutral", "text": "Neptune is a self-hosted college life management tool. This ship includes a demo page to try it out before self-hosting. Some features may not be available. I hope you like it!", "repo": "https://github.com/MrDiamondDog/neptune", "demo": "https://neptune-demo.drewrat.dev"}]...
|
[{"post_id": 46040, "ts": "202 [{"post_id": 46040, "ts": "2026-08-12T23:29:03Z", "hours": 4.4156, "text": "SHIPPING TIME!!! This is a little earlier than I expected to ship, but I think it’s about ready! (and I want to start working on other things) Flashcard Importing and Reordering You can now import flashcards! One flashcard per line, with each line having two sides separated by a delimiter of your choice. I suppose I should also add exporting, but I can always do that later. (I don’t think many other people will actually use this app) I skipped drag and drop for reordering as Tungsten showed me how much of a pain in the a– that can be. You get an up arrow and down arrow, that’s it. Settings Redesign Only slightly. I went for a look that matches the dashboard a little better and makes the UI easier to read. The save button was tricky to place; as putting it near the settings it actually works for made it blend in too much. Term editing doesn’t require saving, but this is the best place to put the button. I also added the log out button right under this! Demo The app now has a proper demo mode. I think I implemented this one a little cleaner than Tungsten, not requiring a user with ID 0 and a specific password to be in the DB. It just fakes you having a session/user and works off of that. Bugs, bugs galore! Oh man I fixed so many. I’ve been putting off a lot of these and some I just discovered as well. The big one was that meeting exclusions just weren’t working. It ended up being an issue with code I changed weeks ago, that I thought wouldn’t affect very much. Another bug was task due dates were just incorrect. You type “tomorrow” and it is due 2 days in advance. You wouldn’t believe what caused this one, and say it with me: timezones!!!!! And that’s all! This has been one of the most fun apps to develop imo (minus all the timezone issues, those were the worst thing I have ever done), and I hope you find some use of this project!"}, {"post_id": 44830, "ts": "2026-08-10T21:06:10Z", "hours": 5.5306, "text": "PWA support, study tools, and many small fixes! Once again I have procrastinated devlogging. I have to start working a little harder though as my deadline for this project is in 9 days! (I’m moving out and won’t have time to work on this anymore so I want to get it done before then) PWA support This was super simple. I basically just stole the config from Filatrack, and it worked great. The hardest part was actually making the UI mobile-friendly (I hate mobile-first development) Tailwind does device-based styles really weird and lowkey a little stupid, forcing you into mobile-first development, even though that’s dumb for what this project is. Study Tools!! This is the last major feature I’ll be adding before shipping. The tools include a pomodoro timer, flashcards, and quizzes. These all will be part of the database as well. So far, I’ve completed the pomodoro timer! It ended up really simple but really effective. You get to choose how long each work/break is, tasks to focus on, etc. You can pause the timer, hide it, and skip ahead to the next break if you wish. (I’ll be sure to add some confirmation to this so you don’t just skip work time!) The app also requests notification permission so it can send you notifications when it’s time for a break or time to get back to work. I’d also like to add a couple misc. QoL things like optional water/posture reminders and distraction prevention (telling you to get back to work if you get on a distracting website). When you finish, it gives you a quick overview of what you got done and then logs a study session to the database. Not entirely sure what I’ll use them for other than statistics for yourself, but thought I’d add it! SUPRISE: Timezone bugs! OK, I swear, this time is the last time I’ll have to fix timezone bugs. It was daylight savings again. I did some stupid stuff and FINALLY got it working again. This time I did some jank involving a function that checks if a day is in daylight savings and then just adjusting the hour so it’s correct. I know, it’s really dumb, but it works, so is it really? Small things Multiple bug fixes here and there that make it easier to use. The time and date are also shown on the home page now! Next up… …flashcards! This one I’m pretty excited about and shouldn’t be too hard!"}, {"post_id": 38024, "ts": "2026-07-31T05:20:31Z", "hours": 5.8447, "text": "New schedule look, smart greeting, tasks in the calendar, and more timezone fun!!! I spent a bunch more time procrastinating devlogging… so here’s a really long one! New schedule look It only changed a little, but it’s a lot easier to read and accommodates smaller event text a lot better. For events shorter than 30m, it leaves out the end time, and the title simply clips off if there isn’t space. Smart Greeting + new header! The header has a new look! The main feature here is the smart greeting, which shows you your upcoming classes/tasks (TODO) at a glance. It wasn’t crazy hard to implement this, just a bunch of conditions. It shows you only the upcoming classes on days you have classes, and the classes you have tomorrow if you’re done with classes for the day or have none. Past that, it doesn’t say anything. Tasks in the calendar This was a fun, quick adventure. I wanted to make sure tasks that were due at 11:59pm (the default) show up without having to scroll, so I stuck those ones in the all day section, to indicate you should get it done by the end of the day. Additionally, I added the tasks to iCal syncing via the VTODO spec. I implemented it in a hacky way since the library I was using didn’t support it, but it worked. Unfortunately, that’s when I learned that almost no calendar app actually looks at them. Yep. Google calendar, Apple calendar, none of them care about it. I’m going to implement them as normal events and call it a day. Timezone fun! Here we go again and for hopefully the last time. I was scrolling through the calendar, as ya do, and noticed a sudden shift around November, where all the classes would shift backward an hour. This could only mean one thing: daylight savings. I don’t even know how I fixed this one. I hacked around with it for a couple hours, and it started working again. This caused the iCal syncing to do the same thing, which took longer to fix. I am so tired. Javascript dates might actually be the worst thing I have ever worked with"}, {"post_id": 33880, "ts": "2026-07-24T04:50:20Z", "hours": 2.3253, "text": "IM BACK!!! SUPER exciting updates today!!! I just got back from vacation and I have motivation!! LOGO!!!! Neptune has a logo!!! I think it looks really good, I whipped it up in Inkscape in like 20 minutes. You wouldn’t believe what it’s supposed to be! Self hosting!!! This was supoer easy. Since this uses the same stack as Tungsten (which you should totally go check out also), I was able to copy over the dockerfile and docker-compose with minimal changes. However…. Timezone issues!!! Wait…. Yep. There are a lot of edge cases I didn’t think of. As soon as the server and client’s timezones are different, things get stupid. Javascript dates are genuinely one of the worst things I have ever used, I’d even go as far as to say it’s worse than java as a language. Both the ICS calendar import and export, as well as the course times were incorrect by +/- 6 hours (I am in UTC-6, so that explains it) I spent way, WAY longer than I should’ve trying to fix this. It ended up taking like 2 different changes that affected the database as well. Usually I try to make my git commits clean and well-described, but that didn’t last very long here… The best part: it still doesn’t work properly! I don’t know why, but the ICS viewer I’ve been using to test reads the file differently than Google Calendar, which thinks my 10am class is at 4am. Not to mention, Google Calendar only updates your subscribed calendars once every like 6 hours!! So every time I make a change to (hopefully) fix it, I have to wait. Devlog Meta Section Unfortunately I don’t have much else to show for this update… that was all I worked on for 2 hours. I know. Anyway, I hope to add some more real features very soon!"}, {"post_id": 28043, "ts": "2026-07-14T02:01:36Z", "hours": 1.63, "text": "Course colors, Course/meeting editing, and more timezone bugs!! Wow! A devlog of reasonable length! Surely that means it will be shorter right? Kinda, I added a lot of things but it was pretty easy! Calendar colors 🎨 This one was really easy to implement, as the calendar component allows you to specify a border/background color. All I needed to do was add it to the creation modal and boom! I stole the color picker from Filatrack as it’s a good component and I don’t see a reason to make a new one Unfortunately, these colors will not show up in the iCal subscription as iCal doesn’t support colors. Course card view modes The “Today” card at the top can now show you tomorrow and all courses! Once again, super easy to implement, literally just another state and changing what courses are grabbed based on that state. I also fixed a glaring bug where you’d see courses from every term. I’m not sure how I didn’t consider this, but now you’ll only see courses for the current term! Editing courses/meetings This one got a little tricky. The modal is already designed to be used for creation and editing, I just had to implement the latter. Editing courses is no big deal, however; it just changes what function it uses. Its editing meetings that’s a little tricky. You have to make a separate request to edit the meetings that are in the db, create ones that you’ve added, and delete ones you’ve removed. It ended up being relatively simple, but there’s a couple edge cases that could snag ya. Timezone bugs I don’t even know how this one happened. I looked at the calendar when I was working on other things and suddenly realized all my courses were 6 hours ahead of where they should be. iCal events worked fine. I didn’t even change anything in this area so I just subtracted the timezone offset when getting the events for the calendar and called it a day. What’s Next? I totally lied last time, so this time I’ll be honest: whatever I feel like doing. See ya next time!"}, {"post_id": 27341, "ts": "2026-07-12T20:38:11Z", "hours": 5.2464, "text": "Tasks! Confetti! Colors!! Terms CRUD!!!! I’ve added all sorts of things since last update. Colors for courses, task CRUD, basic CRUD for terms, confetti, and so many bug fixes!! Tasks ✅ CRUD is never that hard to implement with this stack, but with tasks, the UI is more of a beast to handle. I wanted it to be more inline then creating courses, for example. We’ve already seen the C in CRUD from last devlog, so here’s the RUD! Everything is handled in a popover rather than a dialog, as it’s a lot cleaner, and for quickly clicking through tasks, a lot easier. Unfortunately, the code is a little messy here as I copied basically the same thing like 3 times. I will probably fix this later? Anyway, pressing “edit” in the popover allows you to edit the title (and thus the due date, priority, URL, and course), as well as the URL in a separate input and a note for the task, which couldn’t be auto-filled from the title bar. How I’ve made it, these two inputs are handled separately from the rest of the task editing, and when you finish editing it, it sends two requests to edit the task: one for the URL and note, and one for everything else. This led to a race condition, only on the client side, that would cause the URL and note request to override the other one, reverting to the previous state. This was an easy fix however, just allowing the dispatch function to edit things with a partial object instead of requiring the full one. Confetti Completing tasks rewards you with confetti! Super simple to implement with the react-confetti library, but it ended up being a little stupid to manage the state properly so it only went off when you clicked. Terms Terms CRUD was simple, however. Since there’s so little to them already, it was simple to make a spot to edit and delete them. I decided to put it in the settings page as that’s the most convenient spot. Bug fixes Other than the ones mentioned above, here are some more bugs I fixed: Terms not starting/ending at 12:00am in _ (time unit) matcher used current time instead of 11:59pm Task sorting was wrong Term popover could clip out of the screen on smaller devices Term timezone issues Next I’ve got a huge list still. Here’s a non-exhaustive one: More due date matchers (day-of-week, month names) Study tools, such as a pomodoro timer and flashcards Making the whole website a PWA, including notifications I’m not excited about the latter or the former, but the 2nd one I think I’ll do next, just because it sounds fun to make."}, {"post_id": 25695, "ts": "2026-07-10T03:43:38Z", "hours": 5.5222, "text": "I spent way too long implementing these features I couldn’t tell you what’s taking so much longer compared to Tungsten, but things are getting done! To-do creation I made a basic flow for creating to-do items (it doesn’t create them yet, I got an optical migraine and had to take a nap), but it has some really cool features! When you create one, all you get is one input as to not clutter things up. What’s cool is you can input a bunch of different things to auto-set some values! There’s 4 different matchers for due dates, that match the following (parenthesis are optional fields): “Tomorrow ((at) time)” “(in) [time] [units] (ago)” “MM/DD(/YYYY) (time)” “HH(:MM)(am/pm)” For the ones where time is optional, it defaults to 11:59pm. This is a heavy oversimplification as the regex selectors are super long and complicated. Weirdly enough, I kind of enjoy writing regex? It’s a fun problem solving problem. You can also auto-fill associated course, priority, and a URL! To associate a course, you simply type “SUB123”, with your courses subject and number, and it will find it for you. Priority is simply “!X”, where X is the priority of this task. It goes all the way to 99 if it’s that important! Meeting Exclusions Buzzword buzzword. You can now remove specific events from the calendar, like if there isn’t class that day. This took way longer than it should’ve to implement, as FullCalendar is stupid and doesn’t implement exclusion dates in their recurrence implementation, only through RRule. That took some wrangling cause the docs on it are a little stupid, and the library threw some stupid errors but it works now. There’s a new column in the database to store these as well. Timezone Issues I hate javascript dates. I hate javascript dates. I hate javascript dates. I hate javascript dates. I hate javascript dates. I hate javascript dates. I hate javascript dates. I hate javascript dates. Somehow, it is simultaneously the most overengineered piece of garbage ever and the least developed part of the language. Many basic features are a complete afterthought, and most of the time, you’re having to some stupid crap just to add time onto a date. Anyway, after I implemented meeting exclusions, I suddenly noticed the one 10am class I had in the calendar was now at 4am… yeah. You wouldn’t believe what my timezone offset is. -6. Sooo I fought that for a while, and as it turns out, FullCalendar tries to help, but really fails miraculously and makes things worse. For example, it “accounted for daylight savings” by moving events back an hour after it ended. That made me very glad that’s not actually how the world works, but it had me questioning it for a second. What’s next??? I’m tired. I don’t know, whatever I get around to implementing tomorrow. Good night!"}, {"post_id": 24990, "ts": "2026-07-08T21:42:12Z", "hours": 5.9419, "text": "I FORGOT TO DEVLOG I added like 10 million things, I went on tangents that took forever, I forgot to make git commits, I forgot to devlog Calendar Syncing I’ve really wanted to experiment with this for a while. The in-app calendar can now fetch events from any ICS URL!! It simply fetches the URL you give it, and displays those events alongside your courses. I made them green for now, but they’ll be configurable later! Additionally, the app exposes an API route that generates an ICS file for all your courses! This way you can easily export your course calendar to other sources like Google Calendar, so you don’t have to input them manually! This took WAY longer than it should’ve, as I was using a website to view the result of the ICS file, and I couldn’t get recurring events to, y’know, recur. I then realized that this was a problem with the viewer I was using, and not my code. I plugged in the URL to the calendar component I’m using and it worked just fine. To-do list I did some work on the to-do lists. Primarily, just displaying them and showing relative due dates. They can each have priority, an attached course, an extra description, etc. I’ll be creating the creation flow for them soon as well. Course Creation Flow Speaking of creation flows… the one for courses is mostly done! I just have to make it so you can add and select terms. I spent a lot of time getting this one right, as I wanted it to be a smooth, easy experience. I think I nailed it, but let me know how I did! Next That’s about all I did this devlog, alongside a million tiny bug fixes. Up next will be finishing the to-do list, that is, if I don’t get distracted."}, {"post_id": 24330, "ts": "2026-07-07T20:49:04Z", "hours": 4.6908, "text": "New Project!! I’ve wanted to build something like this for quite a while, but just didn’t know where to really start. But here we are! I wanted to build a web app that helps with school- tracking classes, assignments, etc. This has shifted into being an app for college students, as, well, I graduated. How to Begin Beginning this project was a struggle. There’s so many features I want to add so I didn’t even know where to start. I decided to make a quick to-do list to lay everything I wanted out. Then, I went for the database schema. This is already 10x more complex than my last project, Tungsten, but I decided upon the same stack for this project, as it’s self-hosted, just like Tungsten. A philosophy I’ve been building with a lot recently is UI first, functionality later , which helped immensely with getting started. However, I need some data! Well that’s easy. I can just use my college class roster! I already have my classes scheduled and can input them temporaily through another typescript file. (The image you see is NOT the same data. The example data file is gitignored.) The UI There’s a couple pieces right now. The “Your Day” section shows all your classes that day and (soon) to-do items. The calendar shows all your classes for the week, as well as tasks and other events from Google Calendar (soon). This also syncs your classes and tasks back to Google Calendar as well. The calendar component took a while to find. Originally, I was going to make my own, but as it turns out, that is really hard. Calendars are just really complex to build. Luckily, I found a library called Full Calendar that does all the hard work. I styled it and made a function to convert my database schema to events, and voila! The database Speaking of database schemas… let’s talk about it! Each user has “Terms”, which is how most colleges split up years. A term (or semester) is typically just one season with a start and end date. That’s how the databse does it too! Each term has all the courses you’re taking in it. Each course has a name, number, and subject. Here’s the tricky part: many courses in most colleges have different days and times they meet, sometimes with different professors or different locations. The database tracks this too! There’s a table called meeting , which describes all the days for a specific meeting time, location, or professor. For example: Class A meets on Tuesdays and Thursdays at 9:00am. This class has one meeting in the db. Class B meets on Mondays and Wednesdays at 1:00pm, but meets at 12:00pm on Fridays. This class has two meetings: MW @ 1, F @ 12. This works really well and translates to calendar events very nicely as well. Up Next The to-do list is next on the list! After that, I’ll work on the google calendar integration as well."}]...
|
Title: Neptune by @DrewRat | Stardance
Devlogs:
N Title: Neptune by @DrewRat | Stardance
Devlogs:
New Project!! I’ve wanted to build something like this for quite a while, but just didn’t know where to really start. But here we are! I wanted to build a web app that helps with school- tracking classes, assignments, etc. This has shifted into being an app for college students, as, well, I graduated. How to Begin Beginning this project was a struggle. There’s so many features I want to add so I didn’t even know where to start. I decided to make a quick to-do list to lay everything I wanted out. Then, I went for the database schema. This is already 10x more complex than my last project, Tungsten, but I decided upon the same stack for this project, as it’s self-hosted, just like Tungsten. A philosophy I’ve been building with a lot recently is UI first, functionality later , which helped immensely with getting started. However, I need some data! Well that’s easy. I can just use my college class roster! I already have my classes scheduled and can input them temporaily through another typescript file. (The image you see is NOT the same data. The example data file is gitignored.) The UI There’s a couple pieces right now. The “Your Day” section shows all your classes that day and (soon) to-do items. The calendar shows all your classes for the week, as well as tasks and other events from Google Calendar (soon). This also syncs your classes and tasks back to Google Calendar as well. The calendar component took a while to find. Originally, I was going to make my own, but as it turns out, that is really hard. Calendars are just really complex to build. Luckily, I found a library called Full Calendar that does all the hard work. I styled it and made a function to convert my database schema to events, and voila! The database Speaking of database schemas… let’s talk about it! Each user has “Terms”, which is how most colleges split up years. A term (or semester) is typically just one season with a start and end date. That’s how the databse does it too! Each term has all the courses you’re taking in it. Each course has a name, number, and subject. Here’s the tricky part: many courses in most colleges have different days and times they meet, sometimes with different professors or different locations. The database tracks this too! There’s a table called meeting , which describes all the days for a specific meeting time, location, or professor. For example: Class A meets on Tuesdays and Thursdays at 9:00am. This class has one meeting in the db. Class B meets on Mondays and Wednesdays at 1:00pm, but meets at 12:00pm on Fridays. This class has two meetings: MW @ 1, F @ 12. This works really well and translates to calendar events very nicely as well. Up Next The to-do list is next on the list! After that, I’ll work on the google calendar integration as well.
I FORGOT TO DEVLOG I added like 10 million things, I went on tangents that took forever, I forgot to make git commits, I forgot to devlog Calendar Syncing I’ve really wanted to experiment with this for a while. The in-app calendar can now fetch events from any ICS URL!! It simply fetches the URL you give it, and displays those events alongside your courses. I made them green for now, but they’ll be configurable later! Additionally, the app exposes an API route that generates an ICS file for all your courses! This way you can easily export your course calendar to other sources like Google Calendar, so you don’t have to input them manually! This took WAY longer than it should’ve, as I was using a website to view the result of the ICS file, and I couldn’t get recurring events to, y’know, recur. I then realized that this was a problem with the viewer I was using, and not my code. I plugged in the URL to the calendar component I’m using and it worked just fine. To-do list I did some work on the to-do lists. Primarily, just displaying them and showing relative due dates. They can each have priority, an attached course, an extra description, etc. I’ll be creating the creation flow for them soon as well. Course Creation Flow Speaking of creation flows… the one for courses is mostly done! I just have to make it so you can add and select terms. I spent a lot of time getting this one right, as I wanted it to be a smooth, easy experience. I think I nailed it, but let me know how I did! Next That’s about all I did this devlog, alongside a million tiny bug fixes. Up next will be finishing the to-do list, that is, if I don’t get distracted.
I spent way too long implementing these features I couldn’t tell you what’s taking so much longer compared to Tungsten, but things are getting done! To-do creation I made a basic flow for creating to-do items (it doesn’t create them yet, I got an optical migraine and had to take a nap), but it has some really cool features! When you create one, all you get is one input as to not clutter things up. What’s cool is you can input a bunch of different things to auto-set some values! There’s 4 different matchers for due dates, that match the following (parenthesis are optional fields): “Tomorrow ((at) time)” “(in) [time] [units] (ago)” “MM/DD(/YYYY) (time)” “HH(:MM)(am/pm)” For the ones where time is optional, it defaults to 11:59pm. This is a heavy oversimplification as the regex selectors are super long and complicated. Weirdly enough, I kind of enjoy writing regex? It’s a fun problem solving problem. You can also auto-fill associated course, priority, and a URL! To associate a course, you simply type “SUB123”, with your courses subject and number, and it will find it for you. Priority is simply “!X”, where X is the priority of this task. It goes all the way to 99 if it’s that important! Meeting Exclusions Buzzword buzzword. You can now remove specific events from the calendar, like if there isn’t class that day. This took way longer than it should’ve to implement, as FullCalendar is stupid and doesn’t implement exclusion dates in their recurrence implementation, only through RRule. That took some wrangling cause the docs on it are a little stupid, and the library threw some stupid errors but it works now. There’s a new column in the database to store these as well. Timezone Issues I hate javascript dates. I hate javascript dates. I hate javascript dates. I hate javascript dates. I hate javascript dates. I hate javascript dates. I hate javascript dates. I hate javascript dates. Somehow, it is simultaneously the most overengineered piece of garbage ever and the least developed part of the language. Many basic features are a complete afterthought, and most of the time, you’re having to some stupid crap just to add time onto a date. Anyway, after I implemented meeting exclusions, I suddenly noticed the one 10am class I had in the calendar was now at 4am… yeah. You wouldn’t believe what my timezone offset is. -6. Sooo I fought that for a while, and as it turns out, FullCalendar tries to help, but really fails miraculously and makes things worse. For example, it “accounted for daylight savings” by moving events back an hour after it ended. That made me very glad that’s not actually how the world works, but it had me questioning it for a second. What’s next??? I’m tired. I don’t know, whatever I get around to implementing tomorrow. Good night!
Tasks! Confetti! Colors!! Terms CRUD!!!! I’ve added all sorts of things since last update. Colors for courses, task CRUD, basic CRUD for terms, confetti, and so many bug fixes!! Tasks ✅ CRUD is never that hard to implement with this stack, but with tasks, the UI is more of a beast to handle. I wanted it to be more inline then creating courses, for example. We’ve already seen the C in CRUD from last devlog, so here’s the RUD! Everything is handled in a popover rather than a dialog, as it’s a lot cleaner, and for quickly clicking through tasks, a lot easier. Unfortunately, the code is a little messy here as I copied basically the same thing like 3 times. I will probably fix this later? Anyway, pressing “edit” in the popover allows you to edit the title (and thus the due date, priority, URL, and course), as well as the URL in a separate input and a note for the task, which couldn’t be auto-filled from the title bar. How I’ve made it, these two inputs are handled separately from the rest of the task editing, and when you finish editing it, it sends two requests to edit the task: one for the URL and note, and one for everything else. This led to a race condition, only on the client side, that would cause the URL and note request to override the other one, reverting to the previous state. This was an easy fix however, just allowing the dispatch function to edit things with a partial object instead of requiring the full one. Confetti Completing tasks rewards you with confetti! Super simple to implement with the react-confetti library, but it ended up being a little stupid to manage the state properly so it only went off when you clicked. Terms Terms CRUD was simple, however. Since there’s so little to them already, it was simple to make a spot to edit and delete them. I decided to put it in the settings page as that’s the most convenient spot. Bug fixes Other than the ones mentioned above, here are some more bugs I fixed: Terms not starting/ending at 12:00am in _ (time unit) matcher used current time instead of 11:59pm Task sorting was wrong Term popover could clip out of the screen on smaller devices Term timezone issues Next I’ve got a huge list still. Here’s a non-exhaustive one: More due date matchers (day-of-week, month names) Study tools, such as a pomodoro timer and flashcards Making the whole website a PWA, including notifications I’m not excited about the latter or the former, but the 2nd one I think I’ll do next, just because it sounds fun to make.
Course colors, Course/meeting editing, and more timezone bugs!! Wow! A devlog of reasonable length! Surely that means it will be shorter right? Kinda, I added a lot of things but it was pretty easy! Calendar colors 🎨 This one was really easy to implement, as the calendar component allows you to specify a border/background color. All I needed to do was add it to the creation modal and boom! I stole the color picker from Filatrack as it’s a good component and I don’t see a reason to make a new one Unfortunately, these colors will not show up in the iCal subscription as iCal doesn’t support colors. Course card view modes The “Today” card at the top can now show you tomorrow and all courses! Once again, super easy to implement, literally just another state and changing what courses are grabbed based on that state. I also fixed a glaring bug where you’d see courses from every term. I’m not sure how I didn’t consider this, but now you’ll only see courses for the current term! Editing courses/meetings This one got a little tricky. The modal is already designed to be used for creation and editing, I just had to implement the latter. Editing courses is no big deal, however; it just changes what function it uses. Its editing meetings that’s a little tricky. You have to make a separate request to edit the meetings that are in the db, create ones that you’ve added, and delete ones you’ve removed. It ended up being relatively simple, but there’s a couple edge cases that could snag ya. Timezone bugs I don’t even know how this one happened. I looked at the calendar when I was working on other things and suddenly realized all my courses were 6 hours ahead of where they should be. iCal events worked fine. I didn’t even change anything in this area so I just subtracted the timezone offset when getting the events for the calendar and called it a day. What’s Next? I totally lied last time, so this time I’ll be honest: whatever I feel like doing. See ya next time!
IM BACK!!! SUPER exciting updates today!!! I just got back from vacation and I have motivation!! LOGO!!!! Neptune has a logo!!! I think it looks really good, I whipped it up in Inkscape in like 20 minutes. You wouldn’t believe what it’s supposed to be! Self hosting!!! This was supoer easy. Since this uses the same stack as Tungsten (which you should totally go check out also), I was able to copy over the dockerfile and docker-compose with minimal changes. However…. Timezone issues!!! Wait…. Yep. There are a lot of edge cases I didn’t think of. As soon as the server and client’s timezones are different, things get stupid. Javascript dates are genuinely one of the worst things I have ever used, I’d even go as far as to say it’s worse than java as a language. Both the ICS calendar import and export, as well as the course times were incorrect by +/- 6 hours (I am in UTC-6, so that explains it) I spent way, WAY longer than I should’ve trying to fix this. It ended up taking like 2 different changes that affected the database as well. Usually I try to make my git commits clean and well-described, but that didn’t last very long here… The best part: it still doesn’t work properly! I don’t know why, but the ICS viewer I’ve been using to test reads the file differently than Google Calendar, which thinks my 10am class is at 4am. Not to mention, Google Calendar only updates your subscribed calendars once every like 6 hours!! So every time I make a change to (hopefully) fix it, I have to wait. Devlog Meta Section Unfortunately I don’t have much else to show for this update… that was all I worked on for 2 hours. I know. Anyway, I hope to add some more real features very soon!
New schedule look, smart greeting, tasks in the calendar, and more timezone fun!!! I spent a bunch more time procrastinating devlogging… so here’s a really long one! New schedule look It only changed a little, but it’s a lot easier to read and accommodates smaller event text a lot better. For events shorter than 30m, it leaves out the end time, and the title simply clips off if there isn’t space. Smart Greeting + new header! The header has a new look! The main feature here is the smart greeting, which shows you your upcoming classes/tasks (TODO) at a glance. It wasn’t crazy hard to implement this, just a bunch of conditions. It shows you only the upcoming classes on days you have classes, and the classes you have tomorrow if you’re done with classes for the day or have none. Past that, it doesn’t say anything. Tasks in the calendar This was a fun, quick adventure. I wanted to make sure tasks that were due at 11:59pm (the default) show up without having to scroll, so I stuck those ones in the all day section, to indicate you should get it done by the end of the day. Additionally, I added the tasks to iCal syncing via the VTODO spec. I implemented it in a hacky way since the library I was using didn’t support it, but it worked. Unfortunately, that’s when I learned that almost no calendar app actually looks at them. Yep. Google calendar, Apple calendar, none of them care about it. I’m going to implement them as normal events and call it a day. Timezone fun! Here we go again and for hopefully the last time. I was scrolling through the calendar, as ya do, and noticed a sudden shift around November, where all the classes would shift backward an hour. This could only mean one thing: daylight savings. I don’t even know how I fixed this one. I hacked around with it for a couple hours, and it started working again. This caused the iCal syncing to do the same thing, which took longer to fix. I am so tired. Javascript dates might actually be the worst thing I have ever worked with
PWA support, study tools, and many small fixes! Once again I have procrastinated devlogging. I have to start working a little harder though as my deadline for this project is in 9 days! (I’m moving out and won’t have time to work on this anymore so I want to get it done before then) PWA support This was super simple. I basically just stole the config from Filatrack, and it worked great. The hardest part was actually making the UI mobile-friendly (I hate mobile-first development) Tailwind does device-based styles really weird and lowkey a little stupid, forcing you into mobile-first development, even though that’s dumb for what this project is. Study Tools!! This is the last major feature I’ll be adding before shipping. The tools include a pomodoro timer, flashcards, and quizzes. These all will be part of the database as well. So far, I’ve completed the pomodoro timer! It ended up really simple but really effective. You get to choose how long each work/break is, tasks to focus on, etc. You can pause the timer, hide it, and skip ahead to the next break if you wish. (I’ll be sure to add some confirmation to this so you don’t just skip work time!) The app also requests notification permission so it can send you notifications when it’s time for a break or time to get back to work. I’d also like to add a couple misc. QoL things like optional water/posture reminders and distraction prevention (telling you to get back to work if you get on a distracting website). When you finish, it gives you a quick overview of what you got done and then logs a study session to the database. Not entirely sure what I’ll use them for other than statistics for yourself, but thought I’d add it! SUPRISE: Timezone bugs! OK, I swear, this time is the last time I’ll have to fix timezone bugs. It was daylight savings again. I did some stupid stuff and FINALLY got it working again. This time I did some jank involving a function that checks if a day is in daylight savings and then just adjusting the hour so it’s correct. I know, it’s really dumb, but it works, so is it really? Small things Multiple bug fixes here and there that make it easier to use. The time and date are also shown on the home page now! Next up… …flashcards! This one I’m pretty excited about and shouldn’t be too hard!
SHIPPING TIME!!! This is a little earlier than I expected to ship, but I think it’s about ready! (and I want to start working on other things) Flashcard Importing and Reordering You can now import flashcards! One flashcard per line, with each line having two sides separated by a delimiter of your choice. I suppose I should also add exporting, but I can always do that later. (I don’t think many other people will actually use this app) I skipped drag and drop for reordering as Tungsten showed me how much of a pain in the a– that can be. You get an up arrow and down arrow, that’s it. Settings Redesign Only slightly. I went for a look that matches the dashboard a little better and makes the UI easier to read. The save button was tricky to place; as putting it near the settings it actually works for made it blend in too much. Term editing doesn’t require saving, but this is the best place to put the button. I also added the log out button right under this! Demo The app now has a proper demo mode. I think I implemented this one a little cleaner than Tungsten, not requiring a user with ID 0 and a specific password to be in the DB. It just fakes you having a session/user and works off of that. Bugs, bugs galore! Oh man I fixed so many. I’ve been putting off a lot of these and some I just discovered as well. The big one was that meeting exclusions just weren’t working. It ended up being an issue with code I changed weeks ago, that I thought wouldn’t affect very much. Another bug was task due dates were just incorrect. You type “tomorrow” and it is due 2 days in advance. You wouldn’t believe what caused this one, and say it with me: timezones!!!!! And that’s all! This has been one of the most fun apps to develop imo (minus all the timezone issues, those were the worst thing I have ever done), and I hope you find some use of this project!
Ships:
Neptune is a self-hosted college life management tool. This ship includes a demo page to try it out before self-hosting. Some features may not be available. I hope you like it!...
|
1793706483.625764
|
1793792883.625764
|
|
65776
|
Hcg g by @elyas | Stardance
|
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Hcg g by @elyas | Stardance
|
1793706484.8531344
|
1794311284.8531344
|
|
42308
|
Skybound by @SCAMMARAS | Stardance
|
SCAMMARAS
|
1
|
23.0
|
361
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-11T12:30:52Z", "hours": 23.0, "multiplier": 15.89, "payout": 361, "blessing": "neutral", "text": "After 11 days and 23 hours spent working on this project i finally DONE!! So for those who do not know what this is here is a small description , so this is a game i made solo in Godot 4 , i use art that i found on itch.io that was public for most of the art , but there is still hints of my art. Anyway i am so happy that i have finished this even though i got sick at a time it didn’t got me down and after a day of laying in bed i was able to stand up again and continuing on this project. Special thanks to anthropics and claude that made my journey less stressing and easier", "repo": "https://github.com/Nikolaossamaras/Skybound", "demo": "https://scammaras.itch.io/skybound"}]...
|
[{"post_id": 45120, "ts": "202 [{"post_id": 45120, "ts": "2026-08-11T12:23:38Z", "hours": 0.9722, "text": "Devlog 11 | FINALLY WE ARE READY TO SHIP!!!. Today i made my readme and published my game to itchio and i think i am ready to Ship . YAY!"}, {"post_id": 44778, "ts": "2026-08-10T19:40:51Z", "hours": 2.5781, "text": "Devlog 10 | Today is the day guys !!! I finally finished making my game . I added a saving /loading system , made touch ups and finished with the Victory Screen , all that is left to do is post the game to itch.io and make the README file for github"}, {"post_id": 44268, "ts": "2026-08-09T22:09:58Z", "hours": 0.7939, "text": "Devlog 9 | Today i finished with the Boss fight last level. What i have left to do now is the winning screen and load / save process , so you can save progress . I will also make micro changes so the game feels more fair and rewarding. That’s all . Until next time"}, {"post_id": 43532, "ts": "2026-08-08T21:05:40Z", "hours": 1.8103, "text": "Devlog 8| i made the boss for my final level . I added how to kill him and how he kills you . I got some strange error that made my root of the boss not being root and some other strange things so i just remade the boss scene entirerly , but because i had the code it was fast. That’s all for today. Until tommorow"}, {"post_id": 43462, "ts": "2026-08-08T18:47:05Z", "hours": 2.2861, "text": "Devlog 7 | Today i made a coins shop , where you can buy upgrades like more health , higher jumps and more speed. I also though that it would be nice for the final level (10) to have a boss instead of just parkour and you can beat this boss by collecting diffrent stones on the map that you can access doing some platforming. That’s all for today. Until next time"}, {"post_id": 42504, "ts": "2026-08-07T09:06:48Z", "hours": 2.7111, "text": "Devlog 6 | Today i added two levels (level 8 and 9) as well as their unique traps. I added a ceiling trap and an arrow trap. Tommorow i will make the 10th and finial level and i will start thinking what can the player spend his coins on (if you have any ideas please comment them). That’s it for today . Stay tuned for more updates"}, {"post_id": 40989, "ts": "2026-08-04T21:19:15Z", "hours": 2.8894, "text": "Devlog 5 | Today i made progress!!! Wassup people , so today i made level 6-7 (no troll) of my game , it doesn’t have a name yet so i will just call it skybound as a placeholder . Anyway , what i added is two new obstacles .1. A breaking platform and 2 a Sandworm trap (looks amazing btw). Yeah that’s it for today. Stay tuned for more updates"}, {"post_id": 40197, "ts": "2026-08-03T16:29:02Z", "hours": 2.2553, "text": "Devlog 4 | Yesterday i got sick , so i couldn’t get any progress done , but atleast today i managed to make 2 new levels , as well as one new obstacle. I hope that tomorrow i will have more energy so i can complete as much of this project as i can."}, {"post_id": 39184, "ts": "2026-08-01T23:43:01Z", "hours": 1.0842, "text": "Devlog 3| I made level 3 , it was easy as i had already made the enemy sprite . i combined the ability from the previous level with the enemies of this one and i think it came out being pretty fun . See you tmr with more updates 🥳🥳🥳🥳"}, {"post_id": 39168, "ts": "2026-08-01T22:33:28Z", "hours": 3.3467, "text": "Devlog 2| Today i finished with level 1 and moved to level 2 . I added to the game an ability!! the ability is called dimensional rotation and it basicly rotates the gravity for the player allowing him to climb walls and avoid obstacles . I also added a coin system and a notification system when you get coins or an ability"}, {"post_id": 38193, "ts": "2026-07-31T13:55:11Z", "hours": 1.985, "text": "Devlog 1 | Today i started working on my platform game in godot . Today i made the player , an enemy and a jumppad . Untill now everything works as it should. Tommorow i will add spikes and make the first level . I plan making 10 level each with a new obsicle. I also will add a save and load system , but that will be when i have finished with the 10 levels."}]...
|
Title: Skybound by @SCAMMARAS | Stardance
Devlogs Title: Skybound by @SCAMMARAS | Stardance
Devlogs:
Devlog 1 | Today i started working on my platform game in godot . Today i made the player , an enemy and a jumppad . Untill now everything works as it should. Tommorow i will add spikes and make the first level . I plan making 10 level each with a new obsicle. I also will add a save and load system , but that will be when i have finished with the 10 levels.
Devlog 2| Today i finished with level 1 and moved to level 2 . I added to the game an ability!! the ability is called dimensional rotation and it basicly rotates the gravity for the player allowing him to climb walls and avoid obstacles . I also added a coin system and a notification system when you get coins or an ability
Devlog 3| I made level 3 , it was easy as i had already made the enemy sprite . i combined the ability from the previous level with the enemies of this one and i think it came out being pretty fun . See you tmr with more updates 🥳🥳🥳🥳
Devlog 4 | Yesterday i got sick , so i couldn’t get any progress done , but atleast today i managed to make 2 new levels , as well as one new obstacle. I hope that tomorrow i will have more energy so i can complete as much of this project as i can.
Devlog 5 | Today i made progress!!! Wassup people , so today i made level 6-7 (no troll) of my game , it doesn’t have a name yet so i will just call it skybound as a placeholder . Anyway , what i added is two new obstacles .1. A breaking platform and 2 a Sandworm trap (looks amazing btw). Yeah that’s it for today. Stay tuned for more updates
Devlog 6 | Today i added two levels (level 8 and 9) as well as their unique traps. I added a ceiling trap and an arrow trap. Tommorow i will make the 10th and finial level and i will start thinking what can the player spend his coins on (if you have any ideas please comment them). That’s it for today . Stay tuned for more updates
Devlog 7 | Today i made a coins shop , where you can buy upgrades like more health , higher jumps and more speed. I also though that it would be nice for the final level (10) to have a boss instead of just parkour and you can beat this boss by collecting diffrent stones on the map that you can access doing some platforming. That’s all for today. Until next time
Devlog 8| i made the boss for my final level . I added how to kill him and how he kills you . I got some strange error that made my root of the boss not being root and some other strange things so i just remade the boss scene entirerly , but because i had the code it was fast. That’s all for today. Until tommorow
Devlog 9 | Today i finished with the Boss fight last level. What i have left to do now is the winning screen and load / save process , so you can save progress . I will also make micro changes so the game feels more fair and rewarding. That’s all . Until next time
Devlog 10 | Today is the day guys !!! I finally finished making my game . I added a saving /loading system , made touch ups and finished with the Victory Screen , all that is left to do is post the game to itch.io and make the README file for github
Devlog 11 | FINALLY WE ARE READY TO SHIP!!!. Today i made my readme and published my game to itchio and i think i am ready to Ship . YAY!
Ships:
After 11 days and 23 hours spent working on this project i finally DONE!! So for those who do not know what this is here is a small description , so this is a game i made solo in Godot 4 , i use art that i found on itch.io that was public for most of the art , but there is still hints of my art. Anyway i am so happy that i have finished this even though i got sick at a time it didn’t got me down and after a day of laying in bed i was able to stand up again and continuing on this project. Special thanks to anthropics and claude that made my journey less stressing and easier...
|
1793706485.7489958
|
1793792885.7489958
|
|
53869
|
Focus Timer by @RajanKC | Stardance
|
RajanKC
|
1
|
5.13
|
16
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-26T15:23:39Z", "hours": 4.0, "multiplier": 3.65, "payout": 16, "blessing": "neutral", "text": "Completed the Website I made this website without any AI but I used Guides Please rate this project good", "repo": "https://github.com/RajanKCKC/Focus", "demo": "https://rajankckc.github.io/Focus/"}]...
|
[{"post_id": 57138, "ts": "202 [{"post_id": 57138, "ts": "2026-08-29T07:36:21Z", "hours": 0.5175, "text": "Update README with clearer instructions for running the project and cloning the repository"}, {"post_id": 55572, "ts": "2026-08-27T14:42:31Z", "hours": 0.6172, "text": "Refactor CSS styles for light and dark themes, improving layout and responsiveness"}, {"post_id": 55089, "ts": "2026-08-26T15:17:59Z", "hours": 0.3292, "text": "Update README and sounds.js with detailed features and external audio sources"}, {"post_id": 54620, "ts": "2026-08-25T17:22:55Z", "hours": 2.6117, "text": "Add initial audio files and implement core functionality for controls, events, sounds, theme, and timer"}, {"post_id": 53961, "ts": "2026-08-24T17:53:59Z", "hours": 1.4122, "text": "Add initial CSS styles for light and dark themes, layout, and components"}]...
|
Title: Focus Timer by @RajanKC | Stardance
Devlog Title: Focus Timer by @RajanKC | Stardance
Devlogs:
Add initial CSS styles for light and dark themes, layout, and components
Add initial audio files and implement core functionality for controls, events, sounds, theme, and timer
Update README and sounds.js with detailed features and external audio sources
Refactor CSS styles for light and dark themes, improving layout and responsiveness
Update README with clearer instructions for running the project and cloning the repository
Ships:
Completed the Website I made this website without any AI but I used Guides Please rate this project good...
|
1793706486.9649744
|
1794570486.9649744
|
|
65778
|
Basely by @_Omar | Stardance
|
_Omar
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Basely by @_Omar | Stardance
|
1793706487.8040476
|
1794311287.8040476
|
|
53871
|
my website by @sophel | Stardance
|
sophel
|
2
|
5.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-05T23:37:16Z", "hours": 1.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "i edited my website to make the following changes: i added pictures and removed the custom cursor. i changed the format of the about me page and linked my past projects to the project page", "repo": "https://github.com/sopheldalulu/portfolio", "demo": "https://sopheldalulu.github.io/portfolio/"}, {"ship_num": 2, "ts": "2026-08-25T17:57:33Z", "hours": 4.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "ps the view project buttons aren’t linked to anything yet ><", "repo": "https://github.com/sopheldalulu/portfolio", "demo": "https://sopheldalulu.github.io/portfolio/"}]...
|
[{"post_id": 62535, "ts": "202 [{"post_id": 62535, "ts": "2026-09-05T23:24:34Z", "hours": 0.9925, "text": "i added pictures and removed the custom cursor. i changed the format of the about me page and linked my past projects to the project page"}, {"post_id": 54623, "ts": "2026-08-25T17:26:03Z", "hours": 3.7706, "text": "my own universal portfolio website!"}]...
|
Title: my website by @sophel | Stardance
Devlogs: Title: my website by @sophel | Stardance
Devlogs:
my own universal portfolio website!
i added pictures and removed the custom cursor. i changed the format of the about me page and linked my past projects to the project page
Ships:
ps the view project buttons aren’t linked to anything yet ><
i edited my website to make the following changes: i added pictures and removed the custom cursor. i changed the format of the about me page and linked my past projects to the project page...
|
1793706490.8048189
|
1793792890.8048189
|
|
53875
|
Phan OS by @phantom-ascii | Stardance
|
phantom-ascii
|
2
|
6.0
|
3
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-25T14:45:51Z", "hours": 1.0, "multiplier": 3.63, "payout": 3, "blessing": "neutral", "text": "The project is pretty similar to webos1 just a few teaks and additions. Firstly i fixed a bug where you couldn’t deselect apps by clicking a different one. i then added 3 new apps (as i already had 7 apps making these weren’t hard as i already had an app template and then just made the js for that specific app.). I added the following: a notes app, a calculator app and a minimalist clock app. I have learnt alot during this project especially of css styling and ALOT of js. Thx to @Tanu for helpping out. byee :)", "repo": "https://github.com/phantom-ascii/Phan-OS", "demo": "https://phantom-ascii.github.io/Phan-OS/"}, {"ship_num": 2, "ts": "2026-08-25T02:08:14Z", "hours": 5.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I have created my very own web os that i can use in place of my personal website. I created it with the guide and alot of geekforgeek tutorials. I used vscode to script it and github pages to deploy it. The full source code is on github also. It contains 7 apps which you will need to test the website to find out what we do and contains a nice top bar (and alot of self glaze). hope you enjoy it", "repo": "https://github.com/phantom-ascii/Phan-OS", "demo": "https://phantom-ascii.github.io/Phan-OS/"}]...
|
[{"post_id": 54489, "ts": "202 [{"post_id": 54489, "ts": "2026-08-25T14:42:33Z", "hours": 0.9203, "text": "This was pretty quick. since i already have alot of apps making the 3 new ones want hard at all. i js copy and paste the template i have for apps and then customize the app itself. i added 3 new apps. a calculator, a notes app and a minimalist clock. I also fixed a app selection bug"}, {"post_id": 54189, "ts": "2026-08-25T02:03:59Z", "hours": 3.8631, "text": "I finished the full thing with 7 apps. Go check it out"}, {"post_id": 54074, "ts": "2026-08-24T20:55:59Z", "hours": 0.7703, "text": "I improved the spacing aligned a few things and added a horizontal spacer."}, {"post_id": 54044, "ts": "2026-08-24T20:06:48Z", "hours": 0.6922, "text": "Just started this new project.. A web os dedicated all about me. Im goign to try to use ZERO AI whatso ever in this project and see if i would do well as a programmer pre ai. ANyways heres what ive made so far"}]...
|
Title: Phan OS by @phantom-ascii | Stardance
Devl Title: Phan OS by @phantom-ascii | Stardance
Devlogs:
Just started this new project.. A web os dedicated all about me. Im goign to try to use ZERO AI whatso ever in this project and see if i would do well as a programmer pre ai. ANyways heres what ive made so far
I improved the spacing aligned a few things and added a horizontal spacer.
I finished the full thing with 7 apps. Go check it out
This was pretty quick. since i already have alot of apps making the 3 new ones want hard at all. i js copy and paste the template i have for apps and then customize the app itself. i added 3 new apps. a calculator, a notes app and a minimalist clock. I also fixed a app selection bug
Ships:
I have created my very own web os that i can use in place of my personal website. I created it with the guide and alot of geekforgeek tutorials. I used vscode to script it and github pages to deploy it. The full source code is on github also. It contains 7 apps which you will need to test the website to find out what we do and contains a nice top bar (and alot of self glaze). hope you enjoy it
The project is pretty similar to webos1 just a few teaks and additions. Firstly i fixed a bug where you couldn’t deselect apps by clicking a different one. i then added 3 new apps (as i already had 7 apps making these weren’t hard as i already had an app template and then just made the js for that specific app.). I added the following: a notes app, a calculator app and a minimalist clock app. I have learnt alot during this project especially of css styling and ALOT of js. Thx to @Tanu for helpping out. byee :)...
|
1793706492.041614
|
1793792892.041614
|
|
65779
|
My awesome macropad! by @Yash2010 | Stardance
|
Yash2010
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @Yash2010 | Stardan Title: My awesome macropad! by @Yash2010 | Stardance...
|
1793706493.208907
|
1794311293.208907
|
|
5530
|
Magic Ritual Mod by @m3e660 | Stardance
|
m3e660
|
1
|
9.21
|
41
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-04T14:22:23Z", "hours": 5.0, "multiplier": 8.58, "payout": 41, "blessing": "neutral", "text": "This is a 1.21.1 Neoforge Magic Mod for Mincraft, this mod differs from the past magic mods, and focus more on long term and thought out magic rituals!", "repo": "https://github.com/m3e66/magic_ritual_mod-source", "demo": "https://modrinth.com/mod/magic-ritual"}]...
|
[{"post_id": 12009, "ts": "202 [{"post_id": 12009, "ts": "2026-06-19T16:23:53Z", "hours": 2.4439, "text": "Made different grades for spirit stones Make it less laggy Increase the particle cap for minecraft"}, {"post_id": 2765, "ts": "2026-06-05T15:41:24Z", "hours": 1.7611, "text": "Fixed the structure of the particle data"}, {"post_id": 2149, "ts": "2026-06-04T14:17:39Z", "hours": 2.2792, "text": "Finally fix the combo detection code and even add a new effect when the combo is formed"}, {"post_id": 1255, "ts": "2026-06-03T03:40:57Z", "hours": 2.4672, "text": "Fixed the Patchouli entries and catergories"}]...
|
Title: Magic Ritual Mod by @m3e660 | Stardance
De Title: Magic Ritual Mod by @m3e660 | Stardance
Devlogs:
Fixed the Patchouli entries and catergories
Finally fix the combo detection code and even add a new effect when the combo is formed
Fixed the structure of the particle data
Made different grades for spirit stones Make it less laggy Increase the particle cap for minecraft
Ships:
This is a 1.21.1 Neoforge Magic Mod for Mincraft, this mod differs from the past magic mods, and focus more on long term and thought out magic rituals!...
|
1793706494.1065035
|
1793792894.1065035
|
|
65780
|
Solo Leveller by @Yash2010 | Stardance
|
Yash2010
|
0
|
0.66
|
0
|
[]
|
[{"post_id": 81811, "ts": "202 [{"post_id": 81811, "ts": "2026-10-22T16:32:13Z", "hours": 0.6642, "text": "I am working on my personal site which is themed around my favourite anime solo leveling and i just started."}]...
|
Title: Solo Leveller by @Yash2010 | Stardance
Dev Title: Solo Leveller by @Yash2010 | Stardance
Devlogs:
I am working on my personal site which is themed around my favourite anime solo leveling and i just started....
|
1793706495.297699
|
1794311295.297699
|
|
9777
|
AI_boat_pilot by @LatvianCrow | Stardance
|
LatvianCrow
|
1
|
10.0
|
86
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-05T07:16:41Z", "hours": 10.0, "multiplier": 9.03, "payout": 86, "blessing": "neutral", "text": "I made an ml-agent controlled boat, it’s trained to collect and fire 5 fireworks.", "repo": "https://github.com/viestursgaming03-hash/AI_Boat_Pilot", "demo": "https://play.unity.com/api/v1/games/game/81b66972-070b-4e3a-aad4-b6f1f9ef8bb7/build/latest/frame"}]...
|
[{"post_id": 39840, "ts": "202 [{"post_id": 39840, "ts": "2026-08-03T03:01:29Z", "hours": 1.4883, "text": "Added progress text to show how many fireworks are left until the goal is reached"}, {"post_id": 22168, "ts": "2026-07-04T14:21:45Z", "hours": 8.0522, "text": "Adding fireworks that shoot out when the boat reaches the goal."}]...
|
Title: AI_boat_pilot by @LatvianCrow | Stardance
Title: AI_boat_pilot by @LatvianCrow | Stardance
Devlogs:
Adding fireworks that shoot out when the boat reaches the goal.
Added progress text to show how many fireworks are left until the goal is reached
Ships:
I made an ml-agent controlled boat, it’s trained to collect and fire 5 fireworks....
|
1793706496.1994994
|
1793792896.1994994
|
|
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....
|
1793706497.3937845
|
1793792897.3937845
|
|
65781
|
yeaaa by @nihilpulipaka | Stardance
|
nihilpulipaka
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: yeaaa by @nihilpulipaka | Stardance
|
1793706498.6336215
|
1794311298.6336215
|
|
53893
|
Terrabot by @OneShot | Stardance
|
OneShot
|
1
|
3.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-24T19:22:47Z", "hours": 3.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "This is the terrabot for slack", "repo": "https://github.com/Zlati839/Slack", "demo": "https://hackclub.enterprise.slack.com/archives/C0P5NE354"}]...
|
[{"post_id": 54012, "ts": "202 [{"post_id": 54012, "ts": "2026-08-24T19:10:17Z", "hours": 3.1653, "text": "Commands"}]...
|
Title: Terrabot by @OneShot | Stardance
Devlogs:
Title: Terrabot by @OneShot | Stardance
Devlogs:
Commands
Ships:
This is the terrabot for slack...
|
1793706499.5110254
|
1793792899.5110254
|
|
40572
|
My own site! by @AnshuRoy | Stardance
|
AnshuRoy
|
1
|
3.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-07-28T12:09:51Z", "hours": 3.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made protofolio its cool .", "repo": "https://github.com/ANSHU-ROY/portofolio", "demo": "https://anshudevdesign.netlify.app/"}]...
|
[{"post_id": 36339, "ts": "202 [{"post_id": 36339, "ts": "2026-07-28T12:07:57Z", "hours": 3.0125, "text": "Arranged Everything geeting statr to it. i work offline so hack time give some kind of error."}]...
|
Title: My own site! by @AnshuRoy | Stardance
Devl Title: My own site! by @AnshuRoy | Stardance
Devlogs:
Arranged Everything geeting statr to it. i work offline so hack time give some kind of error.
Ships:
I made protofolio its cool ....
|
1793706500.6661074
|
1793792900.6661074
|
|
65782
|
Frictionless by @sarojjgd77 | Stardance
|
sarojjgd77
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Frictionless by @sarojjgd77 | Stardance
|
1793706501.8199072
|
1794311301.8199072
|
|
40700
|
dicey by @splice | Stardance
|
splice
|
1
|
0.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-07-29T20:08:22Z", "hours": 0.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "A Slack bot designed to make conversations and discussions more fun and interesting! if a new demo link is required because the old one expired let me know", "repo": "https://github.com/spliceydice/dicey", "demo": "https://hackclub.slack.com/archives/C0BN2H7R86L"}]...
|
[{"post_id": 37221, "ts": "202 [{"post_id": 37221, "ts": "2026-07-29T19:28:50Z", "hours": 0.4183, "text": "** Devlog #1 ** Hi guys, this will be the only devlog for this project mainly because of how little time is required but also that I forgot to log most of my time via Hackatime 💀💀. Anyway, Slack + VSCode Initialising the bot and navigating through Slack’s website was probably the easiest part of this. It did get confusing at times but the guide helped out a lot. The same can also be said for VSCode the programming part wasn’t the hardest. Nest The same cannot be said for using the server exclusively through CLI. It also did not help that two of the commands did not work on the server due to the URLs now pointing elsewhere and that I kept getting 403s . These two commands didn’t work: curl -fsSL https://deb.nodesource.com/setup_lts.x | bash - apt install -y nodejs So unfortunately, I did have to use Claude here and instead of installing node on the server via node source, I installed it via nvm. Instead of those two commands use these and follow the instructions: curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash source ~/.bashrc nvm install --lts I don’t know if that error was exclusive to me but if other people face that error, there’s the code you should use. Other than that, developing the bot was great and it took me around 2 hours (half an hour extra because of that error). This is probably where I’ll end development for the slack bot but if you still want to check out my repo: https://github.com/spliceydice/dicey p.s. any people who work at stardance reading this please check that error out! Thanks!"}]...
|
Title: dicey by @splice | Stardance
Devlogs:
** D Title: dicey by @splice | Stardance
Devlogs:
** Devlog #1 ** Hi guys, this will be the only devlog for this project mainly because of how little time is required but also that I forgot to log most of my time via Hackatime 💀💀. Anyway, Slack + VSCode Initialising the bot and navigating through Slack’s website was probably the easiest part of this. It did get confusing at times but the guide helped out a lot. The same can also be said for VSCode the programming part wasn’t the hardest. Nest The same cannot be said for using the server exclusively through CLI. It also did not help that two of the commands did not work on the server due to the URLs now pointing elsewhere and that I kept getting 403s . These two commands didn’t work: curl -fsSL https://deb.nodesource.com/setup_lts.x | bash - apt install -y nodejs So unfortunately, I did have to use Claude here and instead of installing node on the server via node source, I installed it via nvm. Instead of those two commands use these and follow the instructions: curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash source ~/.bashrc nvm install --lts I don’t know if that error was exclusive to me but if other people face that error, there’s the code you should use. Other than that, developing the bot was great and it took me around 2 hours (half an hour extra because of that error). This is probably where I’ll end development for the slack bot but if you still want to check out my repo: https://github.com/spliceydice/dicey p.s. any people who work at stardance reading this please check that error out! Thanks!
Ships:
A Slack bot designed to make conversations and discussions more fun and interesting! if a new demo link is required because the old one expired let me know...
|
1793706502.7008398
|
1793792902.7008398
|
|
53897
|
DG-SITE by @decagon | Stardance
|
decagon
|
1
|
2.85
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-25T03:12:56Z", "hours": 2.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made my very first website. It can tell you a bit about me. I am new to making websites so it wasn’t exactly effortless, but I had plenty of resources to pull from. The only websites I’ve made before this has just been me doing some vibe-coding. I am very happy with the result, even if it is very simple.", "repo": "https://github.com/Devahedron/DGHG-SITE", "demo": "https://devahedron.github.io/DGHG-SITE/"}]...
|
[{"post_id": 54864, "ts": "202 [{"post_id": 54864, "ts": "2026-08-26T02:01:30Z", "hours": 0.8503, "text": "Just update my website to have some more style. Played with text alignment, color, put a filter on the mountain image, and some other things."}, {"post_id": 54210, "ts": "2026-08-25T03:05:14Z", "hours": 0.9972, "text": "Just finished my personal website! Had a great time learning how to make it!"}, {"post_id": 54177, "ts": "2026-08-25T01:31:02Z", "hours": 1.1233, "text": "I just made my first (very unfinished) website! I will be sure to finish/improve it tonight or after cross country tomorrow. I say finish, but my old tech teacher always said how you don’t ever truly finish a project because you can always continue to improve it. He had many quotes he would use."}]...
|
Title: DG-SITE by @decagon | Stardance
Devlogs:
I Title: DG-SITE by @decagon | Stardance
Devlogs:
I just made my first (very unfinished) website! I will be sure to finish/improve it tonight or after cross country tomorrow. I say finish, but my old tech teacher always said how you don’t ever truly finish a project because you can always continue to improve it. He had many quotes he would use.
Just finished my personal website! Had a great time learning how to make it!
Just update my website to have some more style. Played with text alignment, color, put a filter on the mountain image, and some other things.
Ships:
I made my very first website. It can tell you a bit about me. I am new to making websites so it wasn’t exactly effortless, but I had plenty of resources to pull from. The only websites I’ve made before this has just been me doing some vibe-coding. I am very happy with the result, even if it is very simple....
|
1793706503.8398216
|
1793792903.8398216
|
|
65783
|
Discod by @XantoRJellybeanIX | Stardance
|
XantoRJellybeanIX
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Discod by @XantoRJellybeanIX | Stardance
|
1793706505.0080962
|
1794311305.0080962
|
|
53898
|
Tabbo by @Jasur | Stardance
|
Jasur
|
1
|
3.03
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-24T21:55:47Z", "hours": 2.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I built Tabbo - website for viewing NASA media for specific dates. During the process of development I overcame some challenges - fetching today’s date in a specific format; I learned that I can use .then() in Javascript that is much simpler than await() which was more complex to understand but did the same thing.", "repo": "https://github.com/jasur0407/tabbo", "demo": "https://jasur0407.github.io/tabbo/"}]...
|
[{"post_id": 54321, "ts": "202 [{"post_id": 54321, "ts": "2026-08-25T08:30:26Z", "hours": 1.0297, "text": "Tabbo devlog #2 I removed the blue side stripes, since they were covering video controls - user couldn’t navigate through video files. But to compensate that I added text animations for title and explanation so they appear one after another word-by-word."}, {"post_id": 54097, "ts": "2026-08-24T21:45:03Z", "hours": 1.8978, "text": "Tabbo devlog I built Tabbo as part of the NASA mission in Stardance. Tabbo is a page where you can view information about the Image of the day by NASA for specific dates in the Calendar, whether it’s a regular day or a special one like a birthday. It can view images, video files and YouTube videos. The thing I like about it is a minimalistic retro look that matches with the images in the background giving comforting feeling."}]...
|
Title: Tabbo by @Jasur | Stardance
Devlogs:
Tabbo Title: Tabbo by @Jasur | Stardance
Devlogs:
Tabbo devlog I built Tabbo as part of the NASA mission in Stardance. Tabbo is a page where you can view information about the Image of the day by NASA for specific dates in the Calendar, whether it’s a regular day or a special one like a birthday. It can view images, video files and YouTube videos. The thing I like about it is a minimalistic retro look that matches with the images in the background giving comforting feeling.
Tabbo devlog #2 I removed the blue side stripes, since they were covering video controls - user couldn’t navigate through video files. But to compensate that I added text animations for title and explanation so they appear one after another word-by-word.
Ships:
I built Tabbo - website for viewing NASA media for specific dates. During the process of development I overcame some challenges - fetching today’s date in a specific format; I learned that I can use .then() in Javascript that is much simpler than await() which was more complex to understand but did the same thing....
|
1793706505.9307373
|
1793792905.9307373
|
|
65784
|
Frictionless by @pili017 | Stardance
|
pili017
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Frictionless by @pili017 | Stardance
|
1793706507.1602437
|
1794311307.1602437
|
|
40710
|
StatSbot by @static_noise | Stardance
|
static_noise
|
1
|
1.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-07-27T19:34:00Z", "hours": 1.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "some random bot, nothing to be proud of", "repo": "https://github.com/TheStaticNoise/StatSbot", "demo": "https://staticssht.slack.com/archives/C0BM2FVC4PN"}]...
|
[{"post_id": 35975, "ts": "202 [{"post_id": 35975, "ts": "2026-07-27T19:28:20Z", "hours": 0.9989, "text": "generally done XD (almost the entire token)"}]...
|
Title: StatSbot by @static_noise | Stardance
Devl Title: StatSbot by @static_noise | Stardance
Devlogs:
generally done XD (almost the entire token)
Ships:
some random bot, nothing to be proud of...
|
1793706508.0642729
|
1793792908.0642729
|
|
65785
|
My own site! by @dilnuraxusanboyeva19 | Stardance
|
dilnuraxusanboyeva19
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My own site! by @dilnuraxusanboyeva19 | Sta Title: My own site! by @dilnuraxusanboyeva19 | Stardance...
|
1793706509.2260416
|
1794311309.2260416
|
|
41997
|
CatVision v3.0 by @MarioS271 | Stardance
|
MarioS271
|
1
|
20.0
|
295
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-01T20:02:34Z", "hours": 20.0, "multiplier": 12.67, "payout": 295, "blessing": "neutral", "text": "Hi! Welcome to my minecraft mod, CatVision. (well its just a rewrite of a rewrite but still) This is CatVision v3.0, the third rewrite. Guide for trying the mod Disclaimer: If you do not own minecraft, I suggest you skip reviewing this (with the little skip button at the top of the page), as you won’t be able to try this properly. Press the “Try Project” button to land on the latest release of the mod Download the .jar file for the loader you want to use (i recommend fabric) Install the mod somewhere 3.1) If you only have stock minecraft, consider skipping, as it takes a bit of time to get modded minecraft set up. I’d really appreciate you taking that time tho! :) 3.2) Otherwise, download the fitting .jar for your version and loader and drop it in your launcher/mods folder. Enjoy toying around! 😊 Default Keybinds: [F12] Open Config Menu (also possible via the Mod Menu) [ , ] Toggle Night Vision Why rewrite it that often? Well the first version (CatVision Legacy) only supported minecraft 1.21 and later on the fabric loader. Version 2 (aka CatVision Architectury) used the Architectury Loom to support Fabric, Forge and NeoForge on versions 1.16.5, 1.20.1, 1.21.1 and 1.21.11. However, I wanted support for WAY more versions, bringing us to now. Version 3 uses Stonecutter (a gradle preprocessor for building multi-version and multi-loader mods in one codebase). By doing so, v3 supports 1.16.5, 1.17.1 and all later versions, on Fabric, Forge and NeoForge. I hope you have fun playing around with the mod!", "repo": "https://github.com/MarioS271/cat_vision", "demo": "https://github.com/MarioS271/cat_vision/releases/latest"}]...
|
[{"post_id": 39042, "ts": "202 [{"post_id": 39042, "ts": "2026-08-01T18:34:31Z", "hours": 2.4739, "text": "After a little bit of a fight, CatVision v3.0 is finally done! Support for 26.1, 26.1.1, 26.1.2 and 26.2 is finally here. After fixing a mistake in the fabric build config, everything finally works and compiles. funny thing btw Yesterday, the 1.21.9 build on github failed… because the maven server of one dependency decided not to respond :) oh and look at this beautiful compatibility right here"}, {"post_id": 38585, "ts": "2026-08-01T02:04:47Z", "hours": 2.0261, "text": "1.21.x is done!! :) Going to sleep now…"}, {"post_id": 38511, "ts": "2026-07-31T22:52:07Z", "hours": 1.0006, "text": "1.20.x is finally done! 🎉 I’ll be doing 1.21.x now, not sure if I’ll finish it today. Tomorrow, hopefully everything will be finished and I can start rewriting my other three mods in this format :) A few notes Forge support has now been dropped in favour of NeoForge (the last version which supports forge is 1.20.1) 1.20.2, 1.20.3 and 1.20.5 don’t have NeoForge support (none publish gradle module data - they’re all beta versions - making it impossible for moddev-gradle to resolve them properly) Fabric still supports 1.20 to 1.20.6 tho! :)"}, {"post_id": 38470, "ts": "2026-07-31T21:11:08Z", "hours": 2.415, "text": "i just spent two f * cking hours trying to find out why my mod wasnt loading in neoforge So get this: In NeoForge 20.4 and earlier (which maps to MC version 1.20.4 and prior, I’m on MC 1.20.4), the metadata file should be under META-INF/mods.toml . Exactly ONE version later (NeoForge 20.5+, aka MC 1.20.5+), that changed to META-INF/neoforge.mods.toml . Of course, my build toolchain was generating neoforge.mods.toml and NeoForge wasn’t recognizing that, it wanted mods.toml . why why why do i do this to myself every single day"}, {"post_id": 38321, "ts": "2026-07-31T17:21:54Z", "hours": 1.5075, "text": "Support for 1.19.x is here! All the 1.19 versions are built, working and published! Next up is 1.20.x, however those will be taking a longer time due to NeoForge being introduced at 1.20.2."}, {"post_id": 38244, "ts": "2026-07-31T15:19:59Z", "hours": 1.9369, "text": "Support for 1.18.x is here! After a few more hiccups, 1.18, 1.18.1 and 1.18.2 are finally working! :) 1.18 is already out, 1.18.1 is building on github and 1.18.2 is about to start building And the Modrinth Page still isn’t public… (still being reviewed 🥲)"}, {"post_id": 37969, "ts": "2026-07-31T01:19:04Z", "hours": 2.7111, "text": "I AM FREE OF THIS HELL (for now) it is 3h after midnight why do i do this to myself The problems (there were a lot of them) Wrong Java Versions caused the mod to blow up when starting in a real launcher After correcting the Java Versions, fletching-table didnt resolve :D (it needs Java 17+, but MC needs Java 8 (1.16.5) and Java 16 (1.17.1)) Cloth Config was misbehaving >:( JiJ (jar in jar) did NOT want to work properly (cloth config issue #1) AAND the final boss… cloth config issue #2 Final boss (scary alert) Problem: The dev instance of minecraft uses the mojang mappings, but cloth config uses SRG mappings. Of course, SRG mappings and mojang mappings aren’t compatible, and as soon as you opened the config menu, the game would crash (but only in dev builds!). The problem is, this issue would’ve likely stayed for EVERY forge version of the mod, meaning debugging would’ve gotten VERY ANNOYING (build, import into real minecraft instance, test there). The Fix Simple: just remap cloth config from SRG to mojmap when in the dev env! Simple task! …except the remapper needs a “dictionary” jar in the same mappings as the thing it’s remapping. Cloth is SRG. The dev env only has mojmap. So there was no SRG dictionary to hand it. How do I solve this now? SIMPLE!!! Remap Minecraft itself BACK to SRG just to use it as the dictionary, then remap cloth against that!!!!!!!!!!!! All that to fix ONE GODDAMN FIELD NAME I would like to thank Claude for the technical (and moral) support in this thank you thank you thank you thank you thank you thank you i am going to bed holy f * ck"}, {"post_id": 37891, "ts": "2026-07-30T21:39:10Z", "hours": 1.0014, "text": "1.16.5 works and is out! Published on GitHub, under review on Modrinth and Curseforge :) What’s currently done CI/CD working, builds & publishes to github, modrinth and curseforge automatically 1.16.5-fabric done and released 1.16.5-forge done and released The Problem with 1.16.5-forge specifically NFRT (the runtime behind net.neoforged.moddev.legacyforge) can only build Minecraft versions that ship official Mojang mappings (which start at 1.17), which of course aren’t shipped for 1.16.5. This required the switch to Architectury Loom for that one version+loader combo. (thank you claude for your token-sacrifise for that 🫡) I’ll be working on the next few versions now, wish me luck they’ll be easier! 😅"}, {"post_id": 37844, "ts": "2026-07-30T20:13:29Z", "hours": 0.6061, "text": "CI/CD working! I finally got all the CI/CD (validate, build, publish to github, modrinth and curseforge) working. Next, I’ll be trying to get forge for 1.16.5 working to be able to publish 1.16.5 fully."}, {"post_id": 37794, "ts": "2026-07-30T18:42:50Z", "hours": 3.9406, "text": "CatVision v3.0 yes, this is the third rewrite Why rewrite again?? I didn’t like the project structure (seperate branch per minecraft version, hard to maintain, every version has to be managed independently, hard to scale) and I wanted compatibility for 1.16.5 up to the latest version and all inbetween with support for fabric, forge and neoforge. The Solution: Stonecutter Stonecutter is a gradle plugin that lets you maintain a single codebase for a multi-version and multi-loader project. You just annotate your code with version and loader conditions, and at compile time, stonecutter just “preprocesses” the annotated code. On a slight side note to preprocessing (if you’re interested): Preprocessing is the act of temporarily changing the source code (the human readable code that you write, NOT the machine code) before compilation. This is done by the preprocessor, a special program written for this one purpose. It is usually the first step in a program’s compilation (example: the C preprocessor, with instructions like #include , #define and more) Current progress Currently, I’ve got the template up and running with the 1.16.5-fabric version of the mod already functional. I’ve also set up the GitHub repo and the modrinth and curseforge projects."}]...
|
Title: CatVision v3.0 by @MarioS271 | Stardance
D Title: CatVision v3.0 by @MarioS271 | Stardance
Devlogs:
CatVision v3.0 yes, this is the third rewrite Why rewrite again?? I didn’t like the project structure (seperate branch per minecraft version, hard to maintain, every version has to be managed independently, hard to scale) and I wanted compatibility for 1.16.5 up to the latest version and all inbetween with support for fabric, forge and neoforge. The Solution: Stonecutter Stonecutter is a gradle plugin that lets you maintain a single codebase for a multi-version and multi-loader project. You just annotate your code with version and loader conditions, and at compile time, stonecutter just “preprocesses” the annotated code. On a slight side note to preprocessing (if you’re interested): Preprocessing is the act of temporarily changing the source code (the human readable code that you write, NOT the machine code) before compilation. This is done by the preprocessor, a special program written for this one purpose. It is usually the first step in a program’s compilation (example: the C preprocessor, with instructions like #include , #define and more) Current progress Currently, I’ve got the template up and running with the 1.16.5-fabric version of the mod already functional. I’ve also set up the GitHub repo and the modrinth and curseforge projects.
CI/CD working! I finally got all the CI/CD (validate, build, publish to github, modrinth and curseforge) working. Next, I’ll be trying to get forge for 1.16.5 working to be able to publish 1.16.5 fully.
1.16.5 works and is out! Published on GitHub, under review on Modrinth and Curseforge :) What’s currently done CI/CD working, builds & publishes to github, modrinth and curseforge automatically 1.16.5-fabric done and released 1.16.5-forge done and released The Problem with 1.16.5-forge specifically NFRT (the runtime behind net.neoforged.moddev.legacyforge) can only build Minecraft versions that ship official Mojang mappings (which start at 1.17), which of course aren’t shipped for 1.16.5. This required the switch to Architectury Loom for that one version+loader combo. (thank you claude for your token-sacrifise for that 🫡) I’ll be working on the next few versions now, wish me luck they’ll be easier! 😅
I AM FREE OF THIS HELL (for now) it is 3h after midnight why do i do this to myself The problems (there were a lot of them) Wrong Java Versions caused the mod to blow up when starting in a real launcher After correcting the Java Versions, fletching-table didnt resolve :D (it needs Java 17+, but MC needs Java 8 (1.16.5) and Java 16 (1.17.1)) Cloth Config was misbehaving >:( JiJ (jar in jar) did NOT want to work properly (cloth config issue #1) AAND the final boss… cloth config issue #2 Final boss (scary alert) Problem: The dev instance of minecraft uses the mojang mappings, but cloth config uses SRG mappings. Of course, SRG mappings and mojang mappings aren’t compatible, and as soon as you opened the config menu, the game would crash (but only in dev builds!). The problem is, this issue would’ve likely stayed for EVERY forge version of the mod, meaning debugging would’ve gotten VERY ANNOYING (build, import into real minecraft instance, test there). The Fix Simple: just remap cloth config from SRG to mojmap when in the dev env! Simple task! …except the remapper needs a “dictionary” jar in the same mappings as the thing it’s remapping. Cloth is SRG. The dev env only has mojmap. So there was no SRG dictionary to hand it. How do I solve this now? SIMPLE!!! Remap Minecraft itself BACK to SRG just to use it as the dictionary, then remap cloth against that!!!!!!!!!!!! All that to fix ONE GODDAMN FIELD NAME I would like to thank Claude for the technical (and moral) support in this thank you thank you thank you thank you thank you thank you i am going to bed holy f * ck
Support for 1.18.x is here! After a few more hiccups, 1.18, 1.18.1 and 1.18.2 are finally working! :) 1.18 is already out, 1.18.1 is building on github and 1.18.2 is about to start building And the Modrinth Page still isn’t public… (still being reviewed 🥲)
Support for 1.19.x is here! All the 1.19 versions are built, working and published! Next up is 1.20.x, however those will be taking a longer time due to NeoForge being introduced at 1.20.2.
i just spent two f * cking hours trying to find out why my mod wasnt loading in neoforge So get this: In NeoForge 20.4 and earlier (which maps to MC version 1.20.4 and prior, I’m on MC 1.20.4), the metadata file should be under META-INF/mods.toml . Exactly ONE version later (NeoForge 20.5+, aka MC 1.20.5+), that changed to META-INF/neoforge.mods.toml . Of course, my build toolchain was generating neoforge.mods.toml and NeoForge wasn’t recognizing that, it wanted mods.toml . why why why do i do this to myself every single day
1.20.x is finally done! 🎉 I’ll be doing 1.21.x now, not sure if I’ll finish it today. Tomorrow, hopefully everything will be finished and I can start rewriting my other three mods in this format :) A few notes Forge support has now been dropped in favour of NeoForge (the last version which supports forge is 1.20.1) 1.20.2, 1.20.3 and 1.20.5 don’t have NeoForge support (none publish gradle module data - they’re all beta versions - making it impossible for moddev-gradle to resolve them properly) Fabric still supports 1.20 to 1.20.6 tho! :)
1.21.x is done!! :) Going to sleep now…
After a little bit of a fight, CatVision v3.0 is finally done! Support for 26.1, 26.1.1, 26.1.2 and 26.2 is finally here. After fixing a mistake in the fabric build config, everything finally works and compiles. funny thing btw Yesterday, the 1.21.9 build on github failed… because the maven server of one dependency decided not to respond :) oh and look at this beautiful compatibility right here
Ships:
Hi! Welcome to my minecraft mod, CatVision. (well its just a rewrite of a rewrite but still) This is CatVision v3.0, the third rewrite. Guide for trying the mod Disclaimer: If you do not own minecraft, I suggest you skip reviewing this (with the little skip button at the top of the page), as you won’t be able to try this properly. Press the “Try Project” button to land on the latest release of the mod Download the .jar file for the loader you want to use (i recommend fabric) Install the mod somewhere 3.1) If you only have stock minecraft, consider skipping, as it takes a bit of time to get modded minecraft set up. I’d really appreciate you taking that time tho! :) 3.2) Otherwise, download the fitting .jar for your version and loader and drop it in your launcher/mods folder. Enjoy toying around! 😊 Default Keybinds: [F12] Open Config Menu (also possible via the Mod Menu) [ , ] Toggle Night Vision Why rewrite it that often? Well the first version (CatVision Legacy) only supported minecraft 1.21 and later on the fabric loader. Version 2 (aka CatVision Architectury) used the Architectury Loom to support Fabric, Forge and NeoForge on versions 1.16.5, 1.20.1, 1.21.1 and 1.21.11. However, I wanted support for WAY more versions, bringing us to now. Version 3 uses Stonecutter (a gradle preprocessor for building multi-version and multi-loader mods in one codebase). By doing so, v3 supports 1.16.5, 1.17.1 and all later versions, on Fabric, Forge and NeoForge. I hope you have fun playing around with the mod!...
|
1793706510.0973232
|
1793792910.0973232
|
|
6601
|
First Time Creating A Slack Bot by @franco | Stard First Time Creating A Slack Bot by @franco | Stardance...
|
franco
|
1
|
0.31
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-04T15:12:18Z", "hours": 0.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a simple slack bot with some basic commands /dsb-ping - Check bot latency /dsb-help - List all available commands /dsb-catfact - Get a random cat fact /dsb-joke - Get a random joke thought it was going to be easier like creating a discord bot so yeah it works mostly", "repo": "https://github.com/Franco-Senes/Stardance-Slackbot", "demo": "https://hackclub.enterprise.slack.com/archives/C0B92B08KC6"}]...
|
[{"post_id": 3792, "ts": "2026 [{"post_id": 3792, "ts": "2026-06-06T20:54:19Z", "hours": 0.3122, "text": "Updated the read me!"}, {"post_id": 2157, "ts": "2026-06-04T14:29:25Z", "hours": 0.3539, "text": "Coding the bot was the easy part but configurtating was hell."}]...
|
Title: First Time Creating A Slack Bot by @franco Title: First Time Creating A Slack Bot by @franco | Stardance
Devlogs:
Coding the bot was the easy part but configurtating was hell.
Updated the read me!
Ships:
I made a simple slack bot with some basic commands /dsb-ping - Check bot latency /dsb-help - List all available commands /dsb-catfact - Get a random cat fact /dsb-joke - Get a random joke thought it was going to be easier like creating a discord bot so yeah it works mostly...
|
1793706511.2673798
|
1793792911.2673798
|
|
65786
|
My awesome macropad! by @ankan96782 | Stardance
|
ankan96782
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @ankan96782 | Stard Title: My awesome macropad! by @ankan96782 | Stardance...
|
1793706512.4815176
|
1794311312.4815176
|
|
44822
|
Slop PDF by @AVD | Stardance
|
AVD
|
1
|
6.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-10T19:05:15Z", "hours": 6.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a pdf that generates random slop within the pdf.", "repo": "https://github.com/vandorena/sloppdf", "demo": "https://slop.alexvd.dev"}]...
|
[{"post_id": 44756, "ts": "202 [{"post_id": 44756, "ts": "2026-08-10T19:04:17Z", "hours": 0.8211, "text": "Finished the site! Made it not sloppy and handwritten. So you can learn all about slop pdf."}, {"post_id": 43604, "ts": "2026-08-08T23:23:28Z", "hours": 1.9069, "text": "I made a non slop slop pdf site!"}, {"post_id": 42788, "ts": "2026-08-07T17:53:57Z", "hours": 0.3575, "text": "I slopped a frontend. Don’t review the website, review the PDF in adobe acrobat!"}, {"post_id": 42590, "ts": "2026-08-07T12:33:37Z", "hours": 1.6261, "text": "The slop works! :D"}, {"post_id": 42378, "ts": "2026-08-07T02:11:01Z", "hours": 0.9961, "text": "Just made a Proof Of Concept of sending http requests from a PDF."}]...
|
Title: Slop PDF by @AVD | Stardance
Devlogs:
Just Title: Slop PDF by @AVD | Stardance
Devlogs:
Just made a Proof Of Concept of sending http requests from a PDF.
The slop works! :D
I slopped a frontend. Don’t review the website, review the PDF in adobe acrobat!
I made a non slop slop pdf site!
Finished the site! Made it not sloppy and handwritten. So you can learn all about slop pdf.
Ships:
I made a pdf that generates random slop within the pdf....
|
1793706513.3877215
|
1793792913.3877215
|
|
43255
|
TodoApp by @renanfartes | Stardance
|
renanfartes
|
1
|
4.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-03T19:25:34Z", "hours": 4.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a todo aplication to train my Vue 3 skills while trying to make a useful project. I did put manual effort styling this but still ugly D:", "repo": "https://github.com/Renan-G-projec/TodoApp", "demo": "https://renan-g-projec.github.io/TodoApp/"}]...
|
[{"post_id": 40323, "ts": "202 [{"post_id": 40323, "ts": "2026-08-03T19:20:22Z", "hours": 2.1447, "text": "Devlog 03 This had everything to be wrong because i’ve lost internet for a long time. I basically spent the time refining the todo logic core. Now it is possible to create and delete tasks, also marking them as concluded."}, {"post_id": 39826, "ts": "2026-08-03T02:31:56Z", "hours": 0.7239, "text": "Devlog 02 I fixed some bugs, made the fetching reactive and binded it to the page and added the hero with some custom fonts!"}, {"post_id": 39803, "ts": "2026-08-03T01:16:03Z", "hours": 1.1744, "text": "Devlog 01 Added fetch image content. Ok so i tryed to add a function that is triggered when the page is loaded. It checks if is on local storage, if no or if it is but the date is different it fetches a new one to update and overwrite the old one. After that, the code is injected into a reactive property of vue so the image will render again in any change. The app will be a todo app with a custom background. I had a lot of headache as this is my first time working seriouslly with typescript. It obligated me to handle a case weather the image is not on local storage and it couldn’t be fetched… i just returned a empty object lol I’m not gonna change that but i will ask AI if this was a good practice. prob not, but lets seee"}]...
|
Title: TodoApp by @renanfartes | Stardance
Devlog Title: TodoApp by @renanfartes | Stardance
Devlogs:
Devlog 01 Added fetch image content. Ok so i tryed to add a function that is triggered when the page is loaded. It checks if is on local storage, if no or if it is but the date is different it fetches a new one to update and overwrite the old one. After that, the code is injected into a reactive property of vue so the image will render again in any change. The app will be a todo app with a custom background. I had a lot of headache as this is my first time working seriouslly with typescript. It obligated me to handle a case weather the image is not on local storage and it couldn’t be fetched… i just returned a empty object lol I’m not gonna change that but i will ask AI if this was a good practice. prob not, but lets seee
Devlog 02 I fixed some bugs, made the fetching reactive and binded it to the page and added the hero with some custom fonts!
Devlog 03 This had everything to be wrong because i’ve lost internet for a long time. I basically spent the time refining the todo logic core. Now it is possible to create and delete tasks, also marking them as concluded.
Ships:
I made a todo aplication to train my Vue 3 skills while trying to make a useful project. I did put manual effort styling this but still ugly D:...
|
1793706514.529549
|
1793792914.529549
|
|
65787
|
My awesome macropad! by @Atul | Stardance
|
Atul
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @Atul | Stardance
|
1793706515.6952443
|
1794311315.6952443
|
|
43259
|
FREAK OS by @jonathanelazar89 | Stardance
|
jonathanelazar89
|
1
|
10.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-03T01:46:55Z", "hours": 10.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "A simple x86 32 bit OS. This OS is dedicated for gaming.", "repo": "https://github.com/JonathanElazar/FREAK-OS", "demo": "https://github.com/JonathanElazar/FREAK-OS/releases/"}]...
|
[{"post_id": 39806, "ts": "202 [{"post_id": 39806, "ts": "2026-08-03T01:24:12Z", "hours": 9.5569, "text": "Completed entire operating system. Started in assembly to write the bootloader and enter 32 bit protected mode than in C programmed the Snake and Tetris games that can be run on the OS."}]...
|
Title: FREAK OS by @jonathanelazar89 | Stardance
Title: FREAK OS by @jonathanelazar89 | Stardance
Devlogs:
Completed entire operating system. Started in assembly to write the bootloader and enter 32 bit protected mode than in C programmed the Snake and Tetris games that can be run on the OS.
Ships:
A simple x86 32 bit OS. This OS is dedicated for gaming....
|
1793706516.588205
|
1793792916.588205
|
|
65788
|
my lab by @kushi | Stardance
|
kushi
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: my lab by @kushi | Stardance
|
1793706517.4777522
|
1794311317.4777522
|
|
65789
|
Singularity by @Singularity-larp200 | Stardance
|
Singularity-larp200
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Singularity by @Singularity-larp200 | Stard Title: Singularity by @Singularity-larp200 | Stardance...
|
1793706518.3787265
|
1794311318.3787265
|
|
65792
|
WarioWare Game by @Avyo | Stardance
|
Avyo
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: WarioWare Game by @Avyo | Stardance
|
1793706519.2446694
|
1794311319.2446694
|
|
43261
|
My Pulse Website by @AwesomeFreshDay | Stardance
|
AwesomeFreshDay
|
1
|
2.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-05T03:53:16Z", "hours": 2.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Very simple website created to introduce me to NASA daily astronomy image site with their public APOD API. It fetches data from the API to create the title, photo/video, and description that is updated automatically daily. Learned to setup project with vite and use gitignore on our env to hide the token from pushing to github. Learned to be able to fetch data from the API to be able to display on a site.", "repo": "https://github.com/AdamT2529/Give-Your-Website-a-Pulse", "demo": "https://awesomefreshday.github.io/Give-Your-Website-a-Pulse/"}]...
|
[{"post_id": 41123, "ts": "202 [{"post_id": 41123, "ts": "2026-08-05T03:41:14Z", "hours": 0.2633, "text": "Imported a library called Animate on Scroll Library the clock/date, title, and description now have animations when loading in"}, {"post_id": 41112, "ts": "2026-08-05T03:21:27Z", "hours": 1.6603, "text": "Worked on Give Your Website a Pulse mission had to download the api from nasa and fetch data for news each day in space. Had to fetch the data where you export the title, photo/video, and description. I added a date and time feature and am on the last step to create one real feature"}]...
|
Title: My Pulse Website by @AwesomeFreshDay | Star Title: My Pulse Website by @AwesomeFreshDay | Stardance
Devlogs:
Worked on Give Your Website a Pulse mission had to download the api from nasa and fetch data for news each day in space. Had to fetch the data where you export the title, photo/video, and description. I added a date and time feature and am on the last step to create one real feature
Imported a library called Animate on Scroll Library the clock/date, title, and description now have animations when loading in
Ships:
Very simple website created to introduce me to NASA daily astronomy image site with their public APOD API. It fetches data from the API to create the title, photo/video, and description that is updated automatically daily. Learned to setup project with vite and use gitignore on our env to hide the token from pushing to github. Learned to be able to fetch data from the API to be able to display on a site....
|
1793706520.1258888
|
1793792920.1258888
|
|
65795
|
sing by @Singularity-larp200 | Stardance
|
Singularity-larp200
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: sing by @Singularity-larp200 | Stardance
|
1793706521.2657778
|
1794311321.2657778
|
|
65796
|
My personal site by @eligo | Stardance
|
eligo
|
0
|
0.97
|
0
|
[]
|
[{"post_id": 75648, "ts": "202 [{"post_id": 75648, "ts": "2026-09-30T17:11:32Z", "hours": 0.9694, "text": "Spent quite some time to learn HTML and CSS. Later i will add design to the site."}]...
|
Title: My personal site by @eligo | Stardance
Dev Title: My personal site by @eligo | Stardance
Devlogs:
Spent quite some time to learn HTML and CSS. Later i will add design to the site....
|
1793706522.1463425
|
1794311322.1463425
|
|
43267
|
M.I.W bot by @Marinho | Stardance
|
Marinho
|
1
|
1.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-03T19:51:51Z", "hours": 1.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "A simple bot that can search on the wiki for quick info main focus is to help out robotic teams to get the needed documentation about their hardware quickly, I using Render to make the bot 24/7 /miw_wiki to search up the wiki(after the command write what you want to search) /miw_status return the current system and python version of the bot /miw_random returns a random quote", "repo": "https://github.com/danielmcneto/MIWbot", "demo": "https://hackclub.enterprise.slack.com/archives/C0BNRLDCDA7"}]...
|
[{"post_id": 40042, "ts": "202 [{"post_id": 40042, "ts": "2026-08-03T12:14:59Z", "hours": 0.4978, "text": "Give the bot a reason to live It name is M.I.W(Microcontroller Information Wiki) its can search up the wiki by /miw_wiki and give information about anything, but the focus is on the microcontrollers like ESP32 and Arduino Now it also works 24/7 by using rend as a web server you can verify the status of the bot by /miw_status and can also get a random quote by /miw_random"}, {"post_id": 39989, "ts": "2026-08-03T10:33:57Z", "hours": 0.3719, "text": "Firsts commands are up /yupi /decide /joke I used the socket mode to bypass the need of a webhook making the coding easy and fast. Right now the bot isn’t 24/7 but working on that"}]...
|
Title: M.I.W bot by @Marinho | Stardance
Devlogs: Title: M.I.W bot by @Marinho | Stardance
Devlogs:
Firsts commands are up /yupi /decide /joke I used the socket mode to bypass the need of a webhook making the coding easy and fast. Right now the bot isn’t 24/7 but working on that
Give the bot a reason to live It name is M.I.W(Microcontroller Information Wiki) its can search up the wiki by /miw_wiki and give information about anything, but the focus is on the microcontrollers like ESP32 and Arduino Now it also works 24/7 by using rend as a web server you can verify the status of the bot by /miw_status and can also get a random quote by /miw_random
Ships:
A simple bot that can search on the wiki for quick info main focus is to help out robotic teams to get the needed documentation about their hardware quickly, I using Render to make the bot 24/7 /miw_wiki to search up the wiki(after the command write what you want to search) /miw_status return the current system and python version of the bot /miw_random returns a random quote...
|
1793706523.0461435
|
1793792923.0461435
|
|
58703
|
cyberdeck with LoRa reciever/transmiter by @matejc cyberdeck with LoRa reciever/transmiter by @matejchnurik | Stardance...
|
matejchnurik
|
1
|
13.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-05T19:46:04Z", "hours": 13.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Okay so I made this cyberdeck, body is made out of paper and cardboard. You can try it yourself I also made stl files so you can 3D print the body (I dont know if it would fit cuz I dont have 3D printer) I also added to my repo downloaded site with all the logged time and journals from macondo so you can also read how I built the whole thing. I would appreciate If reviewers will ount all my logged hours from macondo. Thx", "repo": "https://github.com/gogoityme/LoRa-cyberdeck", "demo": ""}]...
|
[{"post_id": 62434, "ts": "202 [{"post_id": 62434, "ts": "2026-09-05T19:37:51Z", "hours": 12.5775, "text": "So I was working on my own cyberdeck but because it was not reviewed on macondo event I am reposting it here."}]...
|
Title: cyberdeck with LoRa reciever/transmiter by Title: cyberdeck with LoRa reciever/transmiter by @matejchnurik | Stardance
Devlogs:
So I was working on my own cyberdeck but because it was not reviewed on macondo event I am reposting it here.
Ships:
Okay so I made this cyberdeck, body is made out of paper and cardboard. You can try it yourself I also made stl files so you can 3D print the body (I dont know if it would fit cuz I dont have 3D printer) I also added to my repo downloaded site with all the logged time and journals from macondo so you can also read how I built the whole thing. I would appreciate If reviewers will ount all my logged hours from macondo. Thx...
|
1793706527.214884
|
1793792927.214884
|
|
44513
|
"Space Dodge" game by @makaryrobernazim | "Space Dodge" game by @makaryrobernazim | Stardance...
|
makaryrobernazim
|
1
|
3.0
|
3
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-06T12:10:30Z", "hours": 3.0, "multiplier": 1.11, "payout": 3, "blessing": "neutral", "text": "I made a game where you are in space and try to dodge particles. It was fun to make this project and I got help from @TechWithTim on YouTube. Just run the code and the game will open. You can move using left and right arrow keys or “A” and “D”.", "repo": "https://github.com/MakaryRober/Space-Dodge", "demo": "https://github.com/MakaryRober/Space-Dodge/releases/download/v.1.0.1/Space.Dodge.exe"}]...
|
[{"post_id": 41880, "ts": "202 [{"post_id": 41880, "ts": "2026-08-06T11:27:32Z", "hours": 3.025, "text": "I made a cool dodging game!!"}]...
|
Title: "Space Dodge" game by @makaryrobern Title: "Space Dodge" game by @makaryrobernazim | Stardance
Devlogs:
I made a cool dodging game!!
Ships:
I made a game where you are in space and try to dodge particles. It was fun to make this project and I got help from @TechWithTim on YouTube. Just run the code and the game will open. You can move using left and right arrow keys or “A” and “D”....
|
1793706528.1010425
|
1793792928.1010425
|
|
65797
|
Artificial Human Intelligence Archive by @Alucen-A Artificial Human Intelligence Archive by @Alucen-AEGIS | Stardance...
|
Alucen-AEGIS
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Artificial Human Intelligence Archive by @A Title: Artificial Human Intelligence Archive by @Alucen-AEGIS | Stardance...
|
1793706529.2461524
|
1794311329.2461524
|
|
44516
|
HugoTab by @Makkonen | Stardance
|
Makkonen
|
1
|
4.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-08T19:57:29Z", "hours": 4.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made an website that uses an free Nasa API key to view nasas space picture of the day and the description, and i also added features like: an google search bar, custom purple style css, an quicklinks feature where you can delete quicklinks and add your own(they save into localstorage) the site shows the current date and time.This project was very challenging for me because i kept running into errors and bugs and then the API key wouldnt work but i managed to fix everything so now there is no errors!", "repo": "https://github.com/MakkonenHugo/HugoTab", "demo": "https://makkonenhugo.github.io/HugoTab/"}]...
|
[{"post_id": 43484, "ts": "202 [{"post_id": 43484, "ts": "2026-08-08T19:38:34Z", "hours": 2.3233, "text": "YESSSSS!!! i FINALLY got this to work! OOHH THIS WAS SO HARD TO DO! I ran into more bugs and errors than i can count but it was actually really easy now that im thinking about it, the Hugo space tab now has 4 default quick links, an google searchbar, ofcourse the nasa space picture of the day and the description, an purple theme, hover effects!, you can custom add quicklinks and they save to localstorage and todays date!"}, {"post_id": 41980, "ts": "2026-08-06T14:52:25Z", "hours": 1.1778, "text": "So i got the API to work (took me long enough) and got github to work too! I ran into some errors where everything i displayed was “unidentifyed” But it was just me who put the api wrong. So now i added an little bit of styling and i also added an search bar and an really small google search. I will make this project better in a bit.(the activate windows watermark shows a bit ik, sorry)"}]...
|
Title: HugoTab by @Makkonen | Stardance
Devlogs:
Title: HugoTab by @Makkonen | Stardance
Devlogs:
So i got the API to work (took me long enough) and got github to work too! I ran into some errors where everything i displayed was “unidentifyed” But it was just me who put the api wrong. So now i added an little bit of styling and i also added an search bar and an really small google search. I will make this project better in a bit.(the activate windows watermark shows a bit ik, sorry)
YESSSSS!!! i FINALLY got this to work! OOHH THIS WAS SO HARD TO DO! I ran into more bugs and errors than i can count but it was actually really easy now that im thinking about it, the Hugo space tab now has 4 default quick links, an google searchbar, ofcourse the nasa space picture of the day and the description, an purple theme, hover effects!, you can custom add quicklinks and they save to localstorage and todays date!
Ships:
I made an website that uses an free Nasa API key to view nasas space picture of the day and the description, and i also added features like: an google search bar, custom purple style css, an quicklinks feature where you can delete quicklinks and add your own(they save into localstorage) the site shows the current date and time.This project was very challenging for me because i kept running into errors and bugs and then the API key wouldnt work but i managed to fix everything so now there is no errors!...
|
1793706530.162553
|
1793792930.162553
|
|
44538
|
FAHOS by @myreester | Stardance
|
myreester
|
1
|
0.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-08T09:31:20Z", "hours": 0.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "This is my Webos Fah os . this can run in web", "repo": "https://github.com/PEAKAKAME/Fah-OS", "demo": "https://peakakame.github.io/Fah-OS/"}]...
|
[{"post_id": 41899, "ts": "202 [{"post_id": 41899, "ts": "2026-08-06T12:14:16Z", "hours": 0.2503, "text": "my Fah OS"}]...
|
Title: FAHOS by @myreester | Stardance
Devlogs:
m Title: FAHOS by @myreester | Stardance
Devlogs:
my Fah OS
Ships:
This is my Webos Fah os . this can run in web...
|
1793706531.4266558
|
1793792931.4266558
|
|
65798
|
My awesome macropad! by @mantej | Stardance
|
mantej
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @mantej | Stardance
|
1793706532.6005297
|
1794311332.6005297
|
|
65799
|
My awesome macropad! by @aimanevan | Stardance
|
aimanevan
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @aimanevan | Starda Title: My awesome macropad! by @aimanevan | Stardance...
|
1793706533.5103977
|
1794311333.5103977
|
|
4745
|
Astropass-Smart Rfid Crew access system by @Ashish Astropass-Smart Rfid Crew access system by @AshishPatel | Stardance...
|
AshishPatel
|
1
|
11.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-16T09:40:05Z", "hours": 11.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I built AstroPass, a physical RFID-based security clearance terminal using an Arduino micro-controller and an I2C LCD display. What was challenging: The biggest challenge was structuring the core logic loops and troubleshooting the liquid crystal libraries to handle hardware states smoothly. Managing the active input buffer to read passcodes and RFID badge IDs in real-time through the terminal required a lot of precise code refining. What I’m proud of: I am incredibly proud of building a custom switch-case state machine to handle all user interface transitions flawlessly. I also successfully implemented a 3-strike security lockout system that triggers an automatic 8-second cooldown with a warning triangle icon on screen if an invalid card is scanned three times, alongside an active success chime on a physical hardware buzzer. What people should know to test it: The entire project code is completely open-sourced on my GitHub repository. The system prints the full live access and scan history cleanly straight to the Serial Monitor for instant logging!", "repo": "https://github.com/ashish030810/AstroPass", "demo": ""}]...
|
[{"post_id": 4374, "ts": "2026 [{"post_id": 4374, "ts": "2026-06-07T18:04:30Z", "hours": 1.5883, "text": "I finally finished Astropass and hit my 11 hours! I cleaned up the whole codebase and got everything running smoothly. I ended up adding custom graphics to the LCD screen like a padlock, checkmark, and warning triangle, and I used a clean switch-case state machine to handle all the terminal transitions without any bugs. I also built in a 3-strike security lockout that triggers an automatic 8-second cooldown if an invalid badge is scanned three times, and I set up a circular log system that prints the full access history straight to the Serial Monitor. Everything is fully pushed to GitHub and ready, so I’m officially moving on to my new Astro-Flora greenhouse project now!"}, {"post_id": 4219, "ts": "2026-06-07T13:32:42Z", "hours": 8.8172, "text": "Devlog #2 : Bringing the Astropass Core to Life! 📡🛸 What I did today: Successfully laid down the foundation for the Astropass security terminal and got the I2C LCD display fully integrated with the system logic! New Features: * Fixed up the primary input buffer to read passcodes and badge IDs in real-time through the terminal lines. Programmed the LCD to show live system updates (SCAN PASSPORT…) instead of just hiding the data in the background. Added a dynamic fast-pass check that immediately flips the screen to > ACCESS GRANTED and triggers a high-frequency success chime on the buzzer when a valid badge is detected. Progress: Spent a solid block of hours structuring the basic logic loops and troubleshooting the liquid crystal libraries. Ready to start scaling this up into a multi-user security system! 💎"}, {"post_id": 1959, "ts": "2026-06-04T06:28:06Z", "hours": 0.8683, "text": "Project Name:AstroPass Today’s Progress: Successfully created and initialized a brand new GitHub repository for this second project. Uploaded all the initial core project files to the repository. Set up the demo link to showcase the current state of the project. What I’m working on next: Continuing to build out the next set of features and refining the code."}]...
|
Title: Astropass-Smart Rfid Crew access system by Title: Astropass-Smart Rfid Crew access system by @AshishPatel | Stardance
Devlogs:
Project Name:AstroPass Today’s Progress: Successfully created and initialized a brand new GitHub repository for this second project. Uploaded all the initial core project files to the repository. Set up the demo link to showcase the current state of the project. What I’m working on next: Continuing to build out the next set of features and refining the code.
Devlog #2 : Bringing the Astropass Core to Life! 📡🛸 What I did today: Successfully laid down the foundation for the Astropass security terminal and got the I2C LCD display fully integrated with the system logic! New Features: * Fixed up the primary input buffer to read passcodes and badge IDs in real-time through the terminal lines. Programmed the LCD to show live system updates (SCAN PASSPORT…) instead of just hiding the data in the background. Added a dynamic fast-pass check that immediately flips the screen to > ACCESS GRANTED and triggers a high-frequency success chime on the buzzer when a valid badge is detected. Progress: Spent a solid block of hours structuring the basic logic loops and troubleshooting the liquid crystal libraries. Ready to start scaling this up into a multi-user security system! 💎
I finally finished Astropass and hit my 11 hours! I cleaned up the whole codebase and got everything running smoothly. I ended up adding custom graphics to the LCD screen like a padlock, checkmark, and warning triangle, and I used a clean switch-case state machine to handle all the terminal transitions without any bugs. I also built in a 3-strike security lockout that triggers an automatic 8-second cooldown if an invalid badge is scanned three times, and I set up a circular log system that prints the full access history straight to the Serial Monitor. Everything is fully pushed to GitHub and ready, so I’m officially moving on to my new Astro-Flora greenhouse project now!
Ships:
I built AstroPass, a physical RFID-based security clearance terminal using an Arduino micro-controller and an I2C LCD display. What was challenging: The biggest challenge was structuring the core logic loops and troubleshooting the liquid crystal libraries to handle hardware states smoothly. Managing the active input buffer to read passcodes and RFID badge IDs in real-time through the terminal required a lot of precise code refining. What I’m proud of: I am incredibly proud of building a custom switch-case state machine to handle all user interface transitions flawlessly. I also successfully implemented a 3-strike security lockout system that triggers an automatic 8-second cooldown with a warning triangle icon on screen if an invalid card is scanned three times, alongside an active success chime on a physical hardware buzzer. What people should know to test it: The entire project code is completely open-sourced on my GitHub repository. The system prints the full live access and scan history cleanly straight to the Serial Monitor for instant logging!...
|
1793706534.470162
|
1794570534.470162
|
|
42327
|
~/KLAIR by @domos000 | Stardance
|
domos000
|
1
|
17.99
|
202
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-11T11:37:08Z", "hours": 17.0, "multiplier": 12.14, "payout": 202, "blessing": "neutral", "text": "~/KLAIR is a free-to-use Discord bot packed with AI features, mini-games, and a few things you probably didn’t know you needed! It comes with 15 features: 5 minigames 5 AI features 5 other miscellaneous commands The best feature, by far, has to be the Live AI feature that I’ve implemented in the bot. Instead of texting the bot, now, you can actually talk to it INSIDE Discord! This is thanks to Gemini Live, the AI model behind generating the responses and speaking them. There are a bunch of other features too like /cat - which fetches a cat image, /dog - which well, fetches a dog image, and more! You can see the showcase YouTube video by clicking on the “Try project” button. If you don’t want to host the bot by yourself, you can also just add it to your server as it’s currently being hosted online. Use the link below to add the bot to your server! https://discord.com/oauth2/authorize?client_id=1532745014600536146&permissions=35186573274480&integration_type=0&scope=bot", "repo": "https://github.com/adeebur-x64/KLAIR", "demo": "https://discord.gg/sscjgj2d7C"}]...
|
[{"post_id": 49775, "ts": "202 [{"post_id": 49775, "ts": "2026-08-18T18:17:50Z", "hours": 0.9942, "text": "(smol and late) Devlog I’m not sure exactly when and what changes I did but, this is the final GitHub Repo README.md. I’ve added some alerts and more information in the README.md as you can see. The reason this Devlog is so long is that I spent some time fixing bugs and stuff (like typos) in the code and those changes were so small that I just didn’t care enough to post a Devlog on them. Will add some more features to the bot very soon :D"}, {"post_id": 43253, "ts": "2026-08-08T12:31:44Z", "hours": 0.9247, "text": "✅Change: Updated the README.md file! Spent an hour writing a README.md file and committed the README to GitHub. Only need to create a showcase video for the bot now!"}, {"post_id": 43229, "ts": "2026-08-08T11:33:04Z", "hours": 0.68, "text": "✅Change: Added comments to the code! Spent a few minutes just adding comments to the code so it becomes more understandable. Some of the examples of comments I’ve added are in the screenshot I’ve attached. The bot is practically completed at this point. I’ll spend a few more minutes writing the README.md file and creating a showcase video for the bot."}, {"post_id": 43173, "ts": "2026-08-08T09:13:05Z", "hours": 0.7303, "text": "✅ Fixed: Some bugs in the /liveai feature! So, if you were trying to ask the bot a question in the VC and there was some background noise, the bot would glitch out and sometimes fill its buffer of holding the audio chunks of the users. Now, I have fixed this issue and added a “End Session” button so that the user can get the summary of their conversation without waiting for 3 mins inactivity in the VC. **Most of the voice handling and AI stuff was implemented using Gemini 3.1 Pro as I don’t have an idea on how to manage audio chunks and stuff. **"}, {"post_id": 42795, "ts": "2026-08-07T18:09:51Z", "hours": 3.7328, "text": "✨Implemented an AI Feature: /liveai Oof! This took wayyyy too long to implement. Now, instead of typing your queries / prompts, you can actually talk to the bot! It creates a private voice channel (only you and the bot) and you can ask it questions. It’s instantaneous too! I honestly love this feature! I can’t show the full working of this command in a screenshot so, the full demo of this command, (including all the other commands) will be in the showcasing video that I’ll create. Stay tuned for that! NOTE: I’m using a modified version of discord ONLY to show some useful information (like which device I’m using [see members list], what the previous messages were of the bot [see chat, message logger is enabled]. I DO NOT CONDONE THE USAGE OF MODIFIED VERSIONS OF DISCORD AS IT GOES AGAINST THEIR TOS."}, {"post_id": 42057, "ts": "2026-08-06T16:42:48Z", "hours": 0.2928, "text": "Implemented an AI Feature: /eli5 Sometimes, even the simplest of explanations of concepts might start feeling hard to understand. This is where ELI5, or Explain Like I’m 5 comes to play! Simply, tell the bot what concept you want to get explained and it will do exactly that for you in a simple, fun way! NOTE: I’m using a modified version of discord ONLY to show some useful information (like which device I’m using [see members list], what the previous messages were of the bot [see chat, message logger is enabled]. I DO NOT CONDONE THE USAGE OF MODIFIED VERSIONS OF DISCORD AS IT GOES AGAINST THEIR TOS."}, {"post_id": 42035, "ts": "2026-08-06T16:18:50Z", "hours": 0.3111, "text": "✨Implemented an AI Feature: /factcheck This is also pretty self-explanatory. You pass it on a claim that you want to get fact checked and get a response. However, since the model doesn’t have access to the internet (as Google Search tool with Gemini isn’t included in the free tier of Google Cloud Projects ), the user is always informed at the end of a message that the bot can make mistakes. NOTE: I’m using a modified version of discord ONLY to show some useful information (like which device I’m using [see members list], what the previous messages were of the bot [see chat, message logger is enabled]. I DO NOT CONDONE THE USAGE OF MODIFIED VERSIONS OF DISCORD AS IT GOES AGAINST THEIR TOS."}, {"post_id": 42024, "ts": "2026-08-06T15:56:26Z", "hours": 0.5128, "text": "✨Implemented an AI Feature: /grammarcheck It’s pretty self-explanatory. You pass it on a sentence (or multiple sentences) and tell it your desired sentence type (default being normal) and it converts your sentence into the desired sentence type while ensuring no there are no grammar, spelling or any other mistakes in the output!. NOTE: I’m using a modified version of discord ONLY to show some useful information (like which device I’m using [see members list], what the previous messages were of the bot [see chat, message logger is enabled]. I DO NOT CONDONE THE USAGE OF MODIFIED VERSIONS OF DISCORD AS IT GOES AGAINST THEIR TOS."}, {"post_id": 41990, "ts": "2026-08-06T15:09:47Z", "hours": 0.9803, "text": "✨QOL Changes! Now, if an error occurs, the bot will tell the user something has happened rather than just ghosting the user. I forgot to implement this error handling in the last update so, here it is! Now, you aren’t required to type /ask all the type to ask the bot a question! Simply do KLAIR, <question> and the bot will respond with a generated response! NOTE: I’m using a modified version of discord ONLY to show some useful information (like which device I’m using [see members list], what the previous messages were of the bot [see chat, message logger is enabled]. I DO NOT CONDONE THE USAGE OF MODIFIED VERSIONS OF DISCORD AS IT GOES AGAINST THEIR TOS."}, {"post_id": 41342, "ts": "2026-08-05T14:33:01Z", "hours": 0.6753, "text": "✨Implemented an AI Feature: /ask Ask the AI (Gemini’s Latest Flash Lite model - Gemini 3.5 Flash Lite ) any question and it will answer it! This is the first AI feature and there are many more AI features to come! Why Gemini Flash Lite Model? Earlier, I was testing out the normal Gemini Flash Model (Gemini 3.6 Flash) but I quickly reached a problem- Rate Limits! Previously, Google had a really high rate limit for their AI Models in the free tier however, they have since significantly reduced that. And this sucks! 1500 RPD down to 20 RPD for the Flash model is INSANITY! In order to not get rate limited after only 20 requests, I took the decision to use a much dumber AI model. It’s on Discord though, I’m pretty sure if users need a more in-depth or accurate answer, they’ll probably go to the actual AI website rather than ask the bot. NOTE: I’m using a modified version of discord ONLY to show some useful information (like which device I’m using [see members list], what the previous messages were of the bot [see chat, message logger is enabled]. I DO NOT CONDONE THE USAGE OF MODIFIED VERSIONS OF DISCORD AS IT GOES AGAINST THEIR TOS."}, {"post_id": 41306, "ts": "2026-08-05T13:33:57Z", "hours": 0.3344, "text": "Implemented a 8Ball (Prediction) Command! You just pass it on a question and it generates a random prediction of whether something will happen or not! PS. even though the description says the question must end with a “?”, it isn’t required for it to end with it! NOTE: I’m using a modified version of discord ONLY to show some useful information (like which device I’m using [see members list], what the previous messages were of the bot [see chat, message logger is enabled]. I DO NOT CONDONE THE USAGE OF MODIFIED VERSIONS OF DISCORD AS IT GOES AGAINST THEIR TOS."}, {"post_id": 41287, "ts": "2026-08-05T12:40:26Z", "hours": 0.7522, "text": "Implemented multiple commands! Dog Image Displaying Command Basically the Cat Image Displaying Command but instead of cat it displays an image of a dog! Useless Fact Command Fetches an API and displays a useless fact! Some of these are actually kinda interesting though! Cryptocurrency Price Fetch Command Fetches an API and displays the price of the cryptocurrency the user has asked for. I don’t know why someone would need to know the price of a crypto on Discord, but hey! At least, the option is there! NOTE: I’m using a modified version of discord ONLY to show some useful information (like which device I’m using [see members list], what the previous messages were of the bot [see chat, message logger is enabled]. I DO NOT CONDONE THE USAGE OF MODIFIED VERSIONS OF DISCORD AS IT GOES AGAINST THEIR TOS."}, {"post_id": 41262, "ts": "2026-08-05T11:30:20Z", "hours": 0.6439, "text": "Implemented a Cat Image Displaying Command! It’s pretty self-explanatory. You type /cat and it fetches a cat image from a free API and sends it on discord! NOTE: I’m using a modified version of discord ONLY to show some useful information (like which device I’m using [see members list], what the previous messages were of the bot [see chat, message logger is enabled]. I DO NOT CONDONE THE USAGE OF MODIFIED VERSIONS OF DISCORD AS IT GOES AGAINST THEIR TOS."}, {"post_id": 40811, "ts": "2026-08-04T15:58:53Z", "hours": 1.1972, "text": "Implemented a Nim Mini Game! Nim is a strategic mini game. There are 15 rocks in total. In each turn, the player can take away 1, 2 or 3 rocks. The bot will also randomly take away some number of rocks. In order to win you need to make the opponent take the last rock. If you take the last rock, you lose! This mini game is actually really fun to play! Had to use Gemini 3.1 Pro to fix some bugs because somehow I can never make a fully working mini game by myself. (I guess it’s just skill issue lol.) NOTE: I’m using a modified version of discord ONLY to show some useful information (like which device I’m using [see members list], what the previous messages were of the bot [see chat, message logger is enabled]. I DO NOT CONDONE THE USAGE OF MODIFIED VERSIONS OF DISCORD AS IT GOES AGAINST THEIR TOS."}, {"post_id": 40717, "ts": "2026-08-04T13:04:31Z", "hours": 1.8767, "text": "Implemented a Unscramble The Word Mini Game! Okay this mini game took WAYYY TOO LONG! It took like almost an hour just to fetch the word and display it and another hour to actually make the mini game working. It fetches the word automatically from a free API, scrambles it and then displays the scrambled word to the user. Clicking on Unscramble button opens up a Modal for the user to input their guess. The bot checks the guess and tells if it was correct or not and the user can guess again if it was incorrect. If you guess the word correctly, it shows the number of attempts it took for you to guess the word correctly. Clicking on give up shows the unscrambled word and how many attempts they tried. idk how this took 2 hours to make but at least it works! NOTE: I’m using a modified version of discord ONLY to show some useful information (like which device I’m using [see members list], what the previous messages were of the bot [see chat, message logger is enabled]. I DO NOT CONDONE THE USAGE OF MODIFIED VERSIONS OF DISCORD AS IT GOES AGAINST THEIR TOS."}, {"post_id": 40653, "ts": "2026-08-04T10:31:50Z", "hours": 0.7458, "text": "Implemented a Coin Flip Mini Game! aghhh being sick isn’t fun. i wasn’t able to code for 3 days cuz i was sick :( anyways The mini game is self-explanatory. You just guess whether the coin flip came out to be heads or tails! This shouldn’t have taken 40 mins but somehow it did. (maybe cuz i’m still sick and recovering but who knows?) NOTE: I’m using a modified version of discord ONLY to show some useful information (like which device I’m using [see members list], what the previous messages were of the bot [see chat, message logger is enabled]. I DO NOT CONDONE THE USAGE OF MODIFIED VERSIONS OF DISCORD AS IT GOES AGAINST THEIR TOS."}, {"post_id": 38318, "ts": "2026-07-31T17:13:35Z", "hours": 1.0161, "text": "Implemented Guess The Number Mini game! So, just spent like an hour working on this. The main challenge I faced was to retrieve the guess submission from the user. I wasn’t able to do that so I required the help of my friend Gemini 3.1 Pro (High) in Antigravity IDE to do that for me. Clicking guess shows a modal where the user can input their guess. Clicking give up shows what the number the bot had selected and the number of tries the user did. When the user guesses the number correctly, it shows the number of tries the user required. NOTE: I’m using a modified version of discord ONLY to show some useful information (like which device I’m using [see members list], what the previous messages were of the bot [see chat, message logger is enabled]. I DO NOT CONDONE THE USAGE OF MODIFIED VERSIONS OF DISCORD AS IT GOES AGAINST THEIR TOS."}, {"post_id": 38259, "ts": "2026-07-31T15:50:22Z", "hours": 0.6547, "text": "Implemented Rock Paper Scissors Mini game! So, Just spend a couple of minutes implementing a working rock paper scissors mini game. [] It uses the button feature to ask for the user’s choice. [] It uses Math.Random() function to select its own choice. [] It uses multiple If statements for every case. Will spend some more time refining its style later but the actual mini game is complete for now. NOTE: I’m using a modified version of discord ONLY to show some useful information (like which device I’m using [see members list], what the previous messages were of the bot [see chat, message logger is enabled]. I DO NOT CONDONE THE USAGE OF MODIFIED VERSIONS OF DISCORD AS IT GOES AGAINST THEIR TOS."}, {"post_id": 38210, "ts": "2026-07-31T14:40:00Z", "hours": 0.5672, "text": "Initial Bot Setup is complete! Bot is being developed using Discord.js . What has been added till now: A ready output whenever the Discord Bot has successfully logged in. A way to register slash commands for the Bot. A way to handle those slash command requests. A ping command that replies with “Pong!” (just for testing). NOTE: I’m using a modified version of discord ONLY to show some useful information (like which device I’m using [see members list], what the previous messages were of the bot [see chat, message logger is enabled]. I DO NOT CONDONE THE USAGE OF MODIFIED VERSIONS OF DISCORD AS IT GOES AGAINST THEIR TOS."}]...
|
Title: ~/KLAIR by @domos000 | Stardance
Devlogs:
Title: ~/KLAIR by @domos000 | Stardance
Devlogs:
Initial Bot Setup is complete! Bot is being developed using Discord.js . What has been added till now: A ready output whenever the Discord Bot has successfully logged in. A way to register slash commands for the Bot. A way to handle those slash command requests. A ping command that replies with “Pong!” (just for testing). NOTE: I’m using a modified version of discord ONLY to show some useful information (like which device I’m using [see members list], what the previous messages were of the bot [see chat, message logger is enabled]. I DO NOT CONDONE THE USAGE OF MODIFIED VERSIONS OF DISCORD AS IT GOES AGAINST THEIR TOS.
Implemented Rock Paper Scissors Mini game! So, Just spend a couple of minutes implementing a working rock paper scissors mini game. [] It uses the button feature to ask for the user’s choice. [] It uses Math.Random() function to select its own choice. [] It uses multiple If statements for every case. Will spend some more time refining its style later but the actual mini game is complete for now. NOTE: I’m using a modified version of discord ONLY to show some useful information (like which device I’m using [see members list], what the previous messages were of the bot [see chat, message logger is enabled]. I DO NOT CONDONE THE USAGE OF MODIFIED VERSIONS OF DISCORD AS IT GOES AGAINST THEIR TOS.
Implemented Guess The Number Mini game! So, just spent like an hour working on this. The main challenge I faced was to retrieve the guess submission from the user. I wasn’t able to do that so I required the help of my friend Gemini 3.1 Pro (High) in Antigravity IDE to do that for me. Clicking guess shows a modal where the user can input their guess. Clicking give up shows what the number the bot had selected and the number of tries the user did. When the user guesses the number correctly, it shows the number of tries the user required. NOTE: I’m using a modified version of discord ONLY to show some useful information (like which device I’m using [see members list], what the previous messages were of the bot [see chat, message logger is enabled]. I DO NOT CONDONE THE USAGE OF MODIFIED VERSIONS OF DISCORD AS IT GOES AGAINST THEIR TOS.
Implemented a Coin Flip Mini Game! aghhh being sick isn’t fun. i wasn’t able to code for 3 days cuz i was sick :( anyways The mini game is self-explanatory. You just guess whether the coin flip came out to be heads or tails! This shouldn’t have taken 40 mins but somehow it did. (maybe cuz i’m still sick and recovering but who knows?) NOTE: I’m using a modified version of discord ONLY to show some useful information (like which device I’m using [see members list], what the previous messages were of the bot [see chat, message logger is enabled]. I DO NOT CONDONE THE USAGE OF MODIFIED VERSIONS OF DISCORD AS IT GOES AGAINST THEIR TOS.
Implemented a Unscramble The Word Mini Game! Okay this mini game took WAYYY TOO LONG! It took like almost an hour just to fetch the word and display it and another hour to actually make the mini game working. It fetches the word automatically from a free API, scrambles it and then displays the scrambled word to the user. Clicking on Unscramble button opens up a Modal for the user to input their guess. The bot checks the guess and tells if it was correct or not and the user can guess again if it was incorrect. If you guess the word correctly, it shows the number of attempts it took for you to guess the word correctly. Clicking on give up shows the unscrambled word and how many attempts they tried. idk how this took 2 hours to make but at least it works! NOTE: I’m using a modified version of discord ONLY to show some useful information (like which device I’m using [see members list], what the previous messages were of the bot [see chat, message logger is enabled]. I DO NOT CONDONE THE USAGE OF MODIFIED VERSIONS OF DISCORD AS IT GOES AGAINST THEIR TOS.
Implemented a Nim Mini Game! Nim is a strategic mini game. There are 15 rocks in total. In each turn, the player can take away 1, 2 or 3 rocks. The bot will also randomly take away some number of rocks. In order to win you need to make the opponent take the last rock. If you take the last rock, you lose! This mini game is actually really fun to play! Had to use Gemini 3.1 Pro to fix some bugs because somehow I can never make a fully working mini game by myself. (I guess it’s just skill issue lol.) NOTE: I’m using a modified version of discord ONLY to show some useful information (like which device I’m using [see members list], what the previous messages were of the bot [see chat, message logger is enabled]. I DO NOT CONDONE THE USAGE OF MODIFIED VERSIONS OF DISCORD AS IT GOES AGAINST THEIR TOS.
Implemented a Cat Image Displaying Command! It’s pretty self-explanatory. You type /cat and it fetches a cat image from a free API and sends it on discord! NOTE: I’m using a modified version of discord ONLY to show some useful information (like which device I’m using [see members list], what the previous messages were of the bot [see chat, message logger is enabled]. I DO NOT CONDONE THE USAGE OF MODIFIED VERSIONS OF DISCORD AS IT GOES AGAINST THEIR TOS.
Implemented multiple commands! Dog Image Displaying Command Basically the Cat Image Displaying Command but instead of cat it displays an image of a dog! Useless Fact Command Fetches an API and displays a useless fact! Some of these are actually kinda interesting though! Cryptocurrency Price Fetch Command Fetches an API and displays the price of the cryptocurrency the user has asked for. I don’t know why someone would need to know the price of a crypto on Discord, but hey! At least, the option is there! NOTE: I’m using a modified version of discord ONLY to show some useful information (like which device I’m using [see members list], what the previous messages were of the bot [see chat, message logger is enabled]. I DO NOT CONDONE THE USAGE OF MODIFIED VERSIONS OF DISCORD AS IT GOES AGAINST THEIR TOS.
Implemented a 8Ball (Prediction) Command! You just pass it on a question and it generates a random prediction of whether something will happen or not! PS. even though the description says the question must end with a “?”, it isn’t required for it to end with it! NOTE: I’m using a modified version of discord ONLY to show some useful information (like which device I’m using [see members list], what the previous messages were of the bot [see chat, message logger is enabled]. I DO NOT CONDONE THE USAGE OF MODIFIED VERSIONS OF DISCORD AS IT GOES AGAINST THEIR TOS.
✨Implemented an AI Feature: /ask Ask the AI (Gemini’s Latest Flash Lite model - Gemini 3.5 Flash Lite ) any question and it will answer it! This is the first AI feature and there are many more AI features to come! Why Gemini Flash Lite Model? Earlier, I was testing out the normal Gemini Flash Model (Gemini 3.6 Flash) but I quickly reached a problem- Rate Limits! Previously, Google had a really high rate limit for their AI Models in the free tier however, they have since significantly reduced that. And this sucks! 1500 RPD down to 20 RPD for the Flash model is INSANITY! In order to not get rate limited after only 20 requests, I took the decision to use a much dumber AI model. It’s on Discord though, I’m pretty sure if users need a more in-depth or accurate answer, they’ll probably go to the actual AI website rather than ask the bot. NOTE: I’m using a modified version of discord ONLY to show some useful information (like which device I’m using [see members list], what the previous messages were of the bot [see chat, message logger is enabled]. I DO NOT CONDONE THE USAGE OF MODIFIED VERSIONS OF DISCORD AS IT GOES AGAINST THEIR TOS.
✨QOL Changes! Now, if an error occurs, the bot will tell the user something has happened rather than just ghosting the user. I forgot to implement this error handling in the last update so, here it is! Now, you aren’t required to type /ask all the type to ask the bot a question! Simply do KLAIR, <question> and the bot will respond with a generated response! NOTE: I’m using a modified version of discord ONLY to show some useful information (like which device I’m using [see members list], what the previous messages were of the bot [see chat, message logger is enabled]. I DO NOT CONDONE THE USAGE OF MODIFIED VERSIONS OF DISCORD AS IT GOES AGAINST THEIR TOS.
✨Implemented an AI Feature: /grammarcheck It’s pretty self-explanatory. You pass it on a sentence (or multiple sentences) and tell it your desired sentence type (default being normal) and it converts your sentence into the desired sentence type while ensuring no there are no grammar, spelling or any other mistakes in the output!. NOTE: I’m using a modified version of discord ONLY to show some useful information (like which device I’m using [see members list], what the previous messages were of the bot [see chat, message logger is enabled]. I DO NOT CONDONE THE USAGE OF MODIFIED VERSIONS OF DISCORD AS IT GOES AGAINST THEIR TOS.
✨Implemented an AI Feature: /factcheck This is also pretty self-explanatory. You pass it on a claim that you want to get fact checked and get a response. However, since the model doesn’t have access to the internet (as Google Search tool with Gemini isn’t included in the free tier of Google Cloud Projects ), the user is always informed at the end of a message that the bot can make mistakes. NOTE: I’m using a modified version of discord ONLY to show some useful information (like which device I’m using [see members list], what the previous messages were of the bot [see chat, message logger is enabled]. I DO NOT CONDONE THE USAGE OF MODIFIED VERSIONS OF DISCORD AS IT GOES AGAINST THEIR TOS.
Implemented an AI Feature: /eli5 Sometimes, even the simplest of explanations of concepts might start feeling hard to understand. This is where ELI5, or Explain Like I’m 5 comes to play! Simply, tell the bot what concept you want to get explained and it will do exactly that for you in a simple, fun way! NOTE: I’m using a modified version of discord ONLY to show some useful information (like which device I’m using [see members list], what the previous messages were of the bot [see chat, message logger is enabled]. I DO NOT CONDONE THE USAGE OF MODIFIED VERSIONS OF DISCORD AS IT GOES AGAINST THEIR TOS.
✨Implemented an AI Feature: /liveai Oof! This took wayyyy too long to implement. Now, instead of typing your queries / prompts, you can actually talk to the bot! It creates a private voice channel (only you and the bot) and you can ask it questions. It’s instantaneous too! I honestly love this feature! I can’t show the full working of this command in a screenshot so, the full demo of this command, (including all the other commands) will be in the showcasing video that I’ll create. Stay tuned for that! NOTE: I’m using a modified version of discord ONLY to show some useful information (like which device I’m using [see members list], what the previous messages were of the bot [see chat, message logger is enabled]. I DO NOT CONDONE THE USAGE OF MODIFIED VERSIONS OF DISCORD AS IT GOES AGAINST THEIR TOS.
✅ Fixed: Some bugs in the /liveai feature! So, if you were trying to ask the bot a question in the VC and there was some background noise, the bot would glitch out and sometimes fill its buffer of holding the audio chunks of the users. Now, I have fixed this issue and added a “End Session” button so that the user can get the summary of their conversation without waiting for 3 mins inactivity in the VC. **Most of the voice handling and AI stuff was implemented using Gemini 3.1 Pro as I don’t have an idea on how to manage audio chunks and stuff. **
✅Change: Added comments to the code! Spent a few minutes just adding comments to the code so it becomes more understandable. Some of the examples of comments I’ve added are in the screenshot I’ve attached. The bot is practically completed at this point. I’ll spend a few more minutes writing the README.md file and creating a showcase video for the bot.
✅Change: Updated the README.md file! Spent an hour writing a README.md file and committed the README to GitHub. Only need to create a showcase video for the bot now!
(smol and late) Devlog I’m not sure exactly when and what changes I did but, this is the final GitHub Repo README.md. I’ve added some alerts and more information in the README.md as you can see. The reason this Devlog is so long is that I spent some time fixing bugs and stuff (like typos) in the code and those changes were so small that I just didn’t care enough to post a Devlog on them. Will add some more features to the bot very soon :D
Ships:
~/KLAIR is a free-to-use Discord bot packed with AI features, mini-games, and a few things you probably didn’t know you needed! It comes with 15 features: 5 minigames 5 AI features 5 other miscellaneous commands The best feature, by far, has to be the Live AI feature that I’ve implemented in the bot. Instead of texting the bot, now, you can actually talk to it INSIDE Discord! This is thanks to Gemini Live, the AI model behind generating the responses and speaking them. There are a bunch of other features too like /cat - which fetches a cat image, /dog - which well, fetches a dog image, and more! You can see the showcase YouTube video by clicking on the “Try project” button. If you don’t want to host the bot by yourself, you can also just add it to your server as it’s currently being hosted online. Use the link below to add the bot to your server! https://discord.com/oauth2/authorize?client_id=1532745014600536146&permissions=35186573274480&integration_type=0&scope=bot...
|
1793706535.3320825
|
1793792935.3320825
|
|
65801
|
My own site! by @aaryaaa | Stardance
|
aaryaaa
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My own site! by @aaryaaa | Stardance
|
1793706536.6174939
|
1794311336.6174939
|
|
34745
|
Star Shortener by @z0b1 | Stardance
|
z0b1
|
1
|
2.0
|
10
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-07-14T00:11:43Z", "hours": 2.0, "multiplier": 6.47, "payout": 10, "blessing": "neutral", "text": "I made a fast FastAPI URL shortener, which stores a uniquely generated short ID which is associated with the original URL in a Postgres database and redirects to the original URL when entered. Jinja was used to serve the frontend.", "repo": "https://github.com/z0b1/starshortener", "demo": "https://urs.z0b1.tech/"}]...
|
[{"post_id": 28011, "ts": "202 [{"post_id": 28011, "ts": "2026-07-14T00:08:31Z", "hours": 1.5892, "text": "Devlog #1 Made the FastAPI app. Made the frontend. Connected the Database and server. Welcome to my first(probably the only devlog for this project) devlog, I’m currently working on a custom USB rubber ducky which executes a predefined payload(in my case opens a IP logging website, and a rickroll on a CDN), and I needed a way to shorten the CDN URL so I decided to make the shortener. Overall awesome and fun project. I used FastAPI for generating the unique ID and logging the given URL togheter with the unique ID. I used Jinja2 for the HTML serving part, and I used Neon serverless Postgres to host the database. API is hosted on Vercel."}]...
|
Title: Star Shortener by @z0b1 | Stardance
Devlog Title: Star Shortener by @z0b1 | Stardance
Devlogs:
Devlog #1 Made the FastAPI app. Made the frontend. Connected the Database and server. Welcome to my first(probably the only devlog for this project) devlog, I’m currently working on a custom USB rubber ducky which executes a predefined payload(in my case opens a IP logging website, and a rickroll on a CDN), and I needed a way to shorten the CDN URL so I decided to make the shortener. Overall awesome and fun project. I used FastAPI for generating the unique ID and logging the given URL togheter with the unique ID. I used Jinja2 for the HTML serving part, and I used Neon serverless Postgres to host the database. API is hosted on Vercel.
Ships:
I made a fast FastAPI URL shortener, which stores a uniquely generated short ID which is associated with the original URL in a Postgres database and redirects to the original URL when entered. Jinja was used to serve the frontend....
|
1793706537.523354
|
1793792937.523354
|
|
65803
|
My awesome macropad! by @abdullah_the_manipulator My awesome macropad! by @abdullah_the_manipulator | Stardance...
|
abdullah_the_manipulator
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @abdullah_the_manip Title: My awesome macropad! by @abdullah_the_manipulator | Stardance...
|
1793706538.66792
|
1794311338.66792
|