|
4351
|
My first slack bot! by @Zaisha | Stardance
|
Zaisha
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My first slack bot! by @Zaisha | Stardance
|
1792792117.0338771
|
1793396917.0338771
|
|
4352
|
ankle monitor by @shriya | Stardance
|
shriya
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: ankle monitor by @shriya | Stardance
|
1793206353.527408
|
1793811153.527408
|
|
4353
|
InviteHub by @Mrithul_E | Stardance
|
Mrithul_E
|
2
|
85.0
|
1614
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-13T15:04:05Z", "hours": 4.0, "multiplier": 12.49, "payout": 49, "blessing": "neutral", "text": "I made a website for creating digital invitation webpages by simply selecting a template and filling out a form. This can help reduce paper usage by decreasing printed inviation lol .. I faced many challenges during the development: Building the logic for creating different different forms for each and every templates Limiting the total file size in http request Building a UI for creating forms by Drag-and-Droping Couldn’t host in vercel because vercel blocks requests more that ~4 MB Admin centralized working (only admin can create templates, this ensures security) I am proud of dedecating 3 months to complete this project, without doing any other project. To run my project my project you will need firebase api key, and hackclub cdn api. But you can’t get the already created templates because those are stored in firebase. what’s new in this ship 2 fixed some security vulnerability as per github code scan Added assets completely handmade with canva replaced many fonts in home page with cursive fonts added our mission section in the home page", "repo": "https://github.com/Mrithul-E/InviteHub", "demo": "https://invitehub.mrithul.in/"}, {"ship_num": 2, "ts": "2026-09-06T13:06:11Z", "hours": 81.0, "multiplier": 19.23, "payout": 1565, "blessing": "neutral", "text": "I made a website for creating digital invitation webpages by simply selecting a template and filling out a form. This can help reduce paper usage by decreasing printed inviation lol .. I faced many challenges during the development: Building the logic for creating different different forms for each and every templates Limiting the total file size in http request Building a UI for creating forms by Drag-and-Droping Couldn’t host in vercel because vercel blocks requests more that ~4 MB Admin centralized working (only admin can create templates, this ensures security) I am proud of dedecating 3 months to complete this project, without doing any other project. To run my project my project you will need firebase api key, and hackclub cdn api. But you can’t get the already created templates because those are stored in firebase.", "repo": "https://github.com/Mrithul-E/InviteHub", "demo": "https://invitehub.mrithul.in/"}]...
|
[{"post_id": 66105, "ts": "202 [{"post_id": 66105, "ts": "2026-09-11T18:10:15Z", "hours": 0.3892, "text": "Minor security fixes as per GitHub security scan Inclusion of functionality from an untrusted source Client-side URL redirect using query in URL"}, {"post_id": 66022, "ts": "2026-09-11T15:47:24Z", "hours": 1.2178, "text": "Some reworks readme updated added more gap in between the template card added the github link to the navbar changed some fonts in homepage and added some paragraph sections there"}, {"post_id": 64908, "ts": "2026-09-09T16:58:28Z", "hours": 1.6047, "text": "full css and ui rework: Changed the background image Made the design and animation minimalistic updated the navbar and footer removed unwanted styling in css removed unwanted gradient from text made minimal footer"}, {"post_id": 63600, "ts": "2026-09-07T14:55:46Z", "hours": 0.7089, "text": "Minor css fix removed many useless css code. Made it more good. not that the gradients are not generated by AI, instead it is generated by online CSS gradient maker. Don’t this that this is a AI generated/AI styled project. This site doesn’t have that much huge css to use AI. The Login with Google button is copied by some article in Medium. The gradient used in the home page Get Started button is custom made using CSS gradient generator The background image and the animated phone image is generated by Chatgpt. I don’t know whether this is contributing to the AI feel 🥲🥲😭😭 UPDATE: : By asking to shipwrights, they say that it was flagged and AI because it used AI generated images, which is not allowed. So i made it my self using canva, here it is:"}, {"post_id": 62873, "ts": "2026-09-06T12:22:58Z", "hours": 0.3833, "text": "Fix: Chrome media hub staying active even when video stops fixed this by removing the src and loading the video again into chrome’s memory, this solves the problem ."}, {"post_id": 62835, "ts": "2026-09-06T11:22:25Z", "hours": 1.3864, "text": "Added demo video to the home page Updated README.md and also fixed many minor css and html issues"}, {"post_id": 62397, "ts": "2026-09-05T18:51:00Z", "hours": 1.4019, "text": "Added README.md !! *Not comleted yet, no images and videos are added yet"}, {"post_id": 62092, "ts": "2026-09-05T10:41:55Z", "hours": 1.1986, "text": "Added the pages such as About, privacy-policies etc… Added About, Privacy policies , Terms of service page in hbs and added the corresponding routers for it"}, {"post_id": 62018, "ts": "2026-09-05T07:10:46Z", "hours": 0.5586, "text": "Added confirmation for logout and Added redirect to the last visited URL in login Added redirect to the last visited URL in login Added confirmation for logout, and made the logout route a long random string"}, {"post_id": 61684, "ts": "2026-09-04T18:32:50Z", "hours": 3.3572, "text": "Added ‘My invitations’ section in website Added My invitations section that shows the invitations created by that user. From here user can see the invitation, creation date, and user can also delete the invitation. Delete option will delete all files that are part of that invitation from the cdn, then delete the complete invitation from the db. And also added some minor fixes such as: webpage title issues added favicon etc…"}, {"post_id": 61049, "ts": "2026-09-03T19:19:07Z", "hours": 1.6256, "text": "User experience improvement implemented: made the created invitation url return fron server to frontend removed unwanted console.log used for debugging made the “Get started” button in frontend functional Added: invitation link and copy button in invitation creation form submission page"}, {"post_id": 60427, "ts": "2026-09-02T18:50:07Z", "hours": 1.5317, "text": "Added search option in templates Implemented using Fuse.js *images are placeholders"}, {"post_id": 60264, "ts": "2026-09-02T15:01:57Z", "hours": 1.1522, "text": "Reached initial working stage First working template added Added: render of hbs from cdn rendering of custom form from database"}, {"post_id": 59313, "ts": "2026-09-01T01:12:28Z", "hours": 2.1864, "text": "added template and form rendering from Database"}, {"post_id": 58317, "ts": "2026-08-30T18:12:36Z", "hours": 4.9681, "text": "Added a option to write the template(HBS) and the form from frontend implemented: option to write the template(HBS) and the form from frontend hbs to CDN script 10 MB fields limit in template creation router (multer) Invitation total file size limit 50 MB (formidable) Invitation data processing and cleanup"}, {"post_id": 56814, "ts": "2026-08-28T18:55:14Z", "hours": 1.57, "text": "Connected the form created using jquery forms to HackClub CDN My website is basically a site that have many templates for different kind of event. A user can select a template , this will redirect to a form. Each template have entirely different forms , each form is created by the Admin using a jquery form builder ui. Because these form structures are unknow to the server, the server dont know how much file input fields are there. so we cant set a limit on number of file input fields and per input size. So I set a 50 MB total upload limit using formidable before sending files to hackclub cdn. This makes the usage fair."}, {"post_id": 56609, "ts": "2026-08-28T13:05:06Z", "hours": 1.4072, "text": "Handle multipart uploads with file size limits using busboy formidable ✓ In the last devlog I shared a very large code to limit max total requiest size using busboy. Yesterday , In a simple google search , the Google AI mode suggested me of Formidable previously idk formidable … So I learned about that , it made my code so tiny frontend logic was already there"}, {"post_id": 54984, "ts": "2026-08-26T12:38:33Z", "hours": 2.4072, "text": "Handle multipart uploads with file size limits using busboy i want to limit the max total file upload to 50 MB, multer cant have this feature so I use busboy and wrote long long code to solve this problem code :"}, {"post_id": 54621, "ts": "2026-08-25T17:23:09Z", "hours": 0.6072, "text": "Research: How to limit the total file size in a multipart/formData (Express.js) After many searches I found out that multer don’t support this I am planning to use Busboy directly"}, {"post_id": 54387, "ts": "2026-08-25T11:35:57Z", "hours": 2.1842, "text": "Added error messages in data submissions in rendered template form Added a 50 MB file size limit in file upload (for now only frontend checks are implemented, backend check is TODO)."}, {"post_id": 51711, "ts": "2026-08-21T15:19:40Z", "hours": 2.8461, "text": "Added delete template option for admin The delete option will delete the template from the database and also delete the thumbnail image stored in hackclub CDN"}, {"post_id": 34488, "ts": "2026-07-25T07:52:12Z", "hours": 4.4856, "text": "Switched from formeo to jquery form builder formeo doesn’t support many input types"}, {"post_id": 30066, "ts": "2026-07-17T10:51:07Z", "hours": 1.1742, "text": "Researching on custom form builder On deep research on making a custom form builder form my each templates , I found : formeo, jquery form builder and survayJS"}, {"post_id": 28398, "ts": "2026-07-14T17:08:38Z", "hours": 4.6656, "text": "connected the admin only template creation form to the firestore AND also made the template cards load dynamically currently provided image is a placeholder This is admin page , only admin page have create template button"}, {"post_id": 25450, "ts": "2026-07-09T18:43:35Z", "hours": 1.7492, "text": "Added hackclub cdn to the project !!! At first it didn’t worked because of compatibly issue of new nodejs’s fetch and npm form-data module fixed using new build-in formData()"}, {"post_id": 23622, "ts": "2026-07-06T18:04:21Z", "hours": 2.0433, "text": "new knoledge unlocked: I can use : app . use ( ' /admin ' , requireAdmin , adminRouter ) instead of : app . use ( requireAdmin ) app . use ( ' /admin ' , adminRouter ) I know everybody knows this, but this is a knowledge to me"}, {"post_id": 21534, "ts": "2026-07-03T15:40:01Z", "hours": 1.2683, "text": "added a very very cool text area for entering description for each field completely build on bootstrap accordion check it out !!!"}, {"post_id": 20136, "ts": "2026-07-01T17:55:02Z", "hours": 1.2319, "text": "First template design completed !!! fully using Bootstrap , and some css"}, {"post_id": 19898, "ts": "2026-07-01T10:16:49Z", "hours": 1.5828, "text": "Continuing the writting of the first template for the site !!! basically my project is a invitation page builder, it needs a lot of custom template. | ▽ not complete yet"}, {"post_id": 18554, "ts": "2026-06-29T18:58:19Z", "hours": 6.7694, "text": "Devlog 6 - Template creation form In this 6h 44m, I made a lot of features but the main highlight was the work on the template creation form ( continuation of previous devlog) Story Time: Basically my project is a wedding invitation page generator. My website will have a lot of prebuild invitation template(HBS) for different different events So the point is different templates require different forms should be filled by the user. Therefore when the admin create different template, the admin should list the require fields for the form of the specific template. Problems faced: My thoughts was to make a prebuild list of fields, from that the admin should list them in specific order. Problem - 1 The first problem was there is no form element to do these. So i used a select element with a ‘Add’ btn. For the sorting, at first i used up/down button, but that wasn’t smooth. After researching I found sortable js. At first sortable js also was not smooth, I fixed that by removing some bootstrap classes from the tag. Problem - 2 The next problem I faced was I cant use required in the custom fields list maker, So I can’t make that field mandatory. Solution (simple) The solution was simple, I made a invisible <textarea required .....> , and add the list of fields to that in json string when the admin edited the list. Thank you for reading ❤️, Mrithul."}, {"post_id": 15040, "ts": "2026-06-24T12:54:36Z", "hours": 4.9608, "text": "Devlog 5 - Templates Page Spent 4 hours and 52 minutes working on the templates page today. This page is going to be the main place where all invitation templates are managed, so I wanted to get the basic structure done before moving on to creating more templates. Templates Grid The first thing I worked on was the layout. I switched the page to a responsive grid system and started building the actual templates page. I also added a Create Template card that is only visible to admins. Clicking the card opens a modal for creating new templates. Template Creation Modal The modal is still incomplete, but the basic flow is now working. Currently it has fields for: Template name HTML file name Preview image Template category Template fields There’s still quite a bit of work left to do here, but at least the structure is finally in place. Template Categories & Fields One thing I didn’t want to do was create a completely separate form for every invitation type. Instead, I’m building a system where templates can be configured using categories and predefined fields. const templateCategories = [ { id : \" wedding \" , name : \" Wedding \" }, { id : \" engagement \" , name : \" Engagement \" }, { id : \" birthday \" , name : \" Birthday \" } .... ] const templateFields = [ { id : \" eventTitle \" , label : \" Event Title \" , type : \" text \" , category : \" common \" }, { id : \" groomName \" , label : \" Groom Name \" , type : \" text \" , category : \" wedding \" } .... ] Right now I’ve added categories for weddings, birthdays, engagements, housewarmings, baby showers and several other event types. The field system should make adding future templates a lot easier. Small UI Improvements I also spent some time cleaning up the page and added a footer. The site is slowly starting to look more like an actual product instead of a collection of pages. Next The next step is finishing the template creation page and making the field selection system fully functional. Once that’s done, adding new templates should be much faster than it is right now."}, {"post_id": 8246, "ts": "2026-06-13T18:26:46Z", "hours": 1.1044, "text": "Devlog - 4 Today I connected my website to firestore for database I have implemented the saving of login information of user to user collection of firestore database This is the implementation code: service\\userService.js : async function saveUserLogin ( userRecord ) { return db . collection ( \" users \" ) . doc ( userRecord . uid ) . set ( { displayName : userRecord . displayName || null , email : userRecord . email , photoURL : userRecord . photoURL || null , lastLoginAt : new Date ( userRecord . metadata . lastSignInTime ) }, { merge : true } ) } service\\userService.js : router . post ( \" /sessionLogin \" , async ( req , res ) => { const idToken = req . body . idToken ; const expiresIn = 60 * 60 * 24 * 13 * 1000 ; try { const sessionCookie = await admin . auth (). createSessionCookie ( idToken , { expiresIn : expiresIn }); const options = { maxAge : expiresIn , httpOnly : true , secure : false }; const decodedClaims = await admin . auth (). verifySessionCookie ( sessionCookie , true ); const userRecord = await admin . auth (). getUser ( decodedClaims . uid ); await saveUserLogin ( userRecord ) res . cookie ( ' session ' , sessionCookie , options ) res . status ( 200 ). send ({ status : \" success \" }) } catch ( err ) { console . error ( err ) res . status ( 401 ). send ( ' Unauthorized request! ' ); } }) I also created the redirect from login page if login successful / refresh in login fail (these things where previously missing) Also there are many UI improvements made, that’s not written in this Devlog (●’◡’●)"}, {"post_id": 7934, "ts": "2026-06-13T07:31:13Z", "hours": 8.3672, "text": "Devlog Time spent: 8 hours 15 minutes across ~6 days This week I mostly worked on security-related improvements and continued work on the invitation template system. Security Fixes When I opened GitHub, I got a security notification. After checking it, I found that a Firebase client-side API key was present in the repository. I know Firebase client API keys are not secret credentials by themselves, but leaving them exposed can still make abuse easier, especially if other protections are missing. Since the project is still in development, I decided to clean it up now rather than later. What I did: Revoked the old API key Generated a new one Moved the configuration into environment variables Made sure sensitive files are not pushed to GitHub res . locals . firebaseClientCred = Buffer . from ( process . env . firebaseClientCred , \" base64 \" ) . toString ( \" utf-8 \" ); The long-term plan is to separate development and production configurations. Right now localhost access is required for development, so strict domain restrictions are not practical yet. Once the project is deployed, I plan to have: A development API configuration that allows localhost A production API configuration that only allows requests from the final website domain The developer configuration will stay out of production deployments. Even if development code is accidentally pushed, it should fail instead of exposing access that was never intended for production. The backend Firebase SDK setup was already safe, so most of this work was focused on the client-side configuration. Navbar Improvements I also implemented automatic navbar link highlighting. Instead of manually setting the active page for every route, the navbar now checks the current URL and highlights the correct link automatically. function highlightCurrentPageLink () { const currentPageUrl = window . location . pathname ; const links = document . querySelectorAll ( \" #navbar-ul li a \" ); links . forEach (( link ) => { const href = link . getAttribute ( \" href \" ); if ( href . split ( \" / \" )[ 1 ] === currentPageUrl . split ( \" / \" )[ 1 ]) { link . classList . add ( \" active \" ); } else { link . classList . remove ( \" active \" ); } }); } Small change, but it makes maintaining the navigation much easier. User Menu Worked on the user menu and logout functionality. Nothing huge here, but it is another piece of the authentication flow that is now coming together. Template System I created the HBS file structure for the template page and spent a lot of time thinking about how templates should actually be implemented. This is currently the biggest blocker. There are several ways to handle template rendering and customization, and I don’t want to lock myself into a design that becomes difficult to maintain later. A lot of the development time this week went into planning, experimenting, and changing approaches rather than writing large amounts of code. Next Create separate Firebase development and production configurations Add domain restrictions after deployment Continue work on the invitation template system Finish the template rendering workflow Improve user account features There is still a lot to do, but the project is becoming more stable and secure before moving further into feature development."}, {"post_id": 3693, "ts": "2026-06-06T18:57:54Z", "hours": 2.5967, "text": "Devlog-2: Today , I added a beautiful animation to the home page made the home page overall beautiful Also fixed a authentication error : the fix was simple - I accidently wrote (res, req) instead of (req, res) in express router Also completed the login page design What’s next : Surely build a footer tomorrow 😁 Also planning to create a template creation tool for Admin Note: the PHONE image have a cool animation effect. completely done by hands , no AI only used AI for clearing doubt"}, {"post_id": 2855, "ts": "2026-06-05T18:18:17Z", "hours": 8.5736, "text": "Login Page within 8h 33m , I made the home page, firebase auth, designed logo etc.. currently I am working on designing the ‘Login with google’ page I thought I should only submit and link the project after completing the full project … 😟 but I didn’t forget to connect hackatime 😁🥳"}]...
|
Title: InviteHub by @Mrithul_E | Stardance
Devlog Title: InviteHub by @Mrithul_E | Stardance
Devlogs:
Login Page within 8h 33m , I made the home page, firebase auth, designed logo etc.. currently I am working on designing the ‘Login with google’ page I thought I should only submit and link the project after completing the full project … 😟 but I didn’t forget to connect hackatime 😁🥳
Devlog-2: Today , I added a beautiful animation to the home page made the home page overall beautiful Also fixed a authentication error : the fix was simple - I accidently wrote (res, req) instead of (req, res) in express router Also completed the login page design What’s next : Surely build a footer tomorrow 😁 Also planning to create a template creation tool for Admin Note: the PHONE image have a cool animation effect. completely done by hands , no AI only used AI for clearing doubt
Devlog Time spent: 8 hours 15 minutes across ~6 days This week I mostly worked on security-related improvements and continued work on the invitation template system. Security Fixes When I opened GitHub, I got a security notification. After checking it, I found that a Firebase client-side API key was present in the repository. I know Firebase client API keys are not secret credentials by themselves, but leaving them exposed can still make abuse easier, especially if other protections are missing. Since the project is still in development, I decided to clean it up now rather than later. What I did: Revoked the old API key Generated a new one Moved the configuration into environment variables Made sure sensitive files are not pushed to GitHub res . locals . firebaseClientCred = Buffer . from ( process . env . firebaseClientCred , " base64 " ) . toString ( " utf-8 " ); The long-term plan is to separate development and production configurations. Right now localhost access is required for development, so strict domain restrictions are not practical yet. Once the project is deployed, I plan to have: A development API configuration that allows localhost A production API configuration that only allows requests from the final website domain The developer configuration will stay out of production deployments. Even if development code is accidentally pushed, it should fail instead of exposing access that was never intended for production. The backend Firebase SDK setup was already safe, so most of this work was focused on the client-side configuration. Navbar Improvements I also implemented automatic navbar link highlighting. Instead of manually setting the active page for every route, the navbar now checks the current URL and highlights the correct link automatically. function highlightCurrentPageLink () { const currentPageUrl = window . location . pathname ; const links = document . querySelectorAll ( " #navbar-ul li a " ); links . forEach (( link ) => { const href = link . getAttribute ( " href " ); if ( href . split ( " / " )[ 1 ] === currentPageUrl . split ( " / " )[ 1 ]) { link . classList . add ( " active " ); } else { link . classList . remove ( " active " ); } }); } Small change, but it makes maintaining the navigation much easier. User Menu Worked on the user menu and logout functionality. Nothing huge here, but it is another piece of the authentication flow that is now coming together. Template System I created the HBS file structure for the template page and spent a lot of time thinking about how templates should actually be implemented. This is currently the biggest blocker. There are several ways to handle template rendering and customization, and I don’t want to lock myself into a design that becomes difficult to maintain later. A lot of the development time this week went into planning, experimenting, and changing approaches rather than writing large amounts of code. Next Create separate Firebase development and production configurations Add domain restrictions after deployment Continue work on the invitation template system Finish the template rendering workflow Improve user account features There is still a lot to do, but the project is becoming more stable and secure before moving further into feature development.
Devlog - 4 Today I connected my website to firestore for database I have implemented the saving of login information of user to user collection of firestore database This is the implementation code: service\userService.js : async function saveUserLogin ( userRecord ) { return db . collection ( " users " ) . doc ( userRecord . uid ) . set ( { displayName : userRecord . displayName || null , email : userRecord . email , photoURL : userRecord . photoURL || null , lastLoginAt : new Date ( userRecord . metadata . lastSignInTime ) }, { merge : true } ) } service\userService.js : router . post ( " /sessionLogin " , async ( req , res ) => { const idToken = req . body . idToken ; const expiresIn = 60 * 60 * 24 * 13 * 1000 ; try { const sessionCookie = await admin . auth (). createSessionCookie ( idToken , { expiresIn : expiresIn }); const options = { maxAge : expiresIn , httpOnly : true , secure : false }; const decodedClaims = await admin . auth (). verifySessionCookie ( sessionCookie , true ); const userRecord = await admin . auth (). getUser ( decodedClaims . uid ); await saveUserLogin ( userRecord ) res . cookie ( ' session ' , sessionCookie , options ) res . status ( 200 ). send ({ status : " success " }) } catch ( err ) { console . error ( err ) res . status ( 401 ). send ( ' Unauthorized request! ' ); } }) I also created the redirect from login page if login successful / refresh in login fail (these things where previously missing) Also there are many UI improvements made, that’s not written in this Devlog (●’◡’●)
Devlog 5 - Templates Page Spent 4 hours and 52 minutes working on the templates page today. This page is going to be the main place where all invitation templates are managed, so I wanted to get the basic structure done before moving on to creating more templates. Templates Grid The first thing I worked on was the layout. I switched the page to a responsive grid system and started building the actual templates page. I also added a Create Template card that is only visible to admins. Clicking the card opens a modal for creating new templates. Template Creation Modal The modal is still incomplete, but the basic flow is now working. Currently it has fields for: Template name HTML file name Preview image Template category Template fields There’s still quite a bit of work left to do here, but at least the structure is finally in place. Template Categories & Fields One thing I didn’t want to do was create a completely separate form for every invitation type. Instead, I’m building a system where templates can be configured using categories and predefined fields. const templateCategories = [ { id : " wedding " , name : " Wedding " }, { id : " engagement " , name : " Engagement " }, { id : " birthday " , name : " Birthday " } .... ] const templateFields = [ { id : " eventTitle " , label : " Event Title " , type : " text " , category : " common " }, { id : " groomName " , label : " Groom Name " , type : " text " , category : " wedding " } .... ] Right now I’ve added categories for weddings, birthdays, engagements, housewarmings, baby showers and several other event types. The field system should make adding future templates a lot easier. Small UI Improvements I also spent some time cleaning up the page and added a footer. The site is slowly starting to look more like an actual product instead of a collection of pages. Next The next step is finishing the template creation page and making the field selection system fully functional. Once that’s done, adding new templates should be much faster than it is right now.
Devlog 6 - Template creation form In this 6h 44m, I made a lot of features but the main highlight was the work on the template creation form ( continuation of previous devlog) Story Time: Basically my project is a wedding invitation page generator. My website will have a lot of prebuild invitation template(HBS) for different different events So the point is different templates require different forms should be filled by the user. Therefore when the admin create different template, the admin should list the require fields for the form of the specific template. Problems faced: My thoughts was to make a prebuild list of fields, from that the admin should list them in specific order. Problem - 1 The first problem was there is no form element to do these. So i used a select element with a ‘Add’ btn. For the sorting, at first i used up/down button, but that wasn’t smooth. After researching I found sortable js. At first sortable js also was not smooth, I fixed that by removing some bootstrap classes from the tag. Problem - 2 The next problem I faced was I cant use required in the custom fields list maker, So I can’t make that field mandatory. Solution (simple) The solution was simple, I made a invisible <textarea required .....> , and add the list of fields to that in json string when the admin edited the list. Thank you for reading ❤️, Mrithul.
Continuing the writting of the first template for the site !!! basically my project is a invitation page builder, it needs a lot of custom template. | ▽ not complete yet
First template design completed !!! fully using Bootstrap , and some css
added a very very cool text area for entering description for each field completely build on bootstrap accordion check it out !!!
new knoledge unlocked: I can use : app . use ( ' /admin ' , requireAdmin , adminRouter ) instead of : app . use ( requireAdmin ) app . use ( ' /admin ' , adminRouter ) I know everybody knows this, but this is a knowledge to me
Added hackclub cdn to the project !!! At first it didn’t worked because of compatibly issue of new nodejs’s fetch and npm form-data module fixed using new build-in formData()
connected the admin only template creation form to the firestore AND also made the template cards load dynamically currently provided image is a placeholder This is admin page , only admin page have create template button
Researching on custom form builder On deep research on making a custom form builder form my each templates , I found : formeo, jquery form builder and survayJS
Switched from formeo to jquery form builder formeo doesn’t support many input types
Added delete template option for admin The delete option will delete the template from the database and also delete the thumbnail image stored in hackclub CDN
Added error messages in data submissions in rendered template form Added a 50 MB file size limit in file upload (for now only frontend checks are implemented, backend check is TODO).
Research: How to limit the total file size in a multipart/formData (Express.js) After many searches I found out that multer don’t support this I am planning to use Busboy directly
Handle multipart uploads with file size limits using busboy i want to limit the max total file upload to 50 MB, multer cant have this feature so I use busboy and wrote long long code to solve this problem code :
Handle multipart uploads with file size limits using busboy formidable ✓ In the last devlog I shared a very large code to limit max total requiest size using busboy. Yesterday , In a simple google search , the Google AI mode suggested me of Formidable previously idk formidable … So I learned about that , it made my code so tiny frontend logic was already there
Connected the form created using jquery forms to HackClub CDN My website is basically a site that have many templates for different kind of event. A user can select a template , this will redirect to a form. Each template have entirely different forms , each form is created by the Admin using a jquery form builder ui. Because these form structures are unknow to the server, the server dont know how much file input fields are there. so we cant set a limit on number of file input fields and per input size. So I set a 50 MB total upload limit using formidable before sending files to hackclub cdn. This makes the usage fair.
Added a option to write the template(HBS) and the form from frontend implemented: option to write the template(HBS) and the form from frontend hbs to CDN script 10 MB fields limit in template creation router (multer) Invitation total file size limit 50 MB (formidable) Invitation data processing and cleanup
added template and form rendering from Database
Reached initial working stage First working template added Added: render of hbs from cdn rendering of custom form from database
Added search option in templates Implemented using Fuse.js *images are placeholders
User experience improvement implemented: made the created invitation url return fron server to frontend removed unwanted console.log used for debugging made the “Get started” button in frontend functional Added: invitation link and copy button in invitation creation form submission page
Added ‘My invitations’ section in website Added My invitations section that shows the invitations created by that user. From here user can see the invitation, creation date, and user can also delete the invitation. Delete option will delete all files that are part of that invitation from the cdn, then delete the complete invitation from the db. And also added some minor fixes such as: webpage title issues added favicon etc…
Added confirmation for logout and Added redirect to the last visited URL in login Added redirect to the last visited URL in login Added confirmation for logout, and made the logout route a long random string
Added the pages such as About, privacy-policies etc… Added About, Privacy policies , Terms of service page in hbs and added the corresponding routers for it
Added README.md !! *Not comleted yet, no images and videos are added yet
Added demo video to the home page Updated README.md and also fixed many minor css and html issues
Fix: Chrome media hub staying active even when video stops fixed this by removing the src and loading the video again into chrome’s memory, this solves the problem .
Minor css fix removed many useless css code. Made it more good. not that the gradients are not generated by AI, instead it is generated by online CSS gradient maker. Don’t this that this is a AI generated/AI styled project. This site doesn’t have that much huge css to use AI. The Login with Google button is copied by some article in Medium. The gradient used in the home page Get Started button is custom made using CSS gradient generator The background image and the animated phone image is generated by Chatgpt. I don’t know whether this is contributing to the AI feel 🥲🥲😭😭 UPDATE: : By asking to shipwrights, they say that it was flagged and AI because it used AI generated images, which is not allowed. So i made it my self using canva, here it is:
full css and ui rework: Changed the background image Made the design and animation minimalistic updated the navbar and footer removed unwanted styling in css removed unwanted gradient from text made minimal footer
Some reworks readme updated added more gap in between the template card added the github link to the navbar changed some fonts in homepage and added some paragraph sections there
Minor security fixes as per GitHub security scan Inclusion of functionality from an untrusted source Client-side URL redirect using query in URL
Ships:
I made a website for creating digital invitation webpages by simply selecting a template and filling out a form. This can help reduce paper usage by decreasing printed inviation lol .. I faced many challenges during the development: Building the logic for creating different different forms for each and every templates Limiting the total file size in http request Building a UI for creating forms by Drag-and-Droping Couldn’t host in vercel because vercel blocks requests more that ~4 MB Admin centralized working (only admin can create templates, this ensures security) I am proud of dedecating 3 months to complete this project, without doing any other project. To run my project my project you will need firebase api key, and hackclub cdn api. But you can’t get the already created templates because those are stored in firebase.
I made a website for creating digital invitation webpages by simply selecting a template and filling out a form. This can help reduce paper usage by decreasing printed inviation lol .. I faced many challenges during the development: Building the logic for creating different different forms for each and every templates Limiting the total file size in http request Building a UI for creating forms by Drag-and-Droping Couldn’t host in vercel because vercel blocks requests more that ~4 MB Admin centralized working (only admin can create templates, this ensures security) I am proud of dedecating 3 months to complete this project, without doing any other project. To run my project my project you will need firebase api key, and hackclub cdn api. But you can’t get the already created templates because those are stored in firebase. what’s new in this ship 2 fixed some security vulnerability as per github code scan Added assets completely handmade with canva replaced many fonts in home page with cursive fonts added our mission section in the home page...
|
1793220727.0134668
|
1793307127.0134668
|
|
4354
|
Marsfront by @danielerolli | Stardance
|
danielerolli
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Marsfront by @danielerolli | Stardance
|
1793217208.1265173
|
1793822008.1265173
|
|
4355
|
My awesome macropad! by @orangecrayon | Stardance
|
orangecrayon
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @orangecrayon | Sta Title: My awesome macropad! by @orangecrayon | Stardance...
|
1793184674.2186859
|
1793789474.2186859
|
|
4356
|
My awesome macropad! by @Vivek | Stardance
|
Vivek
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @Vivek | Stardance
|
1792655388.3295307
|
1793260188.3295307
|
|
4357
|
Get back to work! by @poofer | Stardance
|
poofer
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Get back to work! by @poofer | Stardance
|
1792806710.267413
|
1793411510.267413
|
|
4358
|
EcoKills - MC Plugin by @DanngDev | Stardance
|
DanngDev
|
0
|
4.23
|
0
|
[]
|
[{"post_id": 5831, "ts": "2026 [{"post_id": 5831, "ts": "2026-06-09T19:29:41Z", "hours": 0.3808, "text": "I hate bugs. Still fixing literally EVERYTHING."}, {"post_id": 1544, "ts": "2026-06-03T16:57:11Z", "hours": 0.7586, "text": "Add code linting and github actions build pipeline"}, {"post_id": 1324, "ts": "2026-06-03T08:13:09Z", "hours": 0.5081, "text": "Added reload command and updated README ready to ship"}, {"post_id": 1004, "ts": "2026-06-02T19:46:44Z", "hours": 0.4711, "text": "Add placeholderAPI support and finish event listener"}, {"post_id": 938, "ts": "2026-06-02T18:16:01Z", "hours": 0.6681, "text": "Finished initial event listener My first prototype of an event listener for when the player has been killed is complete"}, {"post_id": 859, "ts": "2026-06-02T15:53:26Z", "hours": 0.7419, "text": "Finished Config settings I have finished writing the config handlers and setters for EcoKills"}, {"post_id": 715, "ts": "2026-06-02T09:32:44Z", "hours": 0.7003, "text": "Finished Scaffolding and utilities I have finished working on the utilities to interact with vault and scaffolded the base of the plugin"}]...
|
Title: EcoKills - MC Plugin by @DanngDev | Stardan Title: EcoKills - MC Plugin by @DanngDev | Stardance
Devlogs:
Finished Scaffolding and utilities I have finished working on the utilities to interact with vault and scaffolded the base of the plugin
Finished Config settings I have finished writing the config handlers and setters for EcoKills
Finished initial event listener My first prototype of an event listener for when the player has been killed is complete
Add placeholderAPI support and finish event listener
Added reload command and updated README ready to ship
Add code linting and github actions build pipeline
I hate bugs. Still fixing literally EVERYTHING....
|
1793144961.5899148
|
1793749761.5899148
|
|
4359
|
6-Key Macropad by @itscharz | Stardance
|
itscharz
|
1
|
7.0
|
0
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-24T04:57:57Z", "hours": 7.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "For my Hackpad 6X project, I designed and built a custom 3×3 macropad with an OLED screen, rotary encoder and WS2812 RGB LEDs. I used Fusion 360 to design the case and QMK to program the keyboard, including custom key functions, display features and LED effects. I also made a Windows app that lets the macropad display live PC stats. One of the biggest challenges was getting everything working together, especially debugging the key matrix, which sometimes registered phantom keypresses due to something I still can’t quite understand. I used QMK’s debug console, a multimeter and continuity tests to help track down the problem, which took up a significant amount of the 2 day build. I’m proud of how much I managed to build and learn, from designing the hardware to programming the firmware and PC app. I got to experiment with GPIOs, Raw HID, OLED graphics, encoders and RGB lighting, while also learning how to troubleshoot hardware and software issues. (there was a LOT of troubleshooting). There’s still room to add more features, but it’s been a really fun project, and actually having the macropad i made myself physically working and seeing it interact with my PC is pretty satisfying :)", "repo": "https://github.com/itscharz12-boop/Hackpad_6X", "demo": ""}]...
|
[{"post_id": 82158, "ts": "202 [{"post_id": 82158, "ts": "2026-10-24T04:10:46Z", "hours": 7.1872, "text": "ITS FINISHED!! I’ve finally got the parts and after 2 days of building (which I regret not tracking very much, that could’ve doubled the hours… oh well) I have a working build! There were a LOT of software bugs to iron out, but after so many hours I finally got it working! I even added some new features like a dark mode and some cool rgb effects, which you can see in the showcase video which i also made and will post on the ship! Making videos is so fun! Anyways after 2 days of soldering, 3d printing and most of all debugging, I am ready to ship! somehow I finished this before stardance ended, so big thanks for extending it, that saved my project big time! Knowing that this is a hardware project tho its probably going to take weeks to get approved :("}, {"post_id": 35065, "ts": "2026-07-26T07:51:28Z", "hours": 0.4714, "text": "The software side of Hackpad 6X is ready to be shipped! I created a showcase video to submit and made a 360° render of it to put in the video."}, {"post_id": 35038, "ts": "2026-07-26T06:10:16Z", "hours": 1.5333, "text": "Hackpad 6X - UPDATE –––––––––––––––– After having waited for 2 weeks to be reviewed and approved it has occured to me that getting parts and funding from the Hackpad program may take a while, and as stardance is set to end in jyst over a month I don’t expect for them to arrive before this finishes. But the project will go on!! I am going to submit the full software package, pcb, case, and code to stardance instead, and treat this as a software project for these purposes. As this is a hackpad, I cannot set the project type to software, but I hope that anyone reading this understands that the software is all I have to submit at the moment. I have been working on adding the final parts to the 3D design to render (keycaps and encoder) and fixing some small issues on the model such as the OLED hole being too small. It should be ready to ship very soon!"}, {"post_id": 25845, "ts": "2026-07-10T10:18:04Z", "hours": 2.1736, "text": "SUBMITTED FOR PARTS! I have spent the final 2 hours writing the hackpadLink software to transmit the CPU/GPU/Volume/Brightness data straight from PC to hackpad and have written a readme. Now all that remains is to wait for the parts to arrive, assemble it, and hope that the firmware works first try!!"}, {"post_id": 24644, "ts": "2026-07-08T11:24:11Z", "hours": 2.8906, "text": "LED AND DISPLAY CODE COMLPETED ! I am nearing completion of the software-side of the hackpad! The KiCad PCB is complete, the case is looking good, and i’ve been finishing up QMK firmware . The OLED display code is done, the RGB LEDS are finished, and the code is compiling (finally) after about 2 hours of debugging. All that remains now is to create the script to communicate the cpu/gpu usage data to the display and then to actually get some hardware and build this thing! It’s definitely at that stage now where everything is starting to come together properly, which makes the project feel a lot more real than it did a few weeks ago. I can finally move on to the part I’ve been looking forward to most: actually ordering the components, assembling the hackpad, and seeing whether everything works together in physical form as well as i hope it will!"}, {"post_id": 22578, "ts": "2026-07-05T03:21:27Z", "hours": 0.5236, "text": "After a brief moment of enlightenment, I realized that maybe 20 LEDs dedicated solely to a progress bar was a bit overkill, so I’ve changed the design a bit. Instead of using all 20 for the bar itself, I’ve now cut that down to 8 LEDs for the actual progress display, which should still be more than enough to show CPU/GPU usage clearly without being excessive. The remaining 10 LEDs are now just there for general RGB lighting, which I think makes a lot more sense and gives the project a bit more flexibility visually. At this point, the main things left to do are updating the Fusion design to fit the new LED arrangement, programming both the progress bar behavior and the RGB lighting effects, and then finishing up the screen side of the project. I also still need to finish the Python script that’ll send the CPU/GPU utilization data over so it can actually be displayed on the screen in real time. So overall, most of the big design decisions are sorted now, so it’s mainly just a matter of refining the hardware layout, getting the software side working properly, and tying everything together into something that actually looks good and functions the way I want it to. I also am planning to make a simple script to transmit the CPU/GPU utilisation data from a computer to the keyboard so that can be displayed."}, {"post_id": 19035, "ts": "2026-06-30T06:36:28Z", "hours": 2.725, "text": "Finished 3D design in fusion; set up visual studio code and used my (very limited) C knowledge to program the dual-purpose encoder, profile switching, and 6 main keys. The screen and LED remain the two next challenges to code; I believe I will also have to make a simple python script to run on the computer that is connected to transmit cpu and gpu usage data for the screen and bars."}, {"post_id": 11172, "ts": "2026-06-18T08:25:12Z", "hours": 3.1, "text": "Fixing MANY issues with the fusion design so far - the design process would be a lot easier in hindsight if I had taken the time to properly assign 3D footprints to the PCB to avoid having to dive into schematics for 0.91” displays, yet it’s looking pretty good. Just have to finish up with screw holes and figure out this LED shinethrough panel! This has been my favourite part of the process so far as Fusion is something I am quite experienced with."}, {"post_id": 6774, "ts": "2026-06-11T10:54:25Z", "hours": 0.2758, "text": "Beginning fusion design - Hackatime is still a bit of an issue but the hours are occasionally logging. I plan to have the 20 LEDs as shine-through LEDs in the case, with a thin plastic layer to hide them but still allow light to diffuse through."}, {"post_id": 6711, "ts": "2026-06-11T07:42:12Z", "hours": 0.4467, "text": "Finishing up PCB, trying and failing to set up Wakatime for fusion."}, {"post_id": 5443, "ts": "2026-06-09T06:48:47Z", "hours": 0.3686, "text": "Finished up the PCB - finally fixed the largest ERC and DRC errors. School’s been tight so I haven’t had as much time to keep teaching myself KiCad but I’m close to finishing the PCB, then it’s on to case design (something I’m a lot more familiar with!)"}, {"post_id": 2539, "ts": "2026-06-05T02:27:33Z", "hours": 0.9622, "text": "After running DRC, I realized there might be a few problems with my design. Of course, this is inevitable when teaching myself something but there were QUITE a few issues to fix (~100). Currently in the process of fixing them,"}, {"post_id": 2016, "ts": "2026-06-04T09:17:59Z", "hours": 0.6403, "text": "Changed design from 10-key to 6-key with multiple menus and a screen. Previous hours not logged as I did not know how to connect KiCad to hakatime, finally fixed that. This project serves as my first time creating a custom PCB! I primarily do 3D design work so this has been a bit of a learning curve, but i’m super excited to eventually have something which I designed from the ground up!"}]...
|
Title: 6-Key Macropad by @itscharz | Stardance
De Title: 6-Key Macropad by @itscharz | Stardance
Devlogs:
Changed design from 10-key to 6-key with multiple menus and a screen. Previous hours not logged as I did not know how to connect KiCad to hakatime, finally fixed that. This project serves as my first time creating a custom PCB! I primarily do 3D design work so this has been a bit of a learning curve, but i’m super excited to eventually have something which I designed from the ground up!
After running DRC, I realized there might be a few problems with my design. Of course, this is inevitable when teaching myself something but there were QUITE a few issues to fix (~100). Currently in the process of fixing them,
Finished up the PCB - finally fixed the largest ERC and DRC errors. School’s been tight so I haven’t had as much time to keep teaching myself KiCad but I’m close to finishing the PCB, then it’s on to case design (something I’m a lot more familiar with!)
Finishing up PCB, trying and failing to set up Wakatime for fusion.
Beginning fusion design - Hackatime is still a bit of an issue but the hours are occasionally logging. I plan to have the 20 LEDs as shine-through LEDs in the case, with a thin plastic layer to hide them but still allow light to diffuse through.
Fixing MANY issues with the fusion design so far - the design process would be a lot easier in hindsight if I had taken the time to properly assign 3D footprints to the PCB to avoid having to dive into schematics for 0.91” displays, yet it’s looking pretty good. Just have to finish up with screw holes and figure out this LED shinethrough panel! This has been my favourite part of the process so far as Fusion is something I am quite experienced with.
Finished 3D design in fusion; set up visual studio code and used my (very limited) C knowledge to program the dual-purpose encoder, profile switching, and 6 main keys. The screen and LED remain the two next challenges to code; I believe I will also have to make a simple python script to run on the computer that is connected to transmit cpu and gpu usage data for the screen and bars.
After a brief moment of enlightenment, I realized that maybe 20 LEDs dedicated solely to a progress bar was a bit overkill, so I’ve changed the design a bit. Instead of using all 20 for the bar itself, I’ve now cut that down to 8 LEDs for the actual progress display, which should still be more than enough to show CPU/GPU usage clearly without being excessive. The remaining 10 LEDs are now just there for general RGB lighting, which I think makes a lot more sense and gives the project a bit more flexibility visually. At this point, the main things left to do are updating the Fusion design to fit the new LED arrangement, programming both the progress bar behavior and the RGB lighting effects, and then finishing up the screen side of the project. I also still need to finish the Python script that’ll send the CPU/GPU utilization data over so it can actually be displayed on the screen in real time. So overall, most of the big design decisions are sorted now, so it’s mainly just a matter of refining the hardware layout, getting the software side working properly, and tying everything together into something that actually looks good and functions the way I want it to. I also am planning to make a simple script to transmit the CPU/GPU utilisation data from a computer to the keyboard so that can be displayed.
LED AND DISPLAY CODE COMLPETED ! I am nearing completion of the software-side of the hackpad! The KiCad PCB is complete, the case is looking good, and i’ve been finishing up QMK firmware . The OLED display code is done, the RGB LEDS are finished, and the code is compiling (finally) after about 2 hours of debugging. All that remains now is to create the script to communicate the cpu/gpu usage data to the display and then to actually get some hardware and build this thing! It’s definitely at that stage now where everything is starting to come together properly, which makes the project feel a lot more real than it did a few weeks ago. I can finally move on to the part I’ve been looking forward to most: actually ordering the components, assembling the hackpad, and seeing whether everything works together in physical form as well as i hope it will!
SUBMITTED FOR PARTS! I have spent the final 2 hours writing the hackpadLink software to transmit the CPU/GPU/Volume/Brightness data straight from PC to hackpad and have written a readme. Now all that remains is to wait for the parts to arrive, assemble it, and hope that the firmware works first try!!
Hackpad 6X - UPDATE –––––––––––––––– After having waited for 2 weeks to be reviewed and approved it has occured to me that getting parts and funding from the Hackpad program may take a while, and as stardance is set to end in jyst over a month I don’t expect for them to arrive before this finishes. But the project will go on!! I am going to submit the full software package, pcb, case, and code to stardance instead, and treat this as a software project for these purposes. As this is a hackpad, I cannot set the project type to software, but I hope that anyone reading this understands that the software is all I have to submit at the moment. I have been working on adding the final parts to the 3D design to render (keycaps and encoder) and fixing some small issues on the model such as the OLED hole being too small. It should be ready to ship very soon!
The software side of Hackpad 6X is ready to be shipped! I created a showcase video to submit and made a 360° render of it to put in the video.
ITS FINISHED!! I’ve finally got the parts and after 2 days of building (which I regret not tracking very much, that could’ve doubled the hours… oh well) I have a working build! There were a LOT of software bugs to iron out, but after so many hours I finally got it working! I even added some new features like a dark mode and some cool rgb effects, which you can see in the showcase video which i also made and will post on the ship! Making videos is so fun! Anyways after 2 days of soldering, 3d printing and most of all debugging, I am ready to ship! somehow I finished this before stardance ended, so big thanks for extending it, that saved my project big time! Knowing that this is a hardware project tho its probably going to take weeks to get approved :(
Ships:
For my Hackpad 6X project, I designed and built a custom 3×3 macropad with an OLED screen, rotary encoder and WS2812 RGB LEDs. I used Fusion 360 to design the case and QMK to program the keyboard, including custom key functions, display features and LED effects. I also made a Windows app that lets the macropad display live PC stats. One of the biggest challenges was getting everything working together, especially debugging the key matrix, which sometimes registered phantom keypresses due to something I still can’t quite understand. I used QMK’s debug console, a multimeter and continuity tests to help track down the problem, which took up a significant amount of the 2 day build. I’m proud of how much I managed to build and learn, from designing the hardware to programming the firmware and PC app. I got to experiment with GPIOs, Raw HID, OLED graphics, encoders and RGB lighting, while also learning how to troubleshoot hardware and software issues. (there was a LOT of troubleshooting). There’s still room to add more features, but it’s been a really fun project, and actually having the macropad i made myself physically working and seeing it interact with my PC is pretty satisfying :)...
|
1793116059.5449781
|
1793202459.5449781
|
|
4360
|
Flounder Valley by @kenzo_geier | Stardance
|
kenzo_geier
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Flounder Valley by @kenzo_geier | Stardance
|
1792551181.3011186
|
1793155981.3011186
|
|
4361
|
Untitled project by @ARCreator | Stardance
|
ARCreator
|
0
|
0.31
|
0
|
[]
|
[{"post_id": 734, "ts": "2026- [{"post_id": 734, "ts": "2026-06-02T10:45:14Z", "hours": 0.3133, "text": "this is supposed to be an air quality monitorr but idk how to us erhackatimer toi damn track my work"}]...
|
Title: Untitled project by @ARCreator | Stardance
Title: Untitled project by @ARCreator | Stardance
Devlogs:
this is supposed to be an air quality monitorr but idk how to us erhackatimer toi damn track my work...
|
1792921959.157686
|
1793785959.157686
|
|
4362
|
Untitled project by @DheerajS | Stardance
|
DheerajS
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Untitled project by @DheerajS | Stardance
|
1792565503.6840234
|
1793170303.6840234
|
|
4363
|
Untitled project by @t-nair | Stardance
|
t-nair
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Untitled project by @t-nair | Stardance
|
1792788542.6364584
|
1793393342.6364584
|
|
4364
|
NULL
|
NULL
|
0
|
0.0
|
0
|
[]
|
[]
|
|
1792943673.1862686
|
1793807673.1862686
|
|
4365
|
My first slack bot! by @strugaruemanuel | Stardanc My first slack bot! by @strugaruemanuel | Stardance...
|
strugaruemanuel
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My first slack bot! by @strugaruemanuel | S Title: My first slack bot! by @strugaruemanuel | Stardance...
|
1792637591.5573378
|
1793242391.5573378
|
|
4366
|
My awesome macropad! by @Muhammad | Stardance
|
Muhammad
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @Muhammad | Stardan Title: My awesome macropad! by @Muhammad | Stardance...
|
1793184871.1428401
|
1793789671.1428401
|
|
4367
|
My first slack bot! by @achille | Stardance
|
achille
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My first slack bot! by @achille | Stardance
|
1792756594.8544276
|
1793361394.8544276
|
|
4368
|
Pluggable Discord Bot by @jacob6855 | Stardance
|
jacob6855
|
0
|
3.14
|
0
|
[]
|
[{"post_id": 1396, "ts": "2026 [{"post_id": 1396, "ts": "2026-06-03T12:32:54Z", "hours": 1.3144, "text": "Using Gemini CLI, looks good to me"}, {"post_id": 763, "ts": "2026-06-02T12:41:19Z", "hours": 1.4686, "text": "finally done coding for today ig not tested yet but pushed first 💀"}, {"post_id": 735, "ts": "2026-06-02T11:08:22Z", "hours": 0.3617, "text": "POV: you are writing readme before writing code :3"}]...
|
Title: Pluggable Discord Bot by @jacob6855 | Stard Title: Pluggable Discord Bot by @jacob6855 | Stardance
Devlogs:
POV: you are writing readme before writing code :3
finally done coding for today ig not tested yet but pushed first 💀
Using Gemini CLI, looks good to me...
|
1792612259.8539853
|
1793217059.8539853
|
|
4369
|
A 1d pixel world adventure game by @hitodev | Star A 1d pixel world adventure game by @hitodev | Stardance...
|
hitodev
|
1
|
5.0
|
10
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-19T12:25:54Z", "hours": 5.0, "multiplier": 2.03, "payout": 10, "blessing": "neutral", "text": "I made an simple parkour game , it was a bit of challenging for a 13 year old but im totally fine with it , im proud that i can be able to make games like this and to be in stardance community", "repo": "https://github.com/Hito-helloworld/parkour-rpg", "demo": "https://github.com/Hito-helloworld/parkour-rpg/releases/tag/v1.1"}]...
|
[{"post_id": 11905, "ts": "202 [{"post_id": 11905, "ts": "2026-06-19T12:19:18Z", "hours": 2.1942, "text": "game completed i have added a stage 2 and remove the background"}, {"post_id": 2604, "ts": "2026-06-05T06:52:23Z", "hours": 1.475, "text": "So today no update on the game i just learnd oop and i have added an ugly backgound here is a quick photo of the game"}, {"post_id": 1310, "ts": "2026-06-03T07:05:54Z", "hours": 0.2939, "text": "i have upgraded the game i added an npc which welcomes and introduces the cat to the town (it took my 50 mins to code this but it didnt count)"}, {"post_id": 829, "ts": "2026-06-02T14:51:10Z", "hours": 0.5036, "text": "So new update here i added a jumping sound and the cat faces the direction where she is going"}, {"post_id": 686, "ts": "2026-06-02T07:43:38Z", "hours": 0.6883, "text": "I’ve been working on A 1D pixellated adventure game i just made an update on the previous code i have added a jump function and added boundaries to the game"}]...
|
Title: A 1d pixel world adventure game by @hitodev Title: A 1d pixel world adventure game by @hitodev | Stardance
Devlogs:
I’ve been working on A 1D pixellated adventure game i just made an update on the previous code i have added a jump function and added boundaries to the game
So new update here i added a jumping sound and the cat faces the direction where she is going
i have upgraded the game i added an npc which welcomes and introduces the cat to the town (it took my 50 mins to code this but it didnt count)
So today no update on the game i just learnd oop and i have added an ugly backgound here is a quick photo of the game
game completed i have added a stage 2 and remove the background
Ships:
I made an simple parkour game , it was a bit of challenging for a 13 year old but im totally fine with it , im proud that i can be able to make games like this and to be in stardance community...
|
1793102054.5225363
|
1793188454.5225363
|
|
4370
|
My awesome macropad! by @vardhman | Stardance
|
vardhman
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @vardhman | Stardan Title: My awesome macropad! by @vardhman | Stardance...
|
1792723847.114307
|
1793328647.114307
|
|
4371
|
naran by @boom | Stardance
|
boom
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: naran by @boom | Stardance
|
1793195605.699141
|
1793800405.699141
|
|
4372
|
My awesome macropad! by @Muzz | Stardance
|
Muzz
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @Muzz | Stardance
|
1793184448.0738208
|
1793789248.0738208
|
|
4373
|
My awesome macropad! by @samuelfoka408 | Stardance
|
samuelfoka408
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @samuelfoka408 | St Title: My awesome macropad! by @samuelfoka408 | Stardance...
|
1792562042.1786163
|
1793166842.1786163
|
|
4374
|
My awesome macropad! by @Ansar | Stardance
|
Ansar
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @Ansar | Stardance
|
1792666065.0467966
|
1793270865.0467966
|
|
4375
|
My first slack bot! by @pampam | Stardance
|
pampam
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My first slack bot! by @pampam | Stardance
|
1792759871.38846
|
1793364671.38846
|
|
4376
|
My awesome macropad! by @mikupiku | Stardance
|
mikupiku
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @mikupiku | Stardan Title: My awesome macropad! by @mikupiku | Stardance...
|
1792694971.9002533
|
1793299771.9002533
|
|
4377
|
My awesome macropad! by @pixeldreamz_s | Stardance
|
pixeldreamz_s
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @pixeldreamz_s | St Title: My awesome macropad! by @pixeldreamz_s | Stardance...
|
1792709467.8459027
|
1793314267.8459027
|
|
4378
|
VibeBoard by @Ammar | Stardance
|
Ammar
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: VibeBoard by @Ammar | Stardance
|
1792781476.6397586
|
1793386276.6397586
|
|
4379
|
Untitled by @achille | Stardance
|
achille
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Untitled by @achille | Stardance
|
1792561766.1738563
|
1793166566.1738563
|
|
4380
|
Untitled by @hridhaan | Stardance
|
hridhaan
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Untitled by @hridhaan | Stardance
|
1792706007.4808238
|
1793310807.4808238
|
|
4381
|
My awesome macropad! by @Pom | Stardance
|
Pom
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @Pom | Stardance
|
1792749050.522847
|
1793353850.522847
|
|
4382
|
aaaa by @Kubik | Stardance
|
Kubik
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: aaaa by @Kubik | Stardance
|
1792914821.6562202
|
1793778821.6562202
|
|
4383
|
My awesome macropad! by @wubshet2028 | Stardance
|
wubshet2028
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @wubshet2028 | Star Title: My awesome macropad! by @wubshet2028 | Stardance...
|
1792723744.456172
|
1793328544.456172
|
|
4384
|
My first slack bot! by @wubshet2028 | Stardance
|
wubshet2028
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My first slack bot! by @wubshet2028 | Stard Title: My first slack bot! by @wubshet2028 | Stardance...
|
1792803175.0068586
|
1793407975.0068586
|
|
4385
|
My awesome macropad! by @Jz | Stardance
|
Jz
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @Jz | Stardance
|
1793181362.8573942
|
1793786162.8573942
|
|
4386
|
Mimic bionic hand by @bolar_aradhya | Stardance
|
bolar_aradhya
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Mimic bionic hand by @bolar_aradhya | Stard Title: Mimic bionic hand by @bolar_aradhya | Stardance...
|
1792694938.5049152
|
1793299738.5049152
|
|
4387
|
My first slack bot! by @Bobby | Stardance
|
Bobby
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My first slack bot! by @Bobby | Stardance
|
1792601268.9853609
|
1793206068.9853609
|
|
4388
|
Untitled project by @kkennzzoo | Stardance
|
kkennzzoo
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Untitled project by @kkennzzoo | Stardance
|
1793202637.8636284
|
1793807437.8636284
|
|
4389
|
My awesome macropad! by @The_Redel_Guy | Stardance
|
The_Redel_Guy
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @The_Redel_Guy | St Title: My awesome macropad! by @The_Redel_Guy | Stardance...
|
1792587286.0753093
|
1793192086.0753093
|
|
4390
|
My awesome macropad! by @cxlm2023 | Stardance
|
cxlm2023
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @cxlm2023 | Stardan Title: My awesome macropad! by @cxlm2023 | Stardance...
|
1792694924.7531154
|
1793299724.7531154
|
|
4391
|
NEON-HEIST by @karnaaditya | Stardance
|
karnaaditya
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: NEON-HEIST by @karnaaditya | Stardance
|
1792587014.0205612
|
1793191814.0205612
|
|
4392
|
My awesome macropad! by @malpemrecik | Stardance
|
malpemrecik
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @malpemrecik | Star Title: My awesome macropad! by @malpemrecik | Stardance...
|
1793145068.0332258
|
1793749868.0332258
|
|
4393
|
Flounder Valley by @Rayed_Ahmed | Stardance
|
Rayed_Ahmed
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Flounder Valley by @Rayed_Ahmed | Stardance
|
1792709395.9535754
|
1793314195.9535754
|
|
4394
|
My awesome macropad! by @Mitchell | Stardance
|
Mitchell
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @Mitchell | Stardan Title: My awesome macropad! by @Mitchell | Stardance...
|
1792576463.6702638
|
1793181263.6702638
|
|
4395
|
My awesome macropad! by @t-nair | Stardance
|
t-nair
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @t-nair | Stardance
|
1792676935.9787438
|
1793281735.9787438
|
|
4396
|
Root by @mihaelatanasov22 | Stardance
|
mihaelatanasov22
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Root by @mihaelatanasov22 | Stardance
|
1793137845.4532168
|
1793742645.4532168
|
|
4397
|
Mini Decibel Tracker by @Chelsey | Stardance
|
Chelsey
|
0
|
1.22
|
0
|
[]
|
[{"post_id": 6018, "ts": "2026 [{"post_id": 6018, "ts": "2026-06-10T02:47:04Z", "hours": 1.2233, "text": "I tried fiddling and coding a small project which is this decibel tracker for analyzing potential sound pollution and averages at school"}]...
|
Title: Mini Decibel Tracker by @Chelsey | Stardanc Title: Mini Decibel Tracker by @Chelsey | Stardance
Devlogs:
I tried fiddling and coding a small project which is this decibel tracker for analyzing potential sound pollution and averages at school...
|
1793199315.4154277
|
1793804115.4154277
|
|
4398
|
Task Tracker by @Curious_Brain | Stardance
|
Curious_Brain
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Task Tracker by @Curious_Brain | Stardance
|
1793184757.7595115
|
1793789557.7595115
|
|
4399
|
Iotbubbler by @Ibo | Stardance
|
Ibo
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Iotbubbler by @Ibo | Stardance
|
1792900350.700297
|
1793764350.700297
|
|
4400
|
ACR (Astronomical Character Recognition) by @Hites ACR (Astronomical Character Recognition) by @Hitesh | Stardance...
|
Hitesh
|
1
|
24.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-06-06T00:17:24Z", "hours": 24.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "I made a image classification model from scratch using TensorFlow and Keras. The model is optimized to find nebulae’s, galaxy’s, moon’s, and planet’s.", "repo": "https://github.com/hiteshv2603-ui/HyzeACR", "demo": "https://hyzeacr.netlify.app"}]...
|
[{"post_id": 3096, "ts": "2026 [{"post_id": 3096, "ts": "2026-06-06T00:15:36Z", "hours": 8.4486, "text": "Building the model turned out to be a lot tougher than I thought. I spent so many hours, sometimes whole days, planning, experimenting, and figuring out how everything would work. My main goal was to make the model bug free and working completely fine. There were times when I wasn’t sure if my code or project would actually work. Some of my friends had made fun of me for working so hard or thought the project was stupid, but I kept going anyway. I want to show them that hard work on even “stupid” projects can turn out good. The hardest parts weren’t technical. I struggled with wanting to give up, worrying I wouldn’t reach my goal, and hearing discouraging words from people close to me. Even so, I kept going. Visiting Hugging Face for inspiration and learning more about how the code worked helped me learn more about OCR and Image Classification models. I’ve learned a lot along the way ngl. After fixing some final bugs, I feel like I’m almost finished with my model. I just need to do a bit more research to make sure I’m headed in the right direction, and of course, I’ll keep posting these devlogs to share my progress/journey!"}, {"post_id": 1940, "ts": "2026-06-04T05:55:16Z", "hours": 15.9544, "text": "I actually timed myself here💀. Ok so there I was, trying to find data/images to train my image classification model, and I ran into a lot of problems😭. The biggest problem was the lack of suitable space images and astronomical text data. I tried Kaggle first, but that failed because most datasets weren’t specific to astronomy. Next I used Hugging Face for the images, and that also failed because most of them were either JSON files or plain text instead of actual space imagery. I finally settled on NASA’s Open Data Archive to get actual space images and train the model, and I even used an image scraper extension to scrape additional images to supplement my training data. I woke up at 4:30 in the morning because of my jetlag and spent those early hours trying to find good datasets, figure out which languages to use, and figure out how to actually get the datasets into my pipeline. After looking different things, I settled on Keras and TensorFlow to create the model since they are pretty good for deep learning and image classification and integrates with the language I’m good at, Python .For the demo and web interface, I used TensorFlow.js so I could deploy it directly in the browser. To make things a little bit simpler and faster, I used Teachable Machine’s scripts to get the model’s TensorFlow.js script by training the model again there, which saved me a lot of time on the export and conversion process. But I was extremely happy with the end result and was amazed at how good my model really was . Despite all the challenges from the jetlag affected morning coding sessions to the frustrating dataset search, the final result performed surprisingly well on astronomical images and I’m excited to keep improving it for my space and AI projects."}]...
|
Title: ACR (Astronomical Character Recognition) by Title: ACR (Astronomical Character Recognition) by @Hitesh | Stardance
Devlogs:
I actually timed myself here💀. Ok so there I was, trying to find data/images to train my image classification model, and I ran into a lot of problems😭. The biggest problem was the lack of suitable space images and astronomical text data. I tried Kaggle first, but that failed because most datasets weren’t specific to astronomy. Next I used Hugging Face for the images, and that also failed because most of them were either JSON files or plain text instead of actual space imagery. I finally settled on NASA’s Open Data Archive to get actual space images and train the model, and I even used an image scraper extension to scrape additional images to supplement my training data. I woke up at 4:30 in the morning because of my jetlag and spent those early hours trying to find good datasets, figure out which languages to use, and figure out how to actually get the datasets into my pipeline. After looking different things, I settled on Keras and TensorFlow to create the model since they are pretty good for deep learning and image classification and integrates with the language I’m good at, Python .For the demo and web interface, I used TensorFlow.js so I could deploy it directly in the browser. To make things a little bit simpler and faster, I used Teachable Machine’s scripts to get the model’s TensorFlow.js script by training the model again there, which saved me a lot of time on the export and conversion process. But I was extremely happy with the end result and was amazed at how good my model really was . Despite all the challenges from the jetlag affected morning coding sessions to the frustrating dataset search, the final result performed surprisingly well on astronomical images and I’m excited to keep improving it for my space and AI projects.
Building the model turned out to be a lot tougher than I thought. I spent so many hours, sometimes whole days, planning, experimenting, and figuring out how everything would work. My main goal was to make the model bug free and working completely fine. There were times when I wasn’t sure if my code or project would actually work. Some of my friends had made fun of me for working so hard or thought the project was stupid, but I kept going anyway. I want to show them that hard work on even “stupid” projects can turn out good. The hardest parts weren’t technical. I struggled with wanting to give up, worrying I wouldn’t reach my goal, and hearing discouraging words from people close to me. Even so, I kept going. Visiting Hugging Face for inspiration and learning more about how the code worked helped me learn more about OCR and Image Classification models. I’ve learned a lot along the way ngl. After fixing some final bugs, I feel like I’m almost finished with my model. I just need to do a bit more research to make sure I’m headed in the right direction, and of course, I’ll keep posting these devlogs to share my progress/journey!
Ships:
I made a image classification model from scratch using TensorFlow and Keras. The model is optimized to find nebulae’s, galaxy’s, moon’s, and planet’s....
|
1793144847.8729608
|
1793231247.8729608
|