|
38692
|
My own site! by @vilusic_alen | Stardance
|
vilusic_alen
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My own site! by @vilusic_alen | Stardance
|
1792936385.3195264
|
1793800385.3195264
|
|
50261
|
Chess board by @vilusic_alen | Stardance
|
vilusic_alen
|
0
|
10.56
|
0
|
[]
|
[{"post_id": 53764, "ts": "202 [{"post_id": 53764, "ts": "2026-08-24T13:24:48Z", "hours": 0.6272, "text": "Devlog 3: The Design Is Finished, But Hardware Meets Reality The engineering side of the project is finally finished. The KiCad project is locked, the Gerber files have been exported, and the BOM and CPL files have been checked against the component library. I went through the board one more time and double-checked the components, footprints, resistors, capacitors, shift registers, and all 128 Hall sensors. From a design perspective, the board is ready for manufacturing. The Cost Problem This was probably the biggest reality check of the project so far. Because the PCB is larger than 20 × 20 cm, it gets pushed out of the cheaper prototype pricing tier. On top of that, the board contains 128 Hall sensors, 16 shift registers, a large number of LEDs and hundreds of small SMD components. Once PCB manufacturing, component costs and assembly are combined, the price for producing only a few prototype boards becomes far too high for a personal project. I spent several hours going through the BOM and trying to bring the cost down. I looked at cheaper sensor alternatives, changed some component selections and tried to avoid additional factory setup costs wherever possible. Unfortunately, there is only so much that can be optimized when the board itself is this large and contains this many components. What Happens Next? At the moment, I am not sure whether the project will continue in its current form. That does not mean the project is finished. The design files are complete, backed up and ready to return to if I decide to continue with it later. The biggest thing I learned from this stage was that designing a PCB that works on paper is only part of the problem. Designing something that can actually be manufactured at a reasonable price is a completely different challenge. This project gave me a much better understanding of Design for Manufacturability (DFM) and, more importantly, the real cost of turning a custom PCB design into physical hardware. Possible Next Step If I decide to bring the project back, the most realistic solution would probably be to redesign the board as several smaller modular PCBs instead of one large 200 × 200 mm board. That could make manufacturing significantly cheaper and would also make individual sections easier to replace, test and improve. For now, the design is finished and safely backed up. The next step depends on whether I can find a practical way to manufacture the hardware without making the project unnecessarily expensive."}, {"post_id": 51689, "ts": "2026-08-21T14:47:52Z", "hours": 1.7828, "text": "Devlog #2: CAD Completed and Final Stretch Quick Summary: CAD design is officially wrapped up, hardware integration is locked in, and the remaining firmware debugging is underway. Project Status Update First off, full transparency: the core hardware and 3D modeling phases are virtually finished. Rather than releasing tiny micro-updates, progress is being batched into consolidated devlogs following long development blocks. A single multi-hour workflow covered the PCB layout, CAD design adjustments, and initial firmware setup. Work Completed CAD and 3D Modeling: Sourced base models for the board and chess pieces that included built-in pockets for magnets. Adjusted board dimensions and internal clearances to ensure a flush fit with the custom PCB. Status: Complete. Firmware and Debugging: Began writing core logic and spent the majority of the day executing initial debugging passes. Hardware alignment is complete; software validation is in progress. Next Steps Finalize PCB layout and hardware selection (Done) Complete CAD adjustments and magnet housing design (Done) Finish firmware programming and logic validation Final hardware assembly and physical testing See you in Devlog #3!"}, {"post_id": 51036, "ts": "2026-08-20T14:59:59Z", "hours": 8.1506, "text": "DEVLOG #1: Concept, PCB Milestone & CAD Planning Current Status The PCB design phase is officially complete . A custom 200 × 200 mm PCB has been designed and prepared for fabrication. The next step is the CAD enclosure design . Instead of modeling the entire housing from scratch, the plan is to adapt existing 3D-printable chessboard models. The main CAD work includes: Scaling the internal dimensions to fit the PCB Aligning the board grid with the sensor positions Creating openings for the USB ports Adding appropriate mounting tolerances Designing internal light-isolation dividers Creating a bottom plate to secure the electronics Since the CAD modifications are currently underway, this first devlog focuses on the project concept and overall hardware architecture. What is the Smart Chess Board? The Smart Chess Board is an interactive physical chessboard that detects piece locations in real time using magnetic sensing and provides visual feedback through an integrated LED matrix underneath the board. The goal is to combine the experience of playing on a traditional physical chessboard with digital features such as: Move detection Valid move indicators Move suggestions Check warnings Game state tracking Visual LED feedback System Architecture The board is built around three main systems: magnetic detection, LED illumination, and microcontroller processing . 1. Hall Effect Sensors A Hall effect sensor is positioned beneath each of the 64 squares . Neodymium magnets are embedded into the base of each chess piece. When a piece is placed on a square, the corresponding sensor detects the magnetic field and allows the system to determine the current board state. 2. Addressable RGB LED Matrix Addressable RGB LEDs are positioned underneath the squares alongside the sensors. They provide visual feedback for things such as: Valid moves Selected pieces Check warnings Opponent moves Other board states and animations 3. ESP32 Microcontroller The ESP32 acts as the main processing unit. It is responsible for: Reading sensor data Tracking piece positions Processing the board state Driving LED animations Handling move logic Managing external communication 4. Custom PCB A custom 200 × 200 mm PCB integrates the main electronics into a single board. It contains the sensor matrix, LED traces, power distribution, and microcontroller headers, reducing the amount of manual wiring required. 5. 3D-Printed Enclosure The enclosure will be adapted from an existing 3D-printable chessboard design. The modified enclosure will include: A playing surface Internal light-isolation dividers between squares Space for the PCB and electronics USB access openings Mounting points for the PCB A bottom plate to secure the electronics The goal is to create a clean enclosure that keeps the electronics protected while maintaining the appearance and feel of a traditional chessboard. Next Steps The main focus for the next development stage is the CAD enclosure . Once the enclosure dimensions and mounting system are finalized, the next milestone will be assembling the PCB, sensors, LEDs, and ESP32 into the finished board."}]...
|
Title: Chess board by @vilusic_alen | Stardance
D Title: Chess board by @vilusic_alen | Stardance
Devlogs:
DEVLOG #1: Concept, PCB Milestone & CAD Planning Current Status The PCB design phase is officially complete . A custom 200 × 200 mm PCB has been designed and prepared for fabrication. The next step is the CAD enclosure design . Instead of modeling the entire housing from scratch, the plan is to adapt existing 3D-printable chessboard models. The main CAD work includes: Scaling the internal dimensions to fit the PCB Aligning the board grid with the sensor positions Creating openings for the USB ports Adding appropriate mounting tolerances Designing internal light-isolation dividers Creating a bottom plate to secure the electronics Since the CAD modifications are currently underway, this first devlog focuses on the project concept and overall hardware architecture. What is the Smart Chess Board? The Smart Chess Board is an interactive physical chessboard that detects piece locations in real time using magnetic sensing and provides visual feedback through an integrated LED matrix underneath the board. The goal is to combine the experience of playing on a traditional physical chessboard with digital features such as: Move detection Valid move indicators Move suggestions Check warnings Game state tracking Visual LED feedback System Architecture The board is built around three main systems: magnetic detection, LED illumination, and microcontroller processing . 1. Hall Effect Sensors A Hall effect sensor is positioned beneath each of the 64 squares . Neodymium magnets are embedded into the base of each chess piece. When a piece is placed on a square, the corresponding sensor detects the magnetic field and allows the system to determine the current board state. 2. Addressable RGB LED Matrix Addressable RGB LEDs are positioned underneath the squares alongside the sensors. They provide visual feedback for things such as: Valid moves Selected pieces Check warnings Opponent moves Other board states and animations 3. ESP32 Microcontroller The ESP32 acts as the main processing unit. It is responsible for: Reading sensor data Tracking piece positions Processing the board state Driving LED animations Handling move logic Managing external communication 4. Custom PCB A custom 200 × 200 mm PCB integrates the main electronics into a single board. It contains the sensor matrix, LED traces, power distribution, and microcontroller headers, reducing the amount of manual wiring required. 5. 3D-Printed Enclosure The enclosure will be adapted from an existing 3D-printable chessboard design. The modified enclosure will include: A playing surface Internal light-isolation dividers between squares Space for the PCB and electronics USB access openings Mounting points for the PCB A bottom plate to secure the electronics The goal is to create a clean enclosure that keeps the electronics protected while maintaining the appearance and feel of a traditional chessboard. Next Steps The main focus for the next development stage is the CAD enclosure . Once the enclosure dimensions and mounting system are finalized, the next milestone will be assembling the PCB, sensors, LEDs, and ESP32 into the finished board.
Devlog #2: CAD Completed and Final Stretch Quick Summary: CAD design is officially wrapped up, hardware integration is locked in, and the remaining firmware debugging is underway. Project Status Update First off, full transparency: the core hardware and 3D modeling phases are virtually finished. Rather than releasing tiny micro-updates, progress is being batched into consolidated devlogs following long development blocks. A single multi-hour workflow covered the PCB layout, CAD design adjustments, and initial firmware setup. Work Completed CAD and 3D Modeling: Sourced base models for the board and chess pieces that included built-in pockets for magnets. Adjusted board dimensions and internal clearances to ensure a flush fit with the custom PCB. Status: Complete. Firmware and Debugging: Began writing core logic and spent the majority of the day executing initial debugging passes. Hardware alignment is complete; software validation is in progress. Next Steps Finalize PCB layout and hardware selection (Done) Complete CAD adjustments and magnet housing design (Done) Finish firmware programming and logic validation Final hardware assembly and physical testing See you in Devlog #3!
Devlog 3: The Design Is Finished, But Hardware Meets Reality The engineering side of the project is finally finished. The KiCad project is locked, the Gerber files have been exported, and the BOM and CPL files have been checked against the component library. I went through the board one more time and double-checked the components, footprints, resistors, capacitors, shift registers, and all 128 Hall sensors. From a design perspective, the board is ready for manufacturing. The Cost Problem This was probably the biggest reality check of the project so far. Because the PCB is larger than 20 × 20 cm, it gets pushed out of the cheaper prototype pricing tier. On top of that, the board contains 128 Hall sensors, 16 shift registers, a large number of LEDs and hundreds of small SMD components. Once PCB manufacturing, component costs and assembly are combined, the price for producing only a few prototype boards becomes far too high for a personal project. I spent several hours going through the BOM and trying to bring the cost down. I looked at cheaper sensor alternatives, changed some component selections and tried to avoid additional factory setup costs wherever possible. Unfortunately, there is only so much that can be optimized when the board itself is this large and contains this many components. What Happens Next? At the moment, I am not sure whether the project will continue in its current form. That does not mean the project is finished. The design files are complete, backed up and ready to return to if I decide to continue with it later. The biggest thing I learned from this stage was that designing a PCB that works on paper is only part of the problem. Designing something that can actually be manufactured at a reasonable price is a completely different challenge. This project gave me a much better understanding of Design for Manufacturability (DFM) and, more importantly, the real cost of turning a custom PCB design into physical hardware. Possible Next Step If I decide to bring the project back, the most realistic solution would probably be to redesign the board as several smaller modular PCBs instead of one large 200 × 200 mm board. That could make manufacturing significantly cheaper and would also make individual sections easier to replace, test and improve. For now, the design is finished and safely backed up. The next step depends on whether I can find a practical way to manufacture the hardware without making the project unnecessarily expensive....
|
1793332364.8424935
|
1793937164.8424935
|
|
55061
|
Morse code game by @vilusic_alen | Stardance
|
vilusic_alen
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Morse code game by @vilusic_alen | Stardanc Title: Morse code game by @vilusic_alen | Stardance...
|
1793141350.6711826
|
1793746150.6711826
|
|
63761
|
Todo WinUI by @vilmer_hagelberg | Stardance
|
vilmer_hagelberg
|
1
|
10.0
|
0
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-16T15:42:38Z", "hours": 10.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "This is a todo app for windows built in C# with WinUI3. It is very easy to use, works well and has saves the todos.", "repo": "https://github.com/GamerReaper09/WinUI-Todo", "demo": "https://github.com/GamerReaper09/WinUI-Todo/releases/tag/release"}]...
|
[{"post_id": 80172, "ts": "202 [{"post_id": 80172, "ts": "2026-10-16T15:33:49Z", "hours": 1.9189, "text": "Finally done. I made the repo now i just have to do the first ship."}, {"post_id": 76792, "ts": "2026-10-04T16:08:55Z", "hours": 3.2731, "text": "Essentially working now. The add todo is now working and therefore the app is almost done"}, {"post_id": 74932, "ts": "2026-09-28T16:50:02Z", "hours": 1.91, "text": "An early prototype of the app is now working. So far there is only the task list, remove button, and a placeholder add button."}, {"post_id": 73169, "ts": "2026-09-24T15:03:41Z", "hours": 2.58, "text": "I completed microsofts tutorial on how to make a note app. So i now understand the basics and is ready to start making my own program."}, {"post_id": 70623, "ts": "2026-09-19T14:05:36Z", "hours": 0.5856, "text": "I added my first lines of code in the project 🥳🥳"}]...
|
Title: Todo WinUI by @vilmer_hagelberg | Stardance Title: Todo WinUI by @vilmer_hagelberg | Stardance
Devlogs:
I added my first lines of code in the project 🥳🥳
I completed microsofts tutorial on how to make a note app. So i now understand the basics and is ready to start making my own program.
An early prototype of the app is now working. So far there is only the task list, remove button, and a placeholder add button.
Essentially working now. The add todo is now working and therefore the app is almost done
Finally done. I made the repo now i just have to do the first ship.
Ships:
This is a todo app for windows built in C# with WinUI3. It is very easy to use, works well and has saves the todos....
|
1793353878.4727793
|
1793440278.4727793
|
|
71192
|
Python Quickstart UI by @vilmer_hagelberg | Starda Python Quickstart UI by @vilmer_hagelberg | Stardance...
|
vilmer_hagelberg
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Python Quickstart UI by @vilmer_hagelberg | Title: Python Quickstart UI by @vilmer_hagelberg | Stardance...
|
1792856823.9814684
|
1793461623.9814684
|
|
71605
|
TerraOS by @vilmer_hagelberg | Stardance
|
vilmer_hagelberg
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: TerraOS by @vilmer_hagelberg | Stardance
|
1793116026.213572
|
1793720826.213572
|
|
71809
|
Reaperbot by @vilmer_hagelberg | Stardance
|
vilmer_hagelberg
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Reaperbot by @vilmer_hagelberg | Stardance
|
1793220438.6504903
|
1793825238.6504903
|
|
42072
|
My first slack bot! by @vilkoloshka | Stardance
|
vilkoloshka
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My first slack bot! by @vilkoloshka | Stard Title: My first slack bot! by @vilkoloshka | Stardance...
|
1793163015.9882877
|
1793767815.9882877
|
|
11346
|
Zinix by @viktorpopp | Stardance
|
viktorpopp
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Zinix by @viktorpopp | Stardance
|
1793260237.6252165
|
1793865037.6252165
|
|
32540
|
Frictionless by @viktoria_gyurjyan | Stardance
|
viktoria_gyurjyan
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Frictionless by @viktoria_gyurjyan | Starda Title: Frictionless by @viktoria_gyurjyan | Stardance...
|
1793368463.5856745
|
1793973263.5856745
|
|
32069
|
3D MODELING by @viktorblund | Stardance
|
viktorblund
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: 3D MODELING by @viktorblund | Stardance
|
1793231778.0226736
|
1793836578.0226736
|
|
15111
|
My awesome macropad! by @viktor_nichev2011 | Stard My awesome macropad! by @viktor_nichev2011 | Stardance...
|
viktor_nichev2011
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @viktor_nichev2011 Title: My awesome macropad! by @viktor_nichev2011 | Stardance...
|
1793166537.983051
|
1793771337.983051
|
|
41967
|
RayGrid by @viktor1us | Stardance
|
viktor1us
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: RayGrid by @viktor1us | Stardance
|
1793159264.6698368
|
1794023264.6698368
|
|
48592
|
My awesome macropad! by @vikrantsinghchauhan96 | S My awesome macropad! by @vikrantsinghchauhan96 | Stardance...
|
vikrantsinghchauhan96
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @vikrantsinghchauha Title: My awesome macropad! by @vikrantsinghchauhan96 | Stardance...
|
1793235184.5686402
|
1793839984.5686402
|
|
14105
|
My very own WebOS by @vikranth_vr | Stardance
|
vikranth_vr
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My very own WebOS by @vikranth_vr | Stardan Title: My very own WebOS by @vikranth_vr | Stardance...
|
1793281904.636137
|
1793886704.636137
|
|
57747
|
SatisfyKey by @vikramapurva19 | Stardance
|
vikramapurva19
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: SatisfyKey by @vikramapurva19 | Stardance
|
1792720067.5503259
|
1793324867.5503259
|
|
32592
|
My own site! by @viknyedidavid1 | Stardance
|
viknyedidavid1
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My own site! by @viknyedidavid1 | Stardance
|
1793328918.2828817
|
1793933718.2828817
|
|
15718
|
CosmoCare by @vikithecookie | Stardance
|
vikithecookie
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: CosmoCare by @vikithecookie | Stardance
|
1793368442.9132187
|
1793973242.9132187
|
|
16907
|
My first slack bot! by @vikesh_bhondave | Stardanc My first slack bot! by @vikesh_bhondave | Stardance...
|
vikesh_bhondave
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My first slack bot! by @vikesh_bhondave | S Title: My first slack bot! by @vikesh_bhondave | Stardance...
|
1792803045.9332867
|
1793407845.9332867
|
|
16916
|
My very own WebOS by @vikesh_bhondave | Stardance
|
vikesh_bhondave
|
0
|
0.31
|
0
|
[]
|
[{"post_id": 7547, "ts": "2026 [{"post_id": 7547, "ts": "2026-06-12T16:38:33Z", "hours": 0.3144, "text": "Working on my Boilerplate!"}]...
|
Title: My very own WebOS by @vikesh_bhondave | Sta Title: My very own WebOS by @vikesh_bhondave | Stardance
Devlogs:
Working on my Boilerplate!...
|
1793314549.8097456
|
1793919349.8097456
|
|
48535
|
Devashtra by @vikaskushwaha893296 | Stardance
|
vikaskushwaha893296
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Devashtra by @vikaskushwaha893296 | Stardan Title: Devashtra by @vikaskushwaha893296 | Stardance...
|
1793234910.7448533
|
1793839710.7448533
|
|
6346
|
7th-Hour by @vikasharma | Stardance
|
vikasharma
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: 7th-Hour by @vikasharma | Stardance
|
1793270968.3765938
|
1793875768.3765938
|
|
27217
|
M-Logger by @vik | Stardance
|
vik
|
1
|
6.0
|
23
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-07-04T19:21:35Z", "hours": 6.0, "multiplier": 3.8, "payout": 23, "blessing": "neutral", "text": "I just finished making a Streamlit-based workout tracking app. My initial goal was to include more in-depth metrics than the average tracker. I did this, first brainstorming 20-30 things that lifters would like to track, and including them all as inputs; for example, RIR, RPE, tempo, drop sets, assisted reps, etc. This was my first time ever touching Python or Streamlit! I ran into so many walls and sunk so much time debugging due to beginner mistakes like writing bad syntax, messing up indentations. I had no idea how to track variables after page refreshes, or how to make pages interact with each other. I didn’t understand the point of list operations: appending and checking length I didn’t know about creating unique keys to store variables with. (Honestly, I still largely don’t…) Still, this is much farther than I thought I could’ve gone for a first project, I’m grateful to have grasped the basics of Python: variables, inputs, loops. In hindsight, the whole experience was fun, especially writing out a bank of wise quotes to be randomly displayed on startup. “Pain is an illusion, but PRs are real.”; “I lift, therefore I am.” etc. Thanks for reading, please check out my demo!", "repo": "https://github.com/vikh6/gym-logger", "demo": "https://mlogger.streamlit.app/"}]...
|
[{"post_id": 22314, "ts": "202 [{"post_id": 22314, "ts": "2026-07-04T18:33:28Z", "hours": 1.7122, "text": "got the app pretty much done!! my first change was adding an additional reps feature where people could add in drop sets, myoreps, rest-pause reps, etc. this goes into more detail than most simple weight/reps loggers. I left that section intentionally more open-ended because there’s such a wide range of intensifiers people use. . I ran into a lotttt of problems trying to optionally allow certain features to be disabled. it should’ve been a simple feature - a checkbox that if true hid certain form fields. but my checkboxes kept resetting their state when the page refreshed :( using a combination session state and keys, i got the feature to work at last. it didn’t help that I got stuck due to some rookie coding mistakes: I initially put all the form inputs in an if loop, but I had to change it when I realized the variables were only defined inside that loop. . even deploying the streamlit app was an interesting new experience for me. I learned about Git and Github, and how to organise the files in a repo. this helped me learn how projects go from code files to real applications with a domain and frontend."}, {"post_id": 20338, "ts": "2026-07-01T22:18:11Z", "hours": 2.1014, "text": "I added forms for users to input exercises and sets into my logger, the key function. I included all the different set metrics that I brainstormed yesterday. My original idea to differentiate my app from all others was including all the bells and whistles, a lot of workout trackers don’t let you input minor details like rest times, ROM, etc. Right now it’s a sprawling mess; I’m planning a settings page where users can choose which to include. . I also learned a lot about debugging. As a complete beginner to Python, it was a massive pain working with all the nested forms. I got so many errors and tweaked so much stuff only to realize I indented one thing wrong and that was causing all of it :( . Next up, all the different set types, like dropsets and supersets. I’m not fully sure yet how I’m going to include that. Also, I need to let people add in additional reps, ie partial reps, assisted reps, etc. and include the types of stuff loggers would care about - how many partials, how much ROM?"}, {"post_id": 18288, "ts": "2026-06-29T12:01:45Z", "hours": 1.56, "text": "I started making the form screen for inputting a workout. First I wrote out a huge list of all the workout details, exercise details, and set metrics I wanted to include. It took a while to research and copy down all the different types of nonsense lifters do and record… I don’t think my list is comprehensive yet. Also, I think I’m overly sad because all that work counted as 0min of time logged :/ . Seeing this huge dump, I think I should allow users to check off which selections to include while logging workouts, for simplicity and because everyone lifts differently. . I created the add workout form today and learned about different input boxes that generated different variable types. One cool feature was the inbuilt slider, which I used to allow users to input their overall energy level, but I anticipate could also be used to input RPE, etc. . I also added a text section that generates a random cheesy gym-related quote whenever the user adds a new workout, and I wrote out 25 of them."}, {"post_id": 17240, "ts": "2026-06-27T23:11:48Z", "hours": 0.7489, "text": "Devlog 0: 27.06.25 . Started my project today, I want to make a gym logger because Google Sheets is really uninspiring to work with. I thought of differentiating myself from other loggers by including options for very specific inputs. Most loggers I’ve seen only let you input weight and reps, and don’t let you log RIR, RPE, rest times, etc. and/or don’t support stuff like dropsets, supersets, cluster sets, etc. . I’m a complete beginner to coding so I spent some time watching a Python tutorial on YT and learned about print statements and variable types. . The UI looks beautiful doesn’t it ⌄ (I only set up the environment today)"}]...
|
Title: M-Logger by @vik | Stardance
Devlogs:
Devl Title: M-Logger by @vik | Stardance
Devlogs:
Devlog 0: 27.06.25 . Started my project today, I want to make a gym logger because Google Sheets is really uninspiring to work with. I thought of differentiating myself from other loggers by including options for very specific inputs. Most loggers I’ve seen only let you input weight and reps, and don’t let you log RIR, RPE, rest times, etc. and/or don’t support stuff like dropsets, supersets, cluster sets, etc. . I’m a complete beginner to coding so I spent some time watching a Python tutorial on YT and learned about print statements and variable types. . The UI looks beautiful doesn’t it ⌄ (I only set up the environment today)
I started making the form screen for inputting a workout. First I wrote out a huge list of all the workout details, exercise details, and set metrics I wanted to include. It took a while to research and copy down all the different types of nonsense lifters do and record… I don’t think my list is comprehensive yet. Also, I think I’m overly sad because all that work counted as 0min of time logged :/ . Seeing this huge dump, I think I should allow users to check off which selections to include while logging workouts, for simplicity and because everyone lifts differently. . I created the add workout form today and learned about different input boxes that generated different variable types. One cool feature was the inbuilt slider, which I used to allow users to input their overall energy level, but I anticipate could also be used to input RPE, etc. . I also added a text section that generates a random cheesy gym-related quote whenever the user adds a new workout, and I wrote out 25 of them.
I added forms for users to input exercises and sets into my logger, the key function. I included all the different set metrics that I brainstormed yesterday. My original idea to differentiate my app from all others was including all the bells and whistles, a lot of workout trackers don’t let you input minor details like rest times, ROM, etc. Right now it’s a sprawling mess; I’m planning a settings page where users can choose which to include. . I also learned a lot about debugging. As a complete beginner to Python, it was a massive pain working with all the nested forms. I got so many errors and tweaked so much stuff only to realize I indented one thing wrong and that was causing all of it :( . Next up, all the different set types, like dropsets and supersets. I’m not fully sure yet how I’m going to include that. Also, I need to let people add in additional reps, ie partial reps, assisted reps, etc. and include the types of stuff loggers would care about - how many partials, how much ROM?
got the app pretty much done!! my first change was adding an additional reps feature where people could add in drop sets, myoreps, rest-pause reps, etc. this goes into more detail than most simple weight/reps loggers. I left that section intentionally more open-ended because there’s such a wide range of intensifiers people use. . I ran into a lotttt of problems trying to optionally allow certain features to be disabled. it should’ve been a simple feature - a checkbox that if true hid certain form fields. but my checkboxes kept resetting their state when the page refreshed :( using a combination session state and keys, i got the feature to work at last. it didn’t help that I got stuck due to some rookie coding mistakes: I initially put all the form inputs in an if loop, but I had to change it when I realized the variables were only defined inside that loop. . even deploying the streamlit app was an interesting new experience for me. I learned about Git and Github, and how to organise the files in a repo. this helped me learn how projects go from code files to real applications with a domain and frontend.
Ships:
I just finished making a Streamlit-based workout tracking app. My initial goal was to include more in-depth metrics than the average tracker. I did this, first brainstorming 20-30 things that lifters would like to track, and including them all as inputs; for example, RIR, RPE, tempo, drop sets, assisted reps, etc. This was my first time ever touching Python or Streamlit! I ran into so many walls and sunk so much time debugging due to beginner mistakes like writing bad syntax, messing up indentations. I had no idea how to track variables after page refreshes, or how to make pages interact with each other. I didn’t understand the point of list operations: appending and checking length I didn’t know about creating unique keys to store variables with. (Honestly, I still largely don’t…) Still, this is much farther than I thought I could’ve gone for a first project, I’m grateful to have grasped the basics of Python: variables, inputs, loops. In hindsight, the whole experience was fun, especially writing out a bank of wise quotes to be randomly displayed on startup. “Pain is an illusion, but PRs are real.”; “I lift, therefore I am.” etc. Thanks for reading, please check out my demo!...
|
1793311015.4494298
|
1793397415.4494298
|
|
29295
|
King of the Hill Chess Set by @vik | Stardance
|
vik
|
0
|
1.01
|
0
|
[]
|
[{"post_id": 24915, "ts": "202 [{"post_id": 24915, "ts": "2026-07-08T19:42:49Z", "hours": 0.7333, "text": "Devlog #2 - Making a Cuboid I started working on designing. After choosing the dimensions of the chessboard, I moved onto the pieces. I incorporated each piece’s traditional symbol, like the queen’s crown and bishop’s mitre, with a King-of-the-Hill-inspired theme. For example, the king is modelled after a flagpole, because people put flags on hills. The knight design has horns like a mountain goat. The rook… is still a castle. Boring, I know, sorry! (see the actual sketches below) . Next thing I did was some basic research about CAD. I decided to work in Onshape as I heard it was beginner friendly, and I made my first design: a 5x5x2.5 cuboid - one square on the chessboard. My plan is to print out 64 of these in two different colors, then glue them together. I also designed an outside frame for the board, and split it into four pieces for printing. (see the screenshots below) . Hopefully soon, I’ll head to my local library and see if I can print out the board."}, {"post_id": 22856, "ts": "2026-07-05T13:57:49Z", "hours": 0.2753, "text": "Devlog #1 - Conception Today I thought of my project idea. As an avid chess player, King of the Hill has always been one of my favorite variants. In KotH, you can win the game by bringing your king to one of the four central squares. I thought of designing a chessboard where the central squares are physically elevated, making the board itself like a hill, to spatially represent the variant’s objective. . I did some research on typical chessboard specifications, because I want it to be compatible with regular chess pieces too. I settled on a 5cm square width, which gives ~40cm for the whole board’s width. This is on the lower end of tournament regulation size. . For the squares’ height, I went with 2.5cm, which is definitely on the thicker side for a regular chessboard, but I thought it fitting considering the hill theme and it being exactly half the width. The lower level of elevation will be 5cm high, the upper level 7.5cm high. . To outline the project’s scope: I want to 3D model a KotH chessboard and also thematic pieces (maybe the king is a climber of some sort?). I’d like the central squares to be expandable/retractable to support regular chess-play alongside KotH. At the end, I want to 3D print and maybe decorate the chess set I design. See my crude sketching below ⌄ and thank you all for reading!"}]...
|
Title: King of the Hill Chess Set by @vik | Starda Title: King of the Hill Chess Set by @vik | Stardance
Devlogs:
Devlog #1 - Conception Today I thought of my project idea. As an avid chess player, King of the Hill has always been one of my favorite variants. In KotH, you can win the game by bringing your king to one of the four central squares. I thought of designing a chessboard where the central squares are physically elevated, making the board itself like a hill, to spatially represent the variant’s objective. . I did some research on typical chessboard specifications, because I want it to be compatible with regular chess pieces too. I settled on a 5cm square width, which gives ~40cm for the whole board’s width. This is on the lower end of tournament regulation size. . For the squares’ height, I went with 2.5cm, which is definitely on the thicker side for a regular chessboard, but I thought it fitting considering the hill theme and it being exactly half the width. The lower level of elevation will be 5cm high, the upper level 7.5cm high. . To outline the project’s scope: I want to 3D model a KotH chessboard and also thematic pieces (maybe the king is a climber of some sort?). I’d like the central squares to be expandable/retractable to support regular chess-play alongside KotH. At the end, I want to 3D print and maybe decorate the chess set I design. See my crude sketching below ⌄ and thank you all for reading!
Devlog #2 - Making a Cuboid I started working on designing. After choosing the dimensions of the chessboard, I moved onto the pieces. I incorporated each piece’s traditional symbol, like the queen’s crown and bishop’s mitre, with a King-of-the-Hill-inspired theme. For example, the king is modelled after a flagpole, because people put flags on hills. The knight design has horns like a mountain goat. The rook… is still a castle. Boring, I know, sorry! (see the actual sketches below) . Next thing I did was some basic research about CAD. I decided to work in Onshape as I heard it was beginner friendly, and I made my first design: a 5x5x2.5 cuboid - one square on the chessboard. My plan is to print out 64 of these in two different colors, then glue them together. I also designed an outside frame for the board, and split it into four pieces for printing. (see the screenshots below) . Hopefully soon, I’ll head to my local library and see if I can print out the board....
|
1793238697.045599
|
1793843497.045599
|
|
34368
|
vik's notebook by @vik | Stardance
|
vik
|
1
|
3.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-07-20T01:02:37Z", "hours": 3.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "hey, i made a personal site, as i learned html and css for the first time. i spend a lot of time writing in physical notebooks, so i wanted my personal site to be something of a digital notebook for me. i went with that theme when i styled the site using css. certain simple-seeming features were weirdly challenging, like styling the nav bar and placing images right beside the text, but i learned online and got the hang of it. overall, i’m happy with how it turned out. this site was a fun intro to html and css, and i can’t wait to keep updating it as i keep doing more stuff.", "repo": "https://github.com/vikh6/my-website", "demo": "https://viks-notebook.netlify.app/"}]...
|
[{"post_id": 31525, "ts": "202 [{"post_id": 31525, "ts": "2026-07-20T00:25:37Z", "hours": 2.5453, "text": "yo! i finished making my personal site. i started out by learning the basics of html, like the metadata, head and body tags, and the div tag. i made a basic html layout with titles, headings, and a paragraph. then i went into css and had fun adding a background image, custom font, stylized nav bar, etc. finally i added the site’s content, and i learned about flexboxes to put images beside my exposition blurbs."}]...
|
Title: vik's notebook by @vik | Stardance
Dev Title: vik's notebook by @vik | Stardance
Devlogs:
yo! i finished making my personal site. i started out by learning the basics of html, like the metadata, head and body tags, and the div tag. i made a basic html layout with titles, headings, and a paragraph. then i went into css and had fun adding a background image, custom font, stylized nav bar, etc. finally i added the site’s content, and i learned about flexboxes to put images beside my exposition blurbs.
Ships:
hey, i made a personal site, as i learned html and css for the first time. i spend a lot of time writing in physical notebooks, so i wanted my personal site to be something of a digital notebook for me. i went with that theme when i styled the site using css. certain simple-seeming features were weirdly challenging, like styling the nav bar and placing images right beside the text, but i learned online and got the hang of it. overall, i’m happy with how it turned out. this site was a fun intro to html and css, and i can’t wait to keep updating it as i keep doing more stuff....
|
1793246001.8844788
|
1793332401.8844788
|
|
44708
|
Arduino Self Balancing Robot by @vik | Stardance
|
vik
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Arduino Self Balancing Robot by @vik | Star Title: Arduino Self Balancing Robot by @vik | Stardance...
|
1793292620.6480715
|
1793897420.6480715
|
|
45199
|
SpeedChessPad by @vik | Stardance
|
vik
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: SpeedChessPad by @vik | Stardance
|
1793318119.7160504
|
1793922919.7160504
|
|
46150
|
Motion Sensor by @vik | Stardance
|
vik
|
1
|
2.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-13T01:43:31Z", "hours": 2.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Made an Arduino motion sensor connected to an LCD display. Every time it senses motion, the LCD will light up, “MOTION DETECTED”. It was overall a super instructive experience, I learned how to cut and strip wires well, make a stable-ish connection with janky wires, read some confusing electrical diagrams, and write (technically modify) Arduino code (because online sample code was awful). I figured out how to troubleshoot problems on my own (eg wiring V0 to ground with a resistor because the display was too bright) and made sure to include the issue and fix in my documentation. Note that in the video, the sensor was triggered a bunch of times by my moving the camera. It works decent, I promise (╥﹏╥)", "repo": "https://github.com/vikh6/motion-sensor", "demo": ""}]...
|
[{"post_id": 46078, "ts": "202 [{"post_id": 46078, "ts": "2026-08-13T01:07:20Z", "hours": 1.6508, "text": "Small afternoon project that I’ve been putting off for a long time: wiring a PIR motion sensor and LCD to my Arduino Uno, mostly just to finally try both the components at the same time. The PIR sensor was pretty straightforward, three wires, but really janky because I don’t have a sensor shield or spare jumper wires (!). If the Neutral (white) wire isn’t connected well (it wasn’t) the digital pin will seesaw back and forth between Low and High with no rhyme or reason. The LCD was a complete pain, again because I don’t have anything but some cheap wires and had to turn my breadboard into a rat’s nest. Also put one wire one spot to the right of where it should’ve been. “This little maneuver’s gonna cost us 51 years” type situation. Anyway after that, wiring them both together was surprisingly painless, and with the help of some copy-pasted code I got it up and running quickly. Yippee, I have a little box that says MOTION DETECTED every time I walk by."}]...
|
Title: Motion Sensor by @vik | Stardance
Devlogs: Title: Motion Sensor by @vik | Stardance
Devlogs:
Small afternoon project that I’ve been putting off for a long time: wiring a PIR motion sensor and LCD to my Arduino Uno, mostly just to finally try both the components at the same time. The PIR sensor was pretty straightforward, three wires, but really janky because I don’t have a sensor shield or spare jumper wires (!). If the Neutral (white) wire isn’t connected well (it wasn’t) the digital pin will seesaw back and forth between Low and High with no rhyme or reason. The LCD was a complete pain, again because I don’t have anything but some cheap wires and had to turn my breadboard into a rat’s nest. Also put one wire one spot to the right of where it should’ve been. “This little maneuver’s gonna cost us 51 years” type situation. Anyway after that, wiring them both together was surprisingly painless, and with the help of some copy-pasted code I got it up and running quickly. Yippee, I have a little box that says MOTION DETECTED every time I walk by.
Ships:
Made an Arduino motion sensor connected to an LCD display. Every time it senses motion, the LCD will light up, “MOTION DETECTED”. It was overall a super instructive experience, I learned how to cut and strip wires well, make a stable-ish connection with janky wires, read some confusing electrical diagrams, and write (technically modify) Arduino code (because online sample code was awful). I figured out how to troubleshoot problems on my own (eg wiring V0 to ground with a resistor because the display was too bright) and made sure to include the issue and fix in my documentation. Note that in the video, the sensor was triggered a bunch of times by my moving the camera. It works decent, I promise (╥﹏╥)...
|
1793274461.1755936
|
1793360861.1755936
|
|
48663
|
DIY Simple Speaker by @vik | Stardance
|
vik
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: DIY Simple Speaker by @vik | Stardance
|
1793238823.075902
|
1793843623.075902
|
|
55208
|
Portfolio Site w/ Desmos by @vik | Stardance
|
vik
|
0
|
3.33
|
0
|
[]
|
[{"post_id": 58580, "ts": "202 [{"post_id": 58580, "ts": "2026-08-31T01:34:24Z", "hours": 3.3297, "text": "making a personal portfolio site using desmos art for fun. i spent much time working on the desmos part. i had envisioned a simple beach scene, with the classic sun in the corner, simple waves, one lonely cloud. the waves were pretty easy to make as sine waves. the cloud was difficult to figure out at first but i got there by putting some circles together. with some effort i both made the objects move and the colors brighten with time. personally i feel the end result looks pretty cool, which is the end goal for a personal website, right? in terms of actual web design, not much there lol. just some buttons i made and very weak mobile optimization. i also got the secret page done, which you can enter by clicking the little piece of paper in the corner. there i have a silly minigame that’s overly difficult and a secret cheat code to go to the real secret link. (nobodys ever going to actually access either lol) try @ vikh.pages.dev (only works on desktop. barely works on desktop)"}]...
|
Title: Portfolio Site w/ Desmos by @vik | Stardanc Title: Portfolio Site w/ Desmos by @vik | Stardance
Devlogs:
making a personal portfolio site using desmos art for fun. i spent much time working on the desmos part. i had envisioned a simple beach scene, with the classic sun in the corner, simple waves, one lonely cloud. the waves were pretty easy to make as sine waves. the cloud was difficult to figure out at first but i got there by putting some circles together. with some effort i both made the objects move and the colors brighten with time. personally i feel the end result looks pretty cool, which is the end goal for a personal website, right? in terms of actual web design, not much there lol. just some buttons i made and very weak mobile optimization. i also got the secret page done, which you can enter by clicking the little piece of paper in the corner. there i have a silly minigame that’s overly difficult and a secret cheat code to go to the real secret link. (nobodys ever going to actually access either lol) try @ vikh.pages.dev (only works on desktop. barely works on desktop)...
|
1793152205.8918495
|
1793757005.8918495
|
|
11704
|
annotateHer by @vijetagarg001 | Stardance
|
vijetagarg001
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: annotateHer by @vijetagarg001 | Stardance
|
1792709713.4518456
|
1793314513.4518456
|
|
57465
|
The Plain by @vijaysriramb | Stardance
|
vijaysriramb
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: The Plain by @vijaysriramb | Stardance
|
1792709308.611413
|
1793314108.611413
|
|
32958
|
A gaming wheel by @vijaysandeep2345 | Stardance
|
vijaysandeep2345
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: A gaming wheel by @vijaysandeep2345 | Stard Title: A gaming wheel by @vijaysandeep2345 | Stardance...
|
1792914546.5715997
|
1793778546.5715997
|
|
71578
|
An Education App by @vijaysandeep2345 | Stardance
|
vijaysandeep2345
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: An Education App by @vijaysandeep2345 | Sta Title: An Education App by @vijaysandeep2345 | Stardance...
|
1793098026.769761
|
1793702826.769761
|
|
40059
|
Glyphix by @vijaychandra | Stardance
|
vijaychandra
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Glyphix by @vijaychandra | Stardance
|
1792731224.5791435
|
1793336024.5791435
|
|
32925
|
Untitled project by @vijayaadiththan | Stardance
|
vijayaadiththan
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Untitled project by @vijayaadiththan | Star Title: Untitled project by @vijayaadiththan | Stardance...
|
1793314324.557515
|
1793919124.557515
|
|
4741
|
speedMath Training by @viivi | Stardance
|
viivi
|
1
|
17.0
|
128
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-02T14:50:02Z", "hours": 17.0, "multiplier": 7.43, "payout": 128, "blessing": "neutral", "text": "speedMath Training is a website for training mental math. It’s super simple to use and you can adjust how hard questions do you want. I built this site using React and typescript. I’m aware that similar sites exists already, but none of them was exactly what I wanted so I developed my own. Before this project I had done courses that taught me developing websites with React and those courses included coding simple projects. But speedMath Training is my first own frontend project with React. The site is quite simple, but it wasn’t super easy for me to build it. I had never used Zustand state management solution, but I learned to use it to make state management easier. Other new thing I learned was publishing a site with github pages. It was kind of complicated, because i have separated folders for frontend (this project) and back end (almost empty). But now I get a new site builded and deployed every time i push to the repository. Project README includes more details if someone is interested.", "repo": "https://github.com/ViLP357/speedMathTraining", "demo": "https://vilp357.github.io/speedMathTraining"}]...
|
[{"post_id": 39499, "ts": "202 [{"post_id": 39499, "ts": "2026-08-02T14:30:01Z", "hours": 1.0094, "text": "#11 devlog The final devlog, I guess. I fixed responsive issues and finished readme and now I’m about to ship this project. (Sorry for short devlog, I just wanted to this 1 hour to be counted.)"}, {"post_id": 35369, "ts": "2026-07-26T18:31:08Z", "hours": 1.7008, "text": "#10 devlog It’s (almost) a ready project! I fighted for over an hour to publish it in github pages. But it was worth it because it’s now liveee https://vilp357.github.io/speedMathTraining (pls test). Before shipping I still need to fix some responsive issues and finish readme, but we’re almost there."}, {"post_id": 13709, "ts": "2026-06-22T14:07:19Z", "hours": 3.0169, "text": "#9 devlog, days 10-12 (maybe?) It’s been a while since last devlog, mostly because I haven’t had time to work with this, but also because hasn’t been any big updates. But now it’s time for you… to meet Calc, the mascot of the speedMath Training. I still need to add Calc to the site. I’m also planning to make a buddy for them and together they will cheer you on."}, {"post_id": 8841, "ts": "2026-06-14T18:20:07Z", "hours": 1.3214, "text": "#8 devlog, day 9 The UI is starting to look good and is much better than few days ago. Today I spent most of my time working on the main screen and a significant amount of it was used to do styles for the checkboxes. I don’t know yet much time I want to use for this project, because it has already all the core features I have thought. I have been planning other new projects and I need time for those and I don’t have as much motivation as before for this project. Anyways, things I will do before shipping: -Make it more mobile friendly -Finish styles for components -Fix component placing"}, {"post_id": 7454, "ts": "2026-06-12T12:52:05Z", "hours": 1.5856, "text": "#7 devlog, day 8 Today I finally managed to create a color palette that works with both light and dark mode. This is only beginning of the UI upgrade so more coming later. the most critical things to do next: -move the timer (why is it even there???) -scale content"}, {"post_id": 6317, "ts": "2026-06-10T17:07:57Z", "hours": 1.3153, "text": "#6 devlog day 7 Today I continued working by starting to design UI. The image shows color palettes I have thought. The upper is for light mode and lower is for dark mode. I still have to figure out contrast things. I thought I’d use the green for buttons with either white or black text, but I barely could see the white text so something has to be done? Maybe other color or shadows for text."}, {"post_id": 6224, "ts": "2026-06-10T13:46:13Z", "hours": 1.9433, "text": "#5 devlog, days 5-7 New updates: choose number of questions number generating fixed Daily challenge page How I fixed number generating How I tried before Math.floor(Math.random()*(Math.pow(10,digits[0]))*Math.pow(10, digits[1]-digits[0])) and Math.floor((Math.random() * 10)*(Math.pow(10, digits[0]-1))*Math.pow(10, Math.ceil(Math.random() * digits[1]-digits[0]))) Where digits[0] is minimum number of digits and digits[1] is maximum number of digits How it works now: A function randomNumber gets number of decimals as paramater and the function is called randomNumber(Math.round(Math.random() * (digits[1]-digits[0])) + digits[0]) Problems this fixes: Generating numbers with less digits that minimum generating different number of digits unequally (more digits was much more common) Next thing to do: UI upgrade"}, {"post_id": 2711, "ts": "2026-06-05T13:02:02Z", "hours": 1.4031, "text": "#4 devlog, day 4 Today’s main progress happened with giving players more options to customize questions. Now it’s possible to choose how many digits they want their questions to have. Next thing to do is add question number chooser. There is only one little (big) problem with digits adjuster logic: numbers with more digits tend to be much more common because of the number generating logic. I hope I can find the solution to fix that soon. As you can see from the picture, I added some color to the website, but just to be able to see different component better. Hopefully the final design will be much more better."}, {"post_id": 2275, "ts": "2026-06-04T17:50:25Z", "hours": 1.7203, "text": "#3 devlog, day 3 Today I finally made the timer and now this project could be actually called a “game”. It wasn’t easy to code the timer and make it work as it’s supposed. For some reason updating the timer updated the questions (which happened every second), but it was easy to fix when I figured out why it happened. (Why: the state timer component uses belonged to its parent component, where the questions are created. But when I updated time in timer component, it caused parent component to rerender again too. The way to fix that was to move question creating inside its own state and that way quesions are created only once.) When the timer finally worked, I quickly added simple navigation structure using react router library. Adding that structure required some refactoring, but I will thank myself later for doing it so early. I was also a bit surprised but happy because nothing broke when I moved some components from one to another."}, {"post_id": 1432, "ts": "2026-06-03T13:50:21Z", "hours": 0.9961, "text": "#2 devlog, day2 Now I have worked on this project for 2hr during Stardance. The new feature works now: it is possible to choose which operators you want to be used (and it actually works!). I also realized that division is more tricky to implement, so that’s why I just deleted it. I’m coding this in typescript, because I wanted to challenge myself, but it takes sometimes so long to figure right types even for simple objects. At least I learned a lot of new things, hehe. Tomorrow -Timer"}, {"post_id": 1400, "ts": "2026-06-03T12:34:36Z", "hours": 1.1967, "text": "speedMath training -The first devlog- Starting this project This project is a website where you can practice your mental math skills. The image shows how the site looked before Stardance. Before Stardance, I had only created this project(done set up, configured git) and coded < 5hr. Then I decided to continue working on this later. I feel like Stardance is a great opportunity for me to continue working on this. I’m aware that similar projects already exist, but I feel like none of them are exactly what I want and need. For example, they have bad UI, require users to log in, or are way too complicated. So this is going to be (hopefully) different. Next things I will do: -add timer -add a difficulty adjuster Other things I will/might do later: -improve the UI -add a leaderboard -add cute characters that cheer for you"}]...
|
Title: speedMath Training by @viivi | Stardance
D Title: speedMath Training by @viivi | Stardance
Devlogs:
speedMath training -The first devlog- Starting this project This project is a website where you can practice your mental math skills. The image shows how the site looked before Stardance. Before Stardance, I had only created this project(done set up, configured git) and coded < 5hr. Then I decided to continue working on this later. I feel like Stardance is a great opportunity for me to continue working on this. I’m aware that similar projects already exist, but I feel like none of them are exactly what I want and need. For example, they have bad UI, require users to log in, or are way too complicated. So this is going to be (hopefully) different. Next things I will do: -add timer -add a difficulty adjuster Other things I will/might do later: -improve the UI -add a leaderboard -add cute characters that cheer for you
#2 devlog, day2 Now I have worked on this project for 2hr during Stardance. The new feature works now: it is possible to choose which operators you want to be used (and it actually works!). I also realized that division is more tricky to implement, so that’s why I just deleted it. I’m coding this in typescript, because I wanted to challenge myself, but it takes sometimes so long to figure right types even for simple objects. At least I learned a lot of new things, hehe. Tomorrow -Timer
#3 devlog, day 3 Today I finally made the timer and now this project could be actually called a “game”. It wasn’t easy to code the timer and make it work as it’s supposed. For some reason updating the timer updated the questions (which happened every second), but it was easy to fix when I figured out why it happened. (Why: the state timer component uses belonged to its parent component, where the questions are created. But when I updated time in timer component, it caused parent component to rerender again too. The way to fix that was to move question creating inside its own state and that way quesions are created only once.) When the timer finally worked, I quickly added simple navigation structure using react router library. Adding that structure required some refactoring, but I will thank myself later for doing it so early. I was also a bit surprised but happy because nothing broke when I moved some components from one to another.
#4 devlog, day 4 Today’s main progress happened with giving players more options to customize questions. Now it’s possible to choose how many digits they want their questions to have. Next thing to do is add question number chooser. There is only one little (big) problem with digits adjuster logic: numbers with more digits tend to be much more common because of the number generating logic. I hope I can find the solution to fix that soon. As you can see from the picture, I added some color to the website, but just to be able to see different component better. Hopefully the final design will be much more better.
#5 devlog, days 5-7 New updates: choose number of questions number generating fixed Daily challenge page How I fixed number generating How I tried before Math.floor(Math.random()*(Math.pow(10,digits[0]))*Math.pow(10, digits[1]-digits[0])) and Math.floor((Math.random() * 10)*(Math.pow(10, digits[0]-1))*Math.pow(10, Math.ceil(Math.random() * digits[1]-digits[0]))) Where digits[0] is minimum number of digits and digits[1] is maximum number of digits How it works now: A function randomNumber gets number of decimals as paramater and the function is called randomNumber(Math.round(Math.random() * (digits[1]-digits[0])) + digits[0]) Problems this fixes: Generating numbers with less digits that minimum generating different number of digits unequally (more digits was much more common) Next thing to do: UI upgrade
#6 devlog day 7 Today I continued working by starting to design UI. The image shows color palettes I have thought. The upper is for light mode and lower is for dark mode. I still have to figure out contrast things. I thought I’d use the green for buttons with either white or black text, but I barely could see the white text so something has to be done? Maybe other color or shadows for text.
#7 devlog, day 8 Today I finally managed to create a color palette that works with both light and dark mode. This is only beginning of the UI upgrade so more coming later. the most critical things to do next: -move the timer (why is it even there???) -scale content
#8 devlog, day 9 The UI is starting to look good and is much better than few days ago. Today I spent most of my time working on the main screen and a significant amount of it was used to do styles for the checkboxes. I don’t know yet much time I want to use for this project, because it has already all the core features I have thought. I have been planning other new projects and I need time for those and I don’t have as much motivation as before for this project. Anyways, things I will do before shipping: -Make it more mobile friendly -Finish styles for components -Fix component placing
#9 devlog, days 10-12 (maybe?) It’s been a while since last devlog, mostly because I haven’t had time to work with this, but also because hasn’t been any big updates. But now it’s time for you… to meet Calc, the mascot of the speedMath Training. I still need to add Calc to the site. I’m also planning to make a buddy for them and together they will cheer you on.
#10 devlog It’s (almost) a ready project! I fighted for over an hour to publish it in github pages. But it was worth it because it’s now liveee https://vilp357.github.io/speedMathTraining (pls test). Before shipping I still need to fix some responsive issues and finish readme, but we’re almost there.
#11 devlog The final devlog, I guess. I fixed responsive issues and finished readme and now I’m about to ship this project. (Sorry for short devlog, I just wanted to this 1 hour to be counted.)
Ships:
speedMath Training is a website for training mental math. It’s super simple to use and you can adjust how hard questions do you want. I built this site using React and typescript. I’m aware that similar sites exists already, but none of them was exactly what I wanted so I developed my own. Before this project I had done courses that taught me developing websites with React and those courses included coding simple projects. But speedMath Training is my first own frontend project with React. The site is quite simple, but it wasn’t super easy for me to build it. I had never used Zustand state management solution, but I learned to use it to make state management easier. Other new thing I learned was publishing a site with github pages. It was kind of complicated, because i have separated folders for frontend (this project) and back end (almost empty). But now I get a new site builded and deployed every time i push to the repository. Project README includes more details if someone is interested....
|
1793231296.5865922
|
1793317696.5865922
|
|
4906
|
spot-electricity-display by @viivi | Stardance
|
viivi
|
1
|
5.0
|
0
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-09-19T11:25:22Z", "hours": 5.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "spot-electricity-display It’s a small ESP-8266 project for displaying the current spot electricity price. I used Arduino IDE for coding the code to fetch and update the data displayed on the screen. I also 3D modelled a case for it with Tinkercad but I haven’t tried to actually print or build it because I don’t have a 3D printer or materials for it. The first photo is an edited demonstration photo how it could look like (perspectives failed). The second photo shows what I actually have. I made this because it could make life easier. Instead of opening an app it would be much easier to check this to see the price. It wasn’t easy to make this because I felt like everything was against me. Libraries weren’t the easiest to use, the screen tweaked all the time and there isn’t many guides for this specific board because it’s quite rare.", "repo": "https://github.com/ViLP357/spot-electricity-display", "demo": ""}]...
|
[{"post_id": 70552, "ts": "202 [{"post_id": 70552, "ts": "2026-09-19T11:11:43Z", "hours": 0.4169, "text": "#4 devlog I guessed it rght, on the next day it worked again. One possible reason it didn’t work then was that the text wasn’t set to white, though it should be white as default. I finished readme and filmed a short demo video."}, {"post_id": 55666, "ts": "2026-08-27T17:01:57Z", "hours": 1.4514, "text": "#3 devlog Today I… tried to add timing for API requests, and I think it works but now my oled screen won’t display anything. There’s 50/50 chance it works tomorrow with exact same code :(. Finished 3D modelling by making a back plate for the case. Wrote something to the README"}, {"post_id": 33636, "ts": "2026-07-23T18:27:06Z", "hours": 2.0792, "text": "#2 devlog Coding Lot of time, no progress. I spent quite a long time trying to make buttons on my board work with my code. I couldn’t make them work :) . Instead of buttons I might make text change with specific a frequence. 3D-modelling I started making box case for simple electronics (the board and battery case). I used Tinkercad for modelling. I had used Tinkercad before but it’s been long time since I used it last time. I really liked that Tinkercad has ready models of electronics even though it didn’t have the ones I’m using. That’s why I had to use components as close as possible to my actual components."}, {"post_id": 9143, "ts": "2026-06-15T09:47:02Z", "hours": 0.9778, "text": "#1 devlog, days 1-2 This project has now officially started. Git and github are set up and the core feature works! Currently the arduino (it’s actually Wemos, not arduino) is able to show current price. I use free API to get spot electricity price (it’s price in Finland). https://api.spot-hinta.fi/JustNow The board I use is Lolin D1 mini Pro V2.0.0 My plan for this project: make the screen display current spot electricity price design and maybe build box/casing for electronics add leds to indicate how cheap or expensive electricity is now add buttons for scrolling future prices"}]...
|
Title: spot-electricity-display by @viivi | Starda Title: spot-electricity-display by @viivi | Stardance
Devlogs:
#1 devlog, days 1-2 This project has now officially started. Git and github are set up and the core feature works! Currently the arduino (it’s actually Wemos, not arduino) is able to show current price. I use free API to get spot electricity price (it’s price in Finland). https://api.spot-hinta.fi/JustNow The board I use is Lolin D1 mini Pro V2.0.0 My plan for this project: make the screen display current spot electricity price design and maybe build box/casing for electronics add leds to indicate how cheap or expensive electricity is now add buttons for scrolling future prices
#2 devlog Coding Lot of time, no progress. I spent quite a long time trying to make buttons on my board work with my code. I couldn’t make them work :) . Instead of buttons I might make text change with specific a frequence. 3D-modelling I started making box case for simple electronics (the board and battery case). I used Tinkercad for modelling. I had used Tinkercad before but it’s been long time since I used it last time. I really liked that Tinkercad has ready models of electronics even though it didn’t have the ones I’m using. That’s why I had to use components as close as possible to my actual components.
#3 devlog Today I… tried to add timing for API requests, and I think it works but now my oled screen won’t display anything. There’s 50/50 chance it works tomorrow with exact same code :(. Finished 3D modelling by making a back plate for the case. Wrote something to the README
#4 devlog I guessed it rght, on the next day it worked again. One possible reason it didn’t work then was that the text wasn’t set to white, though it should be white as default. I finished readme and filmed a short demo video.
Ships:
spot-electricity-display It’s a small ESP-8266 project for displaying the current spot electricity price. I used Arduino IDE for coding the code to fetch and update the data displayed on the screen. I also 3D modelled a case for it with Tinkercad but I haven’t tried to actually print or build it because I don’t have a 3D printer or materials for it. The first photo is an edited demonstration photo how it could look like (perspectives failed). The second photo shows what I actually have. I made this because it could make life easier. Instead of opening an app it would be much easier to check this to see the price. It wasn’t easy to make this because I felt like everything was against me. Libraries weren’t the easiest to use, the screen tweaked all the time and there isn’t many guides for this specific board because it’s quite rare....
|
1793339387.3575122
|
1793425787.3575122
|
|
24732
|
CapyOS by @viivi | Stardance
|
viivi
|
2
|
11.0
|
24
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-08-23T18:51:40Z", "hours": 4.0, "multiplier": 5.52, "payout": 24, "blessing": "neutral", "text": "CapyOS This is just a silly project made just for fun! CapyOS is a capybara-themed web operating system. I followed WebOS 1 mission to build core features and for WebOS 2 I added 2 new apps, fixed full screen mode and made app menu scrollable. I also did some polishing for the UI and added “clear windows” -button. This was my first time building a website with pure html, javascript and css for a long time. I had a lot of fun designing while adding all those capybaras you will find when you test it! I accidentally used over 7hr with mission 1 because I had so much fun and I love to adjust small things little bit better. Also because this project was made just for fun, I didn’t have much pressure to make this “good” or “serious”. It’s still 100% (hopefully) working. Have fun while testing! More details in readme.", "repo": "https://github.com/ViLP357/WebOS-Stardance", "demo": "https://vilp357.github.io/WebOS-Stardance/"}, {"ship_num": 2, "ts": "2026-07-05T15:43:20Z", "hours": 7.0, "multiplier": null, "payout": 0, "blessing": "neutral", "text": "Here is my project for WebOS 1: CapyOS. A capybara themed WebOs using HTML, JavaScript and CSS. Capybaras are cute chill guys. So why not to make a capybara themed WebOS? This isn’t supposed to be a very serious project. I took the right to make it kinda silly. But at the same time it’s an actual web app and you could go to play around with it right now (link: https://vilp357.github.io/WebOS-Stardance/ )! It’n not very complex yet, but I’ve planned to continue to WebOS 2 mission to finish what I’ve started (nothing is stopping me, hahaa). My own features: scrollable app menu (when it has more icons it’s actually scrollable). I don’t like my desktop being covered in icons, so this way icons will stay on the left side forever. fullscreen button. This one works best when there is only one window. Otherwise it might work, let’s say, in a different way. Before starting this project I was already familiar with HTML and CSS, but I wasn’t that familiar with plain JavaScript. I think that I learned most about coding webpages with JavaScript and I feel confident continuing to WebOS 2.", "repo": "https://github.com/ViLP357/WebOS-Stardance", "demo": "https://vilp357.github.io/WebOS-Stardance/"}]...
|
[{"post_id": 53271, "ts": "202 [{"post_id": 53271, "ts": "2026-08-23T18:38:17Z", "hours": 1.8197, "text": "#7 devlog Probably the last devlog for this project. CapyOS is now ready for shipping. Sorry for last devlog, I just wan’t to get these hours logged. The last feature I added was a timer. Its icon is, of course, caybara-themed."}, {"post_id": 43341, "ts": "2026-08-08T15:17:31Z", "hours": 2.4578, "text": "#6 devlog, webOS 2 Some updates A new app: a gallery for viewing cute capybara photos Full screen button works now, it aligns the window perfectly every time now. (It required actually only 2 new lines in to script!) A new scrollbar in the app menu with a green theme. I added extra icons so that the scrollbar can be tested"}, {"post_id": 22903, "ts": "2026-07-05T15:23:00Z", "hours": 0.4181, "text": "#5 devlog The final site (after webos 1). I’m going to ship it now!"}, {"post_id": 22275, "ts": "2026-07-04T17:36:45Z", "hours": 3.9961, "text": "#4 devlog I think I’ve completed part 5 now. I still have to finish readme and deploy this and the ship. This will actually be my first ship!! I’ve already planned things to do in WebOS 2 (and I actually started doing them). The new app I created in part 5 is link app because I often forget important websites and the app is a place to store links for those sites."}, {"post_id": 17881, "ts": "2026-06-28T20:22:06Z", "hours": 1.4325, "text": "#3 devlog Working on my WebOS. Today I completed part 3 which means that the welcome window is closeable and openable. I hope to finish WebOS 1 soon. Looking forward to make a new app next time :)"}, {"post_id": 16462, "ts": "2026-06-26T20:07:23Z", "hours": 1.0678, "text": "#2 devlog Part 2 done. I decided that my WebOS will be CapyOS so more of capybaras coming. I’m very happy with the navbar I made and I’ll update it later. I think it already looks really cool."}, {"post_id": 14528, "ts": "2026-06-23T17:50:38Z", "hours": 0.4672, "text": "#1 devlog Today I started making my own WebOS using the tutorial. There was nothing new to me but had fun with playing the elements. I don’t have any special plans for this project but hopefully I end making something (at least little bit) useful."}]...
|
Title: CapyOS by @viivi | Stardance
Devlogs:
#1 d Title: CapyOS by @viivi | Stardance
Devlogs:
#1 devlog Today I started making my own WebOS using the tutorial. There was nothing new to me but had fun with playing the elements. I don’t have any special plans for this project but hopefully I end making something (at least little bit) useful.
#2 devlog Part 2 done. I decided that my WebOS will be CapyOS so more of capybaras coming. I’m very happy with the navbar I made and I’ll update it later. I think it already looks really cool.
#3 devlog Working on my WebOS. Today I completed part 3 which means that the welcome window is closeable and openable. I hope to finish WebOS 1 soon. Looking forward to make a new app next time :)
#4 devlog I think I’ve completed part 5 now. I still have to finish readme and deploy this and the ship. This will actually be my first ship!! I’ve already planned things to do in WebOS 2 (and I actually started doing them). The new app I created in part 5 is link app because I often forget important websites and the app is a place to store links for those sites.
#5 devlog The final site (after webos 1). I’m going to ship it now!
#6 devlog, webOS 2 Some updates A new app: a gallery for viewing cute capybara photos Full screen button works now, it aligns the window perfectly every time now. (It required actually only 2 new lines in to script!) A new scrollbar in the app menu with a green theme. I added extra icons so that the scrollbar can be tested
#7 devlog Probably the last devlog for this project. CapyOS is now ready for shipping. Sorry for last devlog, I just wan’t to get these hours logged. The last feature I added was a timer. Its icon is, of course, caybara-themed.
Ships:
Here is my project for WebOS 1: CapyOS. A capybara themed WebOs using HTML, JavaScript and CSS. Capybaras are cute chill guys. So why not to make a capybara themed WebOS? This isn’t supposed to be a very serious project. I took the right to make it kinda silly. But at the same time it’s an actual web app and you could go to play around with it right now (link: https://vilp357.github.io/WebOS-Stardance/ )! It’n not very complex yet, but I’ve planned to continue to WebOS 2 mission to finish what I’ve started (nothing is stopping me, hahaa). My own features: scrollable app menu (when it has more icons it’s actually scrollable). I don’t like my desktop being covered in icons, so this way icons will stay on the left side forever. fullscreen button. This one works best when there is only one window. Otherwise it might work, let’s say, in a different way. Before starting this project I was already familiar with HTML and CSS, but I wasn’t that familiar with plain JavaScript. I think that I learned most about coding webpages with JavaScript and I feel confident continuing to WebOS 2.
CapyOS This is just a silly project made just for fun! CapyOS is a capybara-themed web operating system. I followed WebOS 1 mission to build core features and for WebOS 2 I added 2 new apps, fixed full screen mode and made app menu scrollable. I also did some polishing for the UI and added “clear windows” -button. This was my first time building a website with pure html, javascript and css for a long time. I had a lot of fun designing while adding all those capybaras you will find when you test it! I accidentally used over 7hr with mission 1 because I had so much fun and I love to adjust small things little bit better. Also because this project was made just for fun, I didn’t have much pressure to make this “good” or “serious”. It’s still 100% (hopefully) working. Have fun while testing! More details in readme....
|
1793310902.5365322
|
1793397302.5365322
|
|
69980
|
presentware by @viivi | Stardance
|
viivi
|
1
|
10.0
|
20
|
[{"ship_num": 1, "ts": "2026-1 [{"ship_num": 1, "ts": "2026-10-25T14:56:21Z", "hours": 10.0, "multiplier": 1.99, "payout": 20, "blessing": "neutral", "text": "Presentware A website for showcasing both software and hardware. Because I didn’t find a site that would support both hardware and software very well and github (in my opinion) isn’t very good for finding similiar level projects as I build. My plan is to make it easier to find other builders with same level so people could connect and get inspired by others. I hope also that this could give young builders more visibility, because I often feel like only big companies or professionals get the attention they deserve. How to test: Create your own account or use: username: test_account password: tester1 I’d be very grateful if you added your Stardance project to presentware. You can add github link to the content field because projects don’t have link fields yet. Presentware is my first real fullstack project I’ve made so I learnt a lot about almost everything from coding to deploying an app. I’m very proud of myself because presentware works well enough even though the UI is still pretty bad but I will update it after Stardance.", "repo": "https://github.com/ViLP357/presentware", "demo": "https://presentware.vercel.app/"}]...
|
[{"post_id": 82644, "ts": "202 [{"post_id": 82644, "ts": "2026-10-25T14:33:03Z", "hours": 2.5644, "text": "#3 devlog, “finishing”, deploying Since stardance is ending soon, I’m going to ship this soon even though it’s not ready yet. It still has all core features and works pretty well. Today I added ProjectPage which appears on the right side of the project when a project is clicked. It shows some extra information about a project. UI is pretty bad but I don’t care about it right now."}, {"post_id": 81296, "ts": "2026-10-20T18:16:55Z", "hours": 0.9611, "text": "#2 devlog, working on frontend project page Today I started working with the main page, which shows all the created projects. I focused on project cards appearance. Border color of a card is determined by the type of the project (eg. orange = website) I also created a color palette using https://coolors.co/ which I will be using."}, {"post_id": 80357, "ts": "2026-10-17T12:11:40Z", "hours": 6.6417, "text": "#1 devlog, working backend, simple frontend Presentware will be an website for showcasing both hardware and software projects. It will have a search feature to find projects you are interested in and see what other people from your country are building. It will support project collaboration (add multiple contributors to a project). My plan is to make it easier to find other builders with same level so people could connect and get inspired by others. I hope also that this could give young builders more visibility, because I often feel like only big companies or professionals get the attention they deserve. Right now presentware has an working backend, which supports: adding new users and log in creating new projects with with all the necessary fields To do: Almost everything in the frontend Currently the frontend only supports creating a new account, login and it shows all the projects in database."}]...
|
Title: presentware by @viivi | Stardance
Devlogs: Title: presentware by @viivi | Stardance
Devlogs:
#1 devlog, working backend, simple frontend Presentware will be an website for showcasing both hardware and software projects. It will have a search feature to find projects you are interested in and see what other people from your country are building. It will support project collaboration (add multiple contributors to a project). My plan is to make it easier to find other builders with same level so people could connect and get inspired by others. I hope also that this could give young builders more visibility, because I often feel like only big companies or professionals get the attention they deserve. Right now presentware has an working backend, which supports: adding new users and log in creating new projects with with all the necessary fields To do: Almost everything in the frontend Currently the frontend only supports creating a new account, login and it shows all the projects in database.
#2 devlog, working on frontend project page Today I started working with the main page, which shows all the created projects. I focused on project cards appearance. Border color of a card is determined by the type of the project (eg. orange = website) I also created a color palette using https://coolors.co/ which I will be using.
#3 devlog, “finishing”, deploying Since stardance is ending soon, I’m going to ship this soon even though it’s not ready yet. It still has all core features and works pretty well. Today I added ProjectPage which appears on the right side of the project when a project is clicked. It shows some extra information about a project. UI is pretty bad but I don’t care about it right now.
Ships:
Presentware A website for showcasing both software and hardware. Because I didn’t find a site that would support both hardware and software very well and github (in my opinion) isn’t very good for finding similiar level projects as I build. My plan is to make it easier to find other builders with same level so people could connect and get inspired by others. I hope also that this could give young builders more visibility, because I often feel like only big companies or professionals get the attention they deserve. How to test: Create your own account or use: username: test_account password: tester1 I’d be very grateful if you added your Stardance project to presentware. You can add github link to the content field because projects don’t have link fields yet. Presentware is my first real fullstack project I’ve made so I learnt a lot about almost everything from coding to deploying an app. I’m very proud of myself because presentware works well enough even though the UI is still pretty bad but I will update it after Stardance....
|
1793400599.385823
|
1793486999.385823
|
|
44515
|
Flipper Zero Like Device by @viiikboncuk | Stardan Flipper Zero Like Device by @viiikboncuk | Stardance...
|
viiikboncuk
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Flipper Zero Like Device by @viiikboncuk | Title: Flipper Zero Like Device by @viiikboncuk | Stardance...
|
1793278530.4360626
|
1793883330.4360626
|
|
64704
|
My awesome macropad! by @vihany | Stardance
|
vihany
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @vihany | Stardance
|
1793065929.4729762
|
1793670729.4729762
|
|
58954
|
My awesome macropad! by @vihanshah_irl | Stardance
|
vihanshah_irl
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @vihanshah_irl | St Title: My awesome macropad! by @vihanshah_irl | Stardance...
|
1792777741.0771055
|
1793382541.0771055
|
|
14695
|
Odyssey by @vihanr | Stardance
|
vihanr
|
0
|
25.6
|
0
|
[]
|
[{"post_id": 35898, "ts": "202 [{"post_id": 35898, "ts": "2026-07-27T17:01:26Z", "hours": 7.265, "text": "base odyssey-core finished! whats done: everything from initial commit and second devlog (too lazy to type it out lol) Follower.java: combines two vectors for velocity (translational vector, what keeps the robot on the path through arc-length implicitization plus drive vector, the vector that follows the bezier curve) and two different acceleration scalars (centripetal, calculated thruogh v^2*k, and tangential, just the tangential accel from VelocityProfile.java). This in total outputs a DriveSignal that drives the robot. updated DriveSignal that includes forward and strafe acceleration for centripetal pass MecanumDrive.java: putting it together. Takes in a drive signal, and outputs actual drive commands that make the wheels move. StaticCoefficientOpMode.java: opmode that helps you determine kS and kV (static friction coeff and velocity coeff) what im working on advanced heading control: tangential heading, constant heading, target-based heading, etc. GUI (finally): gui that helps you create a path in a user-friendly way and returns a JSON of pts that you can use while coding ambitious goals: turning into a maven lib? marketing to young/rookie teams? website with documentation?"}, {"post_id": 29949, "ts": "2026-07-17T04:17:13Z", "hours": 1.7903, "text": "finished VelocityProfile.java what is it? a velocity profile is just a simple mapping of the optimal velocity given the robot is along the path. it takes in distance, and it outputs velocity. how does it do that? first of all, because it maps distance in a cubic bezier-curve path, my numerical solution to arc-length parametrization using a Gauss-Legendre integrator proves actually useful. Based on that distance, you pass the optimal velocity through 3 different checks: centripetal, forward, and backward. centripetal pass: you get the curvature based on the distance you are along the path, and from that curvature you use the formula a_c=v^2*k (rearrange it to v^2=a_c/k and finally v=sqrt(a_c/k)) to find the curve velocity limit. This is also tuned by the maximum centripetal acceleration limit that is based on the robot’s physical capability. forward pass: with a standard velocity profile with just velocity mappings, the robot may physically not be able to accelerate from point A to B. a forward pass provides the maximum velocity for accelerating smoothly without error along two distances. It uses the kinematic formula with the max acceleration as the robot’s acceleration limit. backward pass: backward pass is basically the same idea as forward pass except, you guessed it, backwards! it uses the robot’s physical limit of braking (or deacceleration) to find the optimal breaking speed. for finding the velocity you can lerp the closest low and high vals. tests: 14 out of 14 passed yay (i had one slip up where i forgot to lerp v^2 and lerped v) now im working on: the simulated follower bc i need the actual robot for t he real follower"}, {"post_id": 29270, "ts": "2026-07-16T02:32:09Z", "hours": 16.5494, "text": "initial commit everything done so far (first devlog a bit late into the project so a lot is done) entire geometry package (Vector2d, BezierCurve, Pose2d, etc.) follower class DriveSignal that turns forward strafe and turn into one robust signal beautiful arc-length parametrization and implicitization (holy that took a long time accounted for like 5 hours lmao) but one of the key parts that makes this algo extremely accurate compared to others pid controller VERY VERY VERY basic GUI using JavaFX in progress: velocity profile (working on the basic methods on optimal centrepital acceleration, trying to learn 1st pass 2nd pass and 3rd pass) soon: simulated follower algo actual follower algo when i get the robot ambitious: GUI that turns your path (hand-drawn with bezier curve control points, maybe next i could include an optimize function) into JSON for easier readibility and maybe soon an actual java code that works potentially making this into a library??"}]...
|
Title: Odyssey by @vihanr | Stardance
Devlogs:
in Title: Odyssey by @vihanr | Stardance
Devlogs:
initial commit everything done so far (first devlog a bit late into the project so a lot is done) entire geometry package (Vector2d, BezierCurve, Pose2d, etc.) follower class DriveSignal that turns forward strafe and turn into one robust signal beautiful arc-length parametrization and implicitization (holy that took a long time accounted for like 5 hours lmao) but one of the key parts that makes this algo extremely accurate compared to others pid controller VERY VERY VERY basic GUI using JavaFX in progress: velocity profile (working on the basic methods on optimal centrepital acceleration, trying to learn 1st pass 2nd pass and 3rd pass) soon: simulated follower algo actual follower algo when i get the robot ambitious: GUI that turns your path (hand-drawn with bezier curve control points, maybe next i could include an optimize function) into JSON for easier readibility and maybe soon an actual java code that works potentially making this into a library??
finished VelocityProfile.java what is it? a velocity profile is just a simple mapping of the optimal velocity given the robot is along the path. it takes in distance, and it outputs velocity. how does it do that? first of all, because it maps distance in a cubic bezier-curve path, my numerical solution to arc-length parametrization using a Gauss-Legendre integrator proves actually useful. Based on that distance, you pass the optimal velocity through 3 different checks: centripetal, forward, and backward. centripetal pass: you get the curvature based on the distance you are along the path, and from that curvature you use the formula a_c=v^2*k (rearrange it to v^2=a_c/k and finally v=sqrt(a_c/k)) to find the curve velocity limit. This is also tuned by the maximum centripetal acceleration limit that is based on the robot’s physical capability. forward pass: with a standard velocity profile with just velocity mappings, the robot may physically not be able to accelerate from point A to B. a forward pass provides the maximum velocity for accelerating smoothly without error along two distances. It uses the kinematic formula with the max acceleration as the robot’s acceleration limit. backward pass: backward pass is basically the same idea as forward pass except, you guessed it, backwards! it uses the robot’s physical limit of braking (or deacceleration) to find the optimal breaking speed. for finding the velocity you can lerp the closest low and high vals. tests: 14 out of 14 passed yay (i had one slip up where i forgot to lerp v^2 and lerped v) now im working on: the simulated follower bc i need the actual robot for t he real follower
base odyssey-core finished! whats done: everything from initial commit and second devlog (too lazy to type it out lol) Follower.java: combines two vectors for velocity (translational vector, what keeps the robot on the path through arc-length implicitization plus drive vector, the vector that follows the bezier curve) and two different acceleration scalars (centripetal, calculated thruogh v^2*k, and tangential, just the tangential accel from VelocityProfile.java). This in total outputs a DriveSignal that drives the robot. updated DriveSignal that includes forward and strafe acceleration for centripetal pass MecanumDrive.java: putting it together. Takes in a drive signal, and outputs actual drive commands that make the wheels move. StaticCoefficientOpMode.java: opmode that helps you determine kS and kV (static friction coeff and velocity coeff) what im working on advanced heading control: tangential heading, constant heading, target-based heading, etc. GUI (finally): gui that helps you create a path in a user-friendly way and returns a JSON of pts that you can use while coding ambitious goals: turning into a maven lib? marketing to young/rookie teams? website with documentation?...
|
1792723729.1692243
|
1793328529.1692243
|
|
17491
|
My very own WebOS by @vihanmudireddy | Stardance
|
vihanmudireddy
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My very own WebOS by @vihanmudireddy | Star Title: My very own WebOS by @vihanmudireddy | Stardance...
|
1792785056.9991329
|
1793389856.9991329
|
|
48565
|
Octopollen by @vihanaggarwal | Stardance
|
vihanaggarwal
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Octopollen by @vihanaggarwal | Stardance
|
1793235144.287004
|
1793839944.287004
|
|
66796
|
My very own WebOS by @vihan_d26 | Stardance
|
vihan_d26
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My very own WebOS by @vihan_d26 | Stardance
|
1793101999.4924939
|
1793706799.4924939
|
|
67393
|
Fpv Rc Bird project by @vihan_d26 | Stardance
|
vihan_d26
|
0
|
17.21
|
0
|
[]
|
[{"post_id": 78300, "ts": "202 [{"post_id": 78300, "ts": "2026-10-10T10:57:16Z", "hours": 3.8208, "text": "First Failure. trying to assemble my mechanism in cad but for some reason its glitching and not fitting as intended. Some parts assembled in reverse and also shafts of wrong size."}, {"post_id": 77628, "ts": "2026-10-07T17:56:14Z", "hours": 4.9272, "text": "Main structure of the wing designed in freecad assembly and connecter shafts left. now need to test whether proportions are accurate and will they work as intended."}, {"post_id": 77054, "ts": "2026-10-05T14:32:45Z", "hours": 5.1161, "text": "Testing the opening and closing of my wing mechanism with legos"}, {"post_id": 76208, "ts": "2026-10-02T17:48:28Z", "hours": 3.3506, "text": "Guys i know this is stupid idea but still a idea. I am currently making Fpv rc bat inspired avian as it was my dream to always create something ambitious. Anyways the sketches arent great for other ppl to understand as i didnt keep it in my mind while making the rough sketches but this project is taking a hell lot of research just start. I appreciate u giving a look at it"}]...
|
Title: Fpv Rc Bird project by @vihan_d26 | Stardan Title: Fpv Rc Bird project by @vihan_d26 | Stardance
Devlogs:
Guys i know this is stupid idea but still a idea. I am currently making Fpv rc bat inspired avian as it was my dream to always create something ambitious. Anyways the sketches arent great for other ppl to understand as i didnt keep it in my mind while making the rough sketches but this project is taking a hell lot of research just start. I appreciate u giving a look at it
Testing the opening and closing of my wing mechanism with legos
Main structure of the wing designed in freecad assembly and connecter shafts left. now need to test whether proportions are accurate and will they work as intended.
First Failure. trying to assemble my mechanism in cad but for some reason its glitching and not fitting as intended. Some parts assembled in reverse and also shafts of wrong size....
|
1793109182.417321
|
1793713982.417321
|
|
56359
|
S.P.E.C.T.R by @vihan1 | Stardance
|
vihan1
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: S.P.E.C.T.R by @vihan1 | Stardance
|
1793379337.501806
|
1793984137.501806
|
|
10363
|
Decapitator PaperMC Plugin by @vihaanvp | Stardanc Decapitator PaperMC Plugin by @vihaanvp | Stardance...
|
vihaanvp
|
0
|
0.45
|
0
|
[]
|
[{"post_id": 3953, "ts": "2026 [{"post_id": 3953, "ts": "2026-06-07T02:43:26Z", "hours": 0.4486, "text": "Currently working on README.md, LICENSE, and CHANGELOG.md for GitHub, then I will start implementing features such as Chat Autocomplete"}]...
|
Title: Decapitator PaperMC Plugin by @vihaanvp | S Title: Decapitator PaperMC Plugin by @vihaanvp | Stardance
Devlogs:
Currently working on README.md, LICENSE, and CHANGELOG.md for GitHub, then I will start implementing features such as Chat Autocomplete...
|
1793281717.1967099
|
1793886517.1967099
|