|
8201
|
My first slack bot! by @RudraLama | Stardance
|
RudraLama
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My first slack bot! by @RudraLama | Stardan Title: My first slack bot! by @RudraLama | Stardance...
|
1793210123.5303981
|
1793814923.5303981
|
|
8202
|
Untitled project by @jeanherail_2441 | Stardance
|
jeanherail_2441
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Untitled project by @jeanherail_2441 | Star Title: Untitled project by @jeanherail_2441 | Stardance...
|
1793382552.4878142
|
1793987352.4878142
|
|
8203
|
Untitled project by @miireiaj_uni_uv_7580 | Starda Untitled project by @miireiaj_uni_uv_7580 | Stardance...
|
miireiaj_uni_uv_7580
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Untitled project by @miireiaj_uni_uv_7580 | Title: Untitled project by @miireiaj_uni_uv_7580 | Stardance...
|
1792799590.9373095
|
1793404390.9373095
|
|
8204
|
Tek Note by @alexandre_ngo | Stardance
|
alexandre_ngo
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Tek Note by @alexandre_ngo | Stardance
|
1793411824.4346654
|
1794016624.4346654
|
|
8205
|
AI Agent from scratch by @Andrii | Stardance
|
Andrii
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: AI Agent from scratch by @Andrii | Stardanc Title: AI Agent from scratch by @Andrii | Stardance...
|
1792756479.056072
|
1793361279.056072
|
|
8206
|
My awesome macropad! by @Anjula | Stardance
|
Anjula
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @Anjula | Stardance
|
1793145217.7169747
|
1793750017.7169747
|
|
8207
|
My awesome macropad! by @krutinp1255_9350 | Starda My awesome macropad! by @krutinp1255_9350 | Stardance...
|
krutinp1255_9350
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @krutinp1255_9350 | Title: My awesome macropad! by @krutinp1255_9350 | Stardance...
|
1793436534.032335
|
1794041334.032335
|
|
8208
|
AI PREDICTOR by @tushar_02 | Stardance
|
tushar_02
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: AI PREDICTOR by @tushar_02 | Stardance
|
1792724084.3231099
|
1793328884.3231099
|
|
8209
|
My awesome macropad! by @imma_sherry06 | Stardance
|
imma_sherry06
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @imma_sherry06 | St Title: My awesome macropad! by @imma_sherry06 | Stardance...
|
1793181326.8125596
|
1793786126.8125596
|
|
8210
|
openrazer revived by @encompl | Stardance
|
encompl
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: openrazer revived by @encompl | Stardance
|
1792785176.0144877
|
1793389976.0144877
|
|
8211
|
Simulation Deck by @Kiki344r | Stardance
|
Kiki344r
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Simulation Deck by @Kiki344r | Stardance
|
1793317822.1058562
|
1793922622.1058562
|
|
8212
|
My awesome macropad! by @anik_sen_vuban_3077 | Sta My awesome macropad! by @anik_sen_vuban_3077 | Stardance...
|
anik_sen_vuban_3077
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @anik_sen_vuban_307 Title: My awesome macropad! by @anik_sen_vuban_3077 | Stardance...
|
1793029799.8947017
|
1793634599.8947017
|
|
8213
|
Untitled project by @csbphile | Stardance
|
csbphile
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Untitled project by @csbphile | Stardance
|
1793227690.036128
|
1793832490.036128
|
|
8214
|
My awesome macropad! by @kammouni_1984 | Stardance
|
kammouni_1984
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @kammouni_1984 | St Title: My awesome macropad! by @kammouni_1984 | Stardance...
|
1793235278.440807
|
1793840078.440807
|
|
8215
|
My awesome macropad! by @lamsalsatyam_8594 | Stard My awesome macropad! by @lamsalsatyam_8594 | Stardance...
|
lamsalsatyam_8594
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @lamsalsatyam_8594 Title: My awesome macropad! by @lamsalsatyam_8594 | Stardance...
|
1792723829.8783944
|
1793328629.8783944
|
|
8216
|
My awesome macropad! by @gajjarkuldip | Stardance
|
gajjarkuldip
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @gajjarkuldip | Sta Title: My awesome macropad! by @gajjarkuldip | Stardance...
|
1793335733.6764162
|
1793940533.6764162
|
|
8217
|
Enchanted string by @Vgvicky | Stardance
|
Vgvicky
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Enchanted string by @Vgvicky | Stardance
|
1793371986.3945134
|
1793976786.3945134
|
|
8218
|
My awesome macropad! by @xytx | Stardance
|
xytx
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @xytx | Stardance
|
1792792082.3076823
|
1793396882.3076823
|
|
8219
|
NULL
|
NULL
|
0
|
0.0
|
0
|
[]
|
[]
|
|
1792939912.777295
|
1793803912.777295
|
|
8220
|
Sombariii by @kaushik | Stardance
|
kaushik
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Sombariii by @kaushik | Stardance
|
1792745256.9448102
|
1793350056.9448102
|
|
8221
|
ManageMe by @chri | Stardance
|
chri
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: ManageMe by @chri | Stardance
|
1792792385.777504
|
1793397185.777504
|
|
8222
|
My first slack bot! by @dulashanjana | Stardance
|
dulashanjana
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My first slack bot! by @dulashanjana | Star Title: My first slack bot! by @dulashanjana | Stardance...
|
1793292748.6013262
|
1793897548.6013262
|
|
8223
|
My first slack bot! by @shaktipratapsingh04022006 My first slack bot! by @shaktipratapsingh04022006 | Stardance...
|
shaktipratapsingh04022006
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My first slack bot! by @shaktipratapsingh04 Title: My first slack bot! by @shaktipratapsingh04022006 | Stardance...
|
1792727255.3241155
|
1793332055.3241155
|
|
8224
|
Quiz Learning Platform by @rishabhpandey106 | Star Quiz Learning Platform by @rishabhpandey106 | Stardance...
|
rishabhpandey106
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Quiz Learning Platform by @rishabhpandey106 Title: Quiz Learning Platform by @rishabhpandey106 | Stardance...
|
1793195523.6991286
|
1793800323.6991286
|
|
8225
|
My awesome macropad! by @benedikt_schaechner | Sta My awesome macropad! by @benedikt_schaechner | Stardance...
|
benedikt_schaechner
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @benedikt_schaechne Title: My awesome macropad! by @benedikt_schaechner | Stardance...
|
1793278283.0192108
|
1793883083.0192108
|
|
8226
|
My awesome macropad! by @bharambn_1668 | Stardance
|
bharambn_1668
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @bharambn_1668 | St Title: My awesome macropad! by @bharambn_1668 | Stardance...
|
1793242412.0682607
|
1793847212.0682607
|
|
8227
|
My awesome macropad! by @tayem | Stardance
|
tayem
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @tayem | Stardance
|
1792792362.6013803
|
1793397162.6013803
|
|
8228
|
Untitled by @benedikt_schaechner | Stardance
|
benedikt_schaechner
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Untitled by @benedikt_schaechner | Stardanc Title: Untitled by @benedikt_schaechner | Stardance...
|
1793332625.4250448
|
1793937425.4250448
|
|
8229
|
My awesome macropad! by @akkitiw_5361 | Stardance
|
akkitiw_5361
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @akkitiw_5361 | Sta Title: My awesome macropad! by @akkitiw_5361 | Stardance...
|
1793379163.9130502
|
1793983963.9130502
|
|
8230
|
MediaNodeRE by @ | Stardance
|
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: MediaNodeRE by @ | Stardance
|
1793191914.6876915
|
1793796714.6876915
|
|
8231
|
Sun by @stardance_jun5 | Stardance
|
stardance_jun5
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Sun by @stardance_jun5 | Stardance
|
1793440343.0794733
|
1794045143.0794733
|
|
8232
|
VideoInspection by @Fyusion39 | Stardance
|
Fyusion39
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: VideoInspection by @Fyusion39 | Stardance
|
1792770753.4631178
|
1793375553.4631178
|
|
8233
|
Untitled project by @tahx09 | Stardance
|
tahx09
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Untitled project by @tahx09 | Stardance
|
1793199065.6418958
|
1793803865.6418958
|
|
8234
|
Java Implementation of a Linked List by @oliverche Java Implementation of a Linked List by @oliverchew | Stardance...
|
oliverchew
|
0
|
0.27
|
0
|
[]
|
[{"post_id": 2911, "ts": "2026 [{"post_id": 2911, "ts": "2026-06-05T20:19:50Z", "hours": 0.2667, "text": "Using Java (on Intelli), I have been working on making some fundamental data structures l’ve learnt in school. Today, I’ve been making a linked list. I used 0OP with an ’Element class (hence the name) being the element. The ’LinkedList class holding all the methods such as ‘append’, ‘insert’. Not quite done yet, but append and remove have been coded, and should work! As well as the Element class, though that is mainly just getters and setters."}]...
|
Title: Java Implementation of a Linked List by @ol Title: Java Implementation of a Linked List by @oliverchew | Stardance
Devlogs:
Using Java (on Intelli), I have been working on making some fundamental data structures l’ve learnt in school. Today, I’ve been making a linked list. I used 0OP with an ’Element class (hence the name) being the element. The ’LinkedList class holding all the methods such as ‘append’, ‘insert’. Not quite done yet, but append and remove have been coded, and should work! As well as the Element class, though that is mainly just getters and setters....
|
1792727420.9327567
|
1793332220.9327567
|
|
8235
|
My awesome macropad! by @Hemanth | Stardance
|
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @Hemanth | Stardanc Title: My awesome macropad! by @Hemanth | Stardance...
|
1793404398.1784215
|
1794009198.1784215
|
|
8236
|
My awesome macropad! by @pothca | Stardance
|
pothca
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @pothca | Stardance
|
1793436460.9328263
|
1794041260.9328263
|
|
8237
|
My awesome macropad! by @phantomninja | Stardance
|
phantomninja
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @phantomninja | Sta Title: My awesome macropad! by @phantomninja | Stardance...
|
1793170498.198435
|
1793775298.198435
|
|
8238
|
Heaven demands death' by @lebiraja2007_9699 | Heaven demands death' by @lebiraja2007_9699 | Stardance...
|
lebiraja2007_9699
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Heaven demands death' by @lebiraja2007_ Title: Heaven demands death' by @lebiraja2007_9699 | Stardance...
|
1792731029.4607577
|
1793335829.4607577
|
|
8239
|
Light data transfer by @jha_utsav2002 | Stardance
|
jha_utsav2002
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Light data transfer by @jha_utsav2002 | Sta Title: Light data transfer by @jha_utsav2002 | Stardance...
|
1793332567.3718195
|
1793937367.3718195
|
|
8240
|
live in space by @clara | Stardance
|
clara
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: live in space by @clara | Stardance
|
1792788632.417926
|
1793393432.417926
|
|
8241
|
My awesome macropad! by @officialszcz | Stardance
|
officialszcz
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @officialszcz | Sta Title: My awesome macropad! by @officialszcz | Stardance...
|
1793289209.3104024
|
1793894009.3104024
|
|
8242
|
My awesome macropad! by @prashantarvindmehta | Sta My awesome macropad! by @prashantarvindmehta | Stardance...
|
prashantarvindmehta
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @prashantarvindmeht Title: My awesome macropad! by @prashantarvindmehta | Stardance...
|
1793246101.0465643
|
1793850901.0465643
|
|
8243
|
Mark by @marklseeliger | Stardance
|
marklseeliger
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Mark by @marklseeliger | Stardance
|
1792810045.378171
|
1793414845.378171
|
|
8244
|
My first slack bot! by @risavah395 | Stardance
|
risavah395
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My first slack bot! by @risavah395 | Starda Title: My first slack bot! by @risavah395 | Stardance...
|
1792727343.774908
|
1793332143.774908
|
|
8245
|
BetterQR by @Dragon | Stardance
|
Dragon
|
1
|
65.93
|
1000
|
[{"ship_num": 1, "ts": "2026-0 [{"ship_num": 1, "ts": "2026-07-16T15:07:34Z", "hours": 64.0, "multiplier": 15.59, "payout": 1000, "blessing": "neutral", "text": "(check the bottom of the ship msg before voting pls) BetterQR v2.0.0 Release Hey Everyone! I am super excited to announce BetterQR v2.0.0 . This release brings a ton of cool new stuff and makes BetterQR even better for your projects. What’s New & Awesome: Micro QR Codes! 🎉 Now you can generate tiny, super-efficient Micro QR codes (M1-M4) for when space is tight. Perfect for small labels or embedded projects. PDF & EPS Output: Need high-quality QR codes for print? You can now export your QR codes as professional PDF and EPS files! Structured Append: Got a huge message? Split it across up to 16 linked QR codes that can be scanned one after another to get the full data. Super powerful for big data! Faster Than Ever: We’ve made PNG generation about 40% faster ! Your QR codes will render quicker, leaving you more time for hacking. Rock-Solid Reliability: We’ve fixed some tricky bugs that could cause QR codes to break, especially for really big ones. Plus, our testing is way better now, so everything is super stable. Better International Support: New Kanji mode and UTF-8 declarations for global projects. Why this matters for your projects: BetterQR v2.0.0 means you can create more advanced, more reliable, and more visually stunning QR codes for whatever you’re building. Whether it’s a game, a website, or a physical project, BetterQR has your back. Get the Update! It’s easy to upgrade: pip install betterqr --upgrade Information for the voters The Logo isn’t AI generated. This was made fully in Canva. No, This is not a vibecoded project. There are some big devlogs that are around ~9h, I wasn’t able to devlog them as where I live there were serveral power outages, making me not able to use the internet and not to devlog them. This has been tested by more than 100 people now. Was only tested on Windows unfortunately. The “zero qr dependencies” mean there are no dependencies that generate the QR code. The generation logic is fully made by me. Pillow is used for PNG outputs and other small export options. The landing page is half-ai.", "repo": "https://github.com/DevX-Dragon/betterqr", "demo": "https://github.com/DevX-Dragon/betterqr/releases/tag/v2.0.0"}]...
|
[{"post_id": 30235, "ts": "202 [{"post_id": 30235, "ts": "2026-07-17T17:32:38Z", "hours": 1.9294, "text": "Fixing Changes Got a review saying the readme is too Ai. So I just wrote a readme from scratch. Cut down the Ai stuff and followed the guide and made this. Also changed the project banner to the terminal preview command cause the reviewer said so."}, {"post_id": 29531, "ts": "2026-07-16T14:56:39Z", "hours": 2.3836, "text": "Final Devlog of v2.0.0 (hopefully) This is the final devlog that I’ll be posting for v2.0.0 of betterqr. Hopefully you guys will give me some more ideas and features for a future version. What I did. Repository Cleanup Did a clean full push to the /src and have no uncommited changes. Pushed the webiste thats going be hosted on Github Pages. Ran some tests. Merged the feat/v2.0.0 into main branch. PyPi Configs Changes some paths in links to adjust with the branch merge. Modified some automations. Docs Cooked up a release log. Did some changes to the README.md and DOCUMENTATION.md Whats Next? This what I have been working for around 50 hours. Lets See what happens. Im plannning to maintain this as much as I can."}, {"post_id": 28300, "ts": "2026-07-14T13:49:36Z", "hours": 5.1056, "text": "Grinding I forgot to devlog so this will be a big one lol. Im currently doing exams so I dont really have alot of time to think through new stuff. I mostly did some bug fixes , optimisation and working on the landing page. Bug Fixes Fixed some bugs related to the PDF output where sometime QR codes overlap and make an error. Fixed some bugs related to the command line. The frame generation does not work. Im actively working on it but Im not able to fix it yet. Optimisation Have been cutting down extra generation time with unnecssary checks. Have imporved alot in the generation time. This took the longest. Docs Edited the documentation.md with the new data. Edited the readme.md with new stuff. Working on a landing page for BetterQR. I also researched a little bit and asked for peoples opinion on this. Selected around 20 people to test this and give their honest review. Most feedbacks were great. Some requested for features and some found bugs."}, {"post_id": 27127, "ts": "2026-07-12T12:17:36Z", "hours": 3.2736, "text": "Session 5 More Benchmarking I have benchmarked more and repeatedly to get the accurate data. I used automated and manual tests. I found some people online who were down to help me benchmark it. For now the data isnt fully presentable. Will include in the next devlog or in the readme itself. New Brand I have decided on updating our logo. I designed a logo on Canva. I’ll probably use it as the official logo. I went for the purplish theme cause why not. The logo has a futuristic vibe to it ig. Better Landing Pages. Im currently working on a landing page for betterQR. The old one is fine but I didnt update it accordingly. So Im going to make a entirely new one. I have been looking for some inspo as well. Bug Fixing Did some little bug fixes and code cleanup"}, {"post_id": 26102, "ts": "2026-07-10T18:06:05Z", "hours": 2.0942, "text": "The tables does not work on the stardance devlogs, idk why look at the attached image for the formatted table Benchmarking This session focuses on benchmarking BetterQR with other popular libraries like segno and qrcode . How it Compares This is a rough comparison between BetterQR , qrcode , and segno . Feature BetterQR qrcode segno Micro QR ✅ M1–M4 ❌ ✅ Kanji Mode ✅ ❌ ✅ Structured Append ✅ ❌ ✅ Logo Embedding ✅ Built-in ❌ (Manual PIL) ❌ (Manual) Module Shapes ✅ 8 Shapes ⚠️ Limited ❌ Gradients ✅ ❌ ❌ Animated GIF ✅ 10 Effects ❌ ❌ Frames & Labels ✅ Built-in ❌ ❌ Structured Data Helpers (WiFi, vCard, …) ✅ ❌ ⚠️ Via plugin BetterQR ’s primary aim is not to aggressively beat other libraries, but to provide a highly capable, reliable, and user-friendly alternative packed with creative options out of the box. Performance Metrics Payload Performance Benchmarks (2.0.0-rc) All times are in milliseconds (ms). Lower is better. | Payload Category | Size / Type | BetterQR | Segno | Standard qrcode | BetterQR Status | | :— | :— | :—: | :—: | :—: | :— | | URL | Tiny / Short | 6.88 | 7.19 | 5.90 | 🟢 Beats Segno / Competitive | | Medium | Standard | 22.44 | 21.89 | 20.03 | 🟡 Ties Segno (~2.5% diff) | | Large | V40 / Dense | 106.63 | 98.94 | 98.96 | 🔴 Behind by ~8% | | Very Large | Max Capacity | 209.00 | 197.00 | 204.00 | 🟡 Highly Competitive (~6% diff) | | SVG (Large) | Vector | 86.63 | ~0.56 | — | 🟡 Meaningful fix (was 104.66) | | SVG (Very Large) | Vector | 174.19 | ~1.50 | — | 🟡 Meaningful fix (was 211.84) | Known Limitations / Project Honesty To build clear engineering trust, here are the current structural limitations of BetterQR compared to older ecosystem veterans: Dependency Overhead: Depends heavily on Pillow for its extensive visual layouts and shapes, unlike segno , which is zero-dependency. Large Matrix Vectorization: Pure PNG generation lags behind by ~6-8% on maximum matrix dimensions (like V40) due to mask scoring loops running entirely in pure Python. Vector Vectorization Limits: While our SVG generation times dropped significantly in the latest release, pure string-building layout engines like segno still massively outperform us on massive vector layouts. Format Boundaries: The legacy EPS writer does not support logo embedding. Spec Edge Cases: Kanji mode and Structured Append are fully validated for standard QR codes, but are not yet implemented for Micro QR variants. rMQR (Rectangular Micro QR) is currently unsupported."}, {"post_id": 25388, "ts": "2026-07-09T17:29:11Z", "hours": 2.5597, "text": "SES-3 This session focuses on bug fixing , CI/CD improvement and some research about new features. New Features Research I realized for the past 2 weeks I have not implemented new features, and only fixed bugs and did improvements. I researched a little and looked into other QR libraries and looked for the stuff that the other libraries lack. I decided on some new features like Kanji Mode, there are few but I wont mention them here. (research time isnt logged cause I forgot but it was like an hour) Bug Fixing Did some bug fixing with the logo embedding QR code again. Its the only QR code type that fails the most. This time I guarantee it wont fail again. CI/CD Improvements Finally I realized for my test workflows I use pyzbar which is a qr code decoding library. But it does not support microqr decoding. So I had to switch to another libray called zxingcpp which does support what pyzbar has with microqr decoding support as well. I took some help from some people online regarding the tests and they help me make some test scripts. I broke down the main test script into smaller parts so Its easier for me and the readers. Conclusion Thats it for this session. Its like 95% completed for shipping and logged 50 hours as well. Just some final new features (mentioned above) and some documentation work and It v2 will be released. Thank you for reading the entire thing. I hope you’ll like it and find BetterQR useful. New features / suggestions / complaints are accepted in the replies via a DM on slack. I need some honest feedback."}, {"post_id": 24825, "ts": "2026-07-08T17:11:15Z", "hours": 1.1514, "text": "Bug Patching (SES-2.1) This will be my last patch of the day. Bug Styled Micro QR codes render wrong: Both the PNG and SVG renderers assume the standard 3-finder layout when deciding what counts as a “finder square” (for shape/color overrides). Micro QR only has one finder (top-left), so modules near the top-right and bottom-left corners get incorrectly forced into squares / finder-color under custom styling. This isnt fully fixed, Im having some hard time figuring out whats the main core issue. It is somewhat fixed."}, {"post_id": 24778, "ts": "2026-07-08T15:58:08Z", "hours": 4.5525, "text": "Bug Patching (SES-1) Ran more tests and got feedback from ~15 people. Made them test the commands and try to find bugs. There were many bugs people were available to find. This is session focuses on fixing some of them Bugs that were fixed Micro QR silently corrupts data near capacity limits: In encoder.py , the capacity check treats every Micro QR data codeword as a full 8 bits — but for M1 and M3 symbols, the last data codeword is only a 4-bit nibble per spec. The checker accepts data that’s 4 bits too big, and the extra bits get silently truncated at render time. .logo() crashes every time: core.py builds a logo_info dict with a key \"padding\" , but matrix.py leads logo_info[\"padding_px\"] , instant KeyError the moment anyone calls .logo(...). Terminal --terminal-style compact output has padding bugs asymmetric left/right padding and a stray extra row, so piping it anywhere that cares about exact dimensions breaks. There are some more bugs that will be fixed in the next session."}, {"post_id": 23583, "ts": "2026-07-06T16:56:25Z", "hours": 9.6575, "text": "Mega Lock-In The 9 hours was logged in span of the last week. Didn`t get to devlog due to internet outage here in Sri Lanka. Bugs Fixed in core.py _hex_to_rgb 3-char hex crash :#000, #FFF, #F00 etc. caused invalid literal for int() with base 16: '' . Added expansion of 3-char to 6-char before parsing .logo() crash: 'QR' object has no attribute '_version_size'``logo() tried to compute size_px = int(self._version_size * ratio) but _version_size doesn’t exist on the QR object at call time (the matrix hasn’t been built yet). Fixed to compute size_px lazily inside _get_logo_info() from module_count × box_size × ratio. logo(border=True) crash: invalid literal for int() with base 16: 'Tr' The _logo_border attribute stores a bool, but was passed directly as border_color to embed_image() which called _hex_to_rgb(True) → _hex_to_rgb(\"True\") → crash. Fixed to pass \"#000000\" if self._logo_border else None. image_ops.py + animation.py — _hex_to_rgb None guard Added if not c: return (0, 0, 0) guard so passing None as a color never crashes. The _color() validator didn’t strip surrounding shell-added quotes from color strings like “#FF0000”, causing # to be split off the hex digits. Fixed to strip \" and ' before processing. Changes Corrected Micro QR capacity table (all 8 version/ECC combos with accurate numeric/alpha/byte limits) Fixed logo() parameter docs (border is bool, not int)- Fixed double ```bash` in installation section Corrected SMS encoding protocol note (sms: not smsto:) Docs Added a more detailed info about MicroQR codes to README.md and DOCUMENTATION.md - Made a landing site with help of Claude."}, {"post_id": 17661, "ts": "2026-06-28T15:25:06Z", "hours": 5.1989, "text": "Locking in Bug hunting has started. I have been looking for any bugs in the hidden corners and have found many of them. Like the embedded logo QR codes throw an error , microQR m4 type just crashes everything,etc. I also have used the library in actual code to test as well. Landing Page Used my front-end skills to to the best and locked in and designed a good looking website for BetterQR. Looks fine for now. Will do some changes later. Made it a single page website cause easier load for Github Pages. (v2 is not out, expect it earlier this week)"}, {"post_id": 16341, "ts": "2026-06-26T16:14:36Z", "hours": 1.6294, "text": "Prepping for shipping I initially planned to release this today, but realized something. The embedded logo thing and microqr is now failing on me. and Im lazy to fix this now so I’ll be fixingit tomorrow. Making a website So I thought why not make a website. So Im have been working on a small landing website with vanilla html and probably host it on GitHub Pages as well."}, {"post_id": 15743, "ts": "2026-06-25T16:49:22Z", "hours": 2.0969, "text": "Prepping to ship Doing stuff related to publishing the new version. Im noy going to be going in details cause Im at school"}, {"post_id": 13715, "ts": "2026-06-22T14:13:14Z", "hours": 2.4611, "text": "Fixing failed tests I have ran multiple CI/CD tests and have noted that most animations and data type qr codes fail. I think its mostly from wrong placements. CLI Redirect : Redirect data -> output when a helper flag is active. SMS Protocol : Use sms: not smsto: . _write_format_info function bugs The _write_format_info function as two major bugs. Top-Right : uses bit_idx=i in write_bit (which applies 14-i ) but should write ( fmt >> i ) & 1 (vbit). The bit indices are swapped. Bottom Left : Only writes 7 rows (missing row size-8 ) ad uses wrong bit indices. These are only like 1/4 of the bugs. These were the easiest to document so listed them here."}, {"post_id": 13175, "ts": "2026-06-21T15:42:56Z", "hours": 1.8564, "text": "Testing and Fixing After running the new CI/CD Tests most pass but some fail. I traced back the issues and fixed half of them. Some issues I found 1, Micro QR auto-version: _min_version doesn’t enforce mode compatibility (M1=numeric only, M2=no byte, etc.) and uses wrong mode-indicator bit count in the needed formula. 2. WiFi/Geo/SMS/Phone/Email/VCard: The helper objects need to be passed as str() to QR() — the test is likely calling them directly. The __str__ methods need to produce correct strings, and some may have format issues. 3. Animations: GIF decode — need to verify each frame. 4. small_border: border=1 means only 4px quiet zone which may confuse decoders. (i have been fixing them but not produce a result yet)"}, {"post_id": 12592, "ts": "2026-06-20T15:49:34Z", "hours": 1.1111, "text": "CI/CD Writing the test scripts from scratch cause the last CI/CD pipelines are kind of glitched. Used claude a little this time to structure it. More Debugging Trying to fix some bugs, scrolling through stack overlay rn (yes stack overflow and not ai, IM NOT A BOOMER trust)"}, {"post_id": 12544, "ts": "2026-06-20T14:27:13Z", "hours": 1.3228, "text": "Fixing time I have identified all of the bugs (hopefully) and marked everything that has to be fixed. Fixed Stuff Current bit-stream builder in build_matrix writes all bits including the full 8-bit last data CW, then starts ECC. For M1/M3, the correct order is: 10 data CW (80 bits) + 4-bit partial + 6 ECC CW (48 bits). The current code writes all 17 CW as bits sequentially which gives the WRONG bit order.So I fixed the bit placement in build_matrix for M1/M3 fixed encode_data to use zero padding for Micro QR and handle the M1/M3 last-4-bit rule. Need to be fixed I need to fix _apply_mask to use Micro QR mask conditions (indices 1,4,6,7 of standard) for micro QR, and add a separate _MICRO_MASK_CONDITIONS list. Need to fix the _min_version capacity checker, which has the same wrong cc_bits values"}, {"post_id": 11994, "ts": "2026-06-19T15:54:15Z", "hours": 2.2208, "text": "Debugging 2 Finding errors in tables.py As my last devlog I identified that there is some errors in matrix and table files. I started looking through the table data and found some errors. bs.append(mode, 4) — always writes a 4-bit mode indicator. But for Micro QR, mode indicators are 1–4 bits depending on the version, not always 4 bits The _data_placement_order function skips col 6 (standard QR timing column). For Micro QR, col 0 is the timing column that should be skipped. But since col 0 and row 0 are already marked as reserved via timing pattern placement, the i f not reserved[row][c] check already handles it. The col == 6 skip is only needed because in standard QR col 6 is a function column that isn’t individually reserved — but since we now properly reserve col 0 for Micro QR, it’s already handled. The issue is the function always skips col 6, which in Micro QR is a valid data column. The Micro QR format info table has duplicate dict keys, so versions M1-M3 silently get clobbered by M4’s values. I’m still going through the code to find the errors first, Then I’ll start to fix them one-by-one cause I’m tired of fixing one and get another 2 bugs out of nowhere."}, {"post_id": 11318, "ts": "2026-06-18T14:58:53Z", "hours": 0.8781, "text": "Debugging After introducing CI/CD Integrations and Test Scripts I have noticed all the generated QR codes fail or unreadable. Im currently tracking the issue behind this. And the main assumption is to something with the src/matrix.py or src/tables.py cause thats the main logic behind the validity. So im curretly digging through the code to find the bugs. I have fixed some of them but when i fix one bug two bug appears. 😭"}, {"post_id": 10678, "ts": "2026-06-17T15:17:02Z", "hours": 2.5147, "text": "Alot of progress today CI/CD Intergration. Implemented few tests that gets triggered during a push / pull request that tests if the generated QR codes are valid and working as intented. Results are sent to a private discord server via a webhook. ISO Complying Working on making the generated QR Codes fully compliant with the ISO Standards. (attached is a fail qr code LOL)"}, {"post_id": 9264, "ts": "2026-06-15T15:38:08Z", "hours": 1.4681, "text": "Made some main changes and reorganization. Made a separate file for all the helper classes Secure algorithm for sensitive data. Researched some more stuff"}, {"post_id": 9211, "ts": "2026-06-15T13:52:01Z", "hours": 2.0236, "text": "Working for the V2.0.0 I have successfully released the first version of it. So I have been working on adding some more features for the next version. MicroQR Support This is one of the most requested feature here. It is little tricky to make it work. But most logic for this has been programmed. SVG Optimization Drastically reduced SVG file size by merging modules into a single element. Security Added HMAC-SHA256 signing and bitwise XOR obfuscation to protect sensitive QR data. Safety Automatically detects low contrast between foreground and background. Includes auto_fix_contrast to force scannable colors."}, {"post_id": 7488, "ts": "2026-06-12T14:29:27Z", "hours": 2.3697, "text": "First Beta Release I did my first beta release to PyPI and tested out. It worked pretty well. Got some suggestions from Reddit as well. Writing Documentation , readme.md and improving the repo structure Wrote the entire documentation , reamd.md , changelog and contribution.md to improve the repo. First public release Release the first official version with some improvements. Currently working on adding microQR codes and security warnings for Crypto qr codes"}, {"post_id": 5720, "ts": "2026-06-09T16:52:32Z", "hours": 1.3011, "text": "First version release on pypi, run pip install betterqr to install. Gotta work on the readme and website now"}, {"post_id": 4947, "ts": "2026-06-08T16:03:47Z", "hours": 3.3081, "text": "Completed the base qr engine finally after hours of coding and debugging. Now it can generate basic qr codes with texts and links."}, {"post_id": 3592, "ts": "2026-06-06T16:20:00Z", "hours": 1.4939, "text": "Currently worked on the QR code engine that generates the QR code. Also did some CLI work to make it work. Created some GH workflows as well"}, {"post_id": 2795, "ts": "2026-06-05T16:42:30Z", "hours": 0.3283, "text": "Currently writing the core for the package. I have added the basic starter classes like the Wifi QR and contact QR"}]...
|
Title: BetterQR by @Dragon | Stardance
Devlogs:
C Title: BetterQR by @Dragon | Stardance
Devlogs:
Currently writing the core for the package. I have added the basic starter classes like the Wifi QR and contact QR
Currently worked on the QR code engine that generates the QR code. Also did some CLI work to make it work. Created some GH workflows as well
Completed the base qr engine finally after hours of coding and debugging. Now it can generate basic qr codes with texts and links.
First version release on pypi, run pip install betterqr to install. Gotta work on the readme and website now
First Beta Release I did my first beta release to PyPI and tested out. It worked pretty well. Got some suggestions from Reddit as well. Writing Documentation , readme.md and improving the repo structure Wrote the entire documentation , reamd.md , changelog and contribution.md to improve the repo. First public release Release the first official version with some improvements. Currently working on adding microQR codes and security warnings for Crypto qr codes
Working for the V2.0.0 I have successfully released the first version of it. So I have been working on adding some more features for the next version. MicroQR Support This is one of the most requested feature here. It is little tricky to make it work. But most logic for this has been programmed. SVG Optimization Drastically reduced SVG file size by merging modules into a single element. Security Added HMAC-SHA256 signing and bitwise XOR obfuscation to protect sensitive QR data. Safety Automatically detects low contrast between foreground and background. Includes auto_fix_contrast to force scannable colors.
Made some main changes and reorganization. Made a separate file for all the helper classes Secure algorithm for sensitive data. Researched some more stuff
Alot of progress today CI/CD Intergration. Implemented few tests that gets triggered during a push / pull request that tests if the generated QR codes are valid and working as intented. Results are sent to a private discord server via a webhook. ISO Complying Working on making the generated QR Codes fully compliant with the ISO Standards. (attached is a fail qr code LOL)
Debugging After introducing CI/CD Integrations and Test Scripts I have noticed all the generated QR codes fail or unreadable. Im currently tracking the issue behind this. And the main assumption is to something with the src/matrix.py or src/tables.py cause thats the main logic behind the validity. So im curretly digging through the code to find the bugs. I have fixed some of them but when i fix one bug two bug appears. 😭
Debugging 2 Finding errors in tables.py As my last devlog I identified that there is some errors in matrix and table files. I started looking through the table data and found some errors. bs.append(mode, 4) — always writes a 4-bit mode indicator. But for Micro QR, mode indicators are 1–4 bits depending on the version, not always 4 bits The _data_placement_order function skips col 6 (standard QR timing column). For Micro QR, col 0 is the timing column that should be skipped. But since col 0 and row 0 are already marked as reserved via timing pattern placement, the i f not reserved[row][c] check already handles it. The col == 6 skip is only needed because in standard QR col 6 is a function column that isn’t individually reserved — but since we now properly reserve col 0 for Micro QR, it’s already handled. The issue is the function always skips col 6, which in Micro QR is a valid data column. The Micro QR format info table has duplicate dict keys, so versions M1-M3 silently get clobbered by M4’s values. I’m still going through the code to find the errors first, Then I’ll start to fix them one-by-one cause I’m tired of fixing one and get another 2 bugs out of nowhere.
Fixing time I have identified all of the bugs (hopefully) and marked everything that has to be fixed. Fixed Stuff Current bit-stream builder in build_matrix writes all bits including the full 8-bit last data CW, then starts ECC. For M1/M3, the correct order is: 10 data CW (80 bits) + 4-bit partial + 6 ECC CW (48 bits). The current code writes all 17 CW as bits sequentially which gives the WRONG bit order.So I fixed the bit placement in build_matrix for M1/M3 fixed encode_data to use zero padding for Micro QR and handle the M1/M3 last-4-bit rule. Need to be fixed I need to fix _apply_mask to use Micro QR mask conditions (indices 1,4,6,7 of standard) for micro QR, and add a separate _MICRO_MASK_CONDITIONS list. Need to fix the _min_version capacity checker, which has the same wrong cc_bits values
CI/CD Writing the test scripts from scratch cause the last CI/CD pipelines are kind of glitched. Used claude a little this time to structure it. More Debugging Trying to fix some bugs, scrolling through stack overlay rn (yes stack overflow and not ai, IM NOT A BOOMER trust)
Testing and Fixing After running the new CI/CD Tests most pass but some fail. I traced back the issues and fixed half of them. Some issues I found 1, Micro QR auto-version: _min_version doesn’t enforce mode compatibility (M1=numeric only, M2=no byte, etc.) and uses wrong mode-indicator bit count in the needed formula. 2. WiFi/Geo/SMS/Phone/Email/VCard: The helper objects need to be passed as str() to QR() — the test is likely calling them directly. The __str__ methods need to produce correct strings, and some may have format issues. 3. Animations: GIF decode — need to verify each frame. 4. small_border: border=1 means only 4px quiet zone which may confuse decoders. (i have been fixing them but not produce a result yet)
Fixing failed tests I have ran multiple CI/CD tests and have noted that most animations and data type qr codes fail. I think its mostly from wrong placements. CLI Redirect : Redirect data -> output when a helper flag is active. SMS Protocol : Use sms: not smsto: . _write_format_info function bugs The _write_format_info function as two major bugs. Top-Right : uses bit_idx=i in write_bit (which applies 14-i ) but should write ( fmt >> i ) & 1 (vbit). The bit indices are swapped. Bottom Left : Only writes 7 rows (missing row size-8 ) ad uses wrong bit indices. These are only like 1/4 of the bugs. These were the easiest to document so listed them here.
Prepping to ship Doing stuff related to publishing the new version. Im noy going to be going in details cause Im at school
Prepping for shipping I initially planned to release this today, but realized something. The embedded logo thing and microqr is now failing on me. and Im lazy to fix this now so I’ll be fixingit tomorrow. Making a website So I thought why not make a website. So Im have been working on a small landing website with vanilla html and probably host it on GitHub Pages as well.
Locking in Bug hunting has started. I have been looking for any bugs in the hidden corners and have found many of them. Like the embedded logo QR codes throw an error , microQR m4 type just crashes everything,etc. I also have used the library in actual code to test as well. Landing Page Used my front-end skills to to the best and locked in and designed a good looking website for BetterQR. Looks fine for now. Will do some changes later. Made it a single page website cause easier load for Github Pages. (v2 is not out, expect it earlier this week)
Mega Lock-In The 9 hours was logged in span of the last week. Didn`t get to devlog due to internet outage here in Sri Lanka. Bugs Fixed in core.py _hex_to_rgb 3-char hex crash :#000, #FFF, #F00 etc. caused invalid literal for int() with base 16: '' . Added expansion of 3-char to 6-char before parsing .logo() crash: 'QR' object has no attribute '_version_size'``logo() tried to compute size_px = int(self._version_size * ratio) but _version_size doesn’t exist on the QR object at call time (the matrix hasn’t been built yet). Fixed to compute size_px lazily inside _get_logo_info() from module_count × box_size × ratio. logo(border=True) crash: invalid literal for int() with base 16: 'Tr' The _logo_border attribute stores a bool, but was passed directly as border_color to embed_image() which called _hex_to_rgb(True) → _hex_to_rgb("True") → crash. Fixed to pass "#000000" if self._logo_border else None. image_ops.py + animation.py — _hex_to_rgb None guard Added if not c: return (0, 0, 0) guard so passing None as a color never crashes. The _color() validator didn’t strip surrounding shell-added quotes from color strings like “#FF0000”, causing # to be split off the hex digits. Fixed to strip " and ' before processing. Changes Corrected Micro QR capacity table (all 8 version/ECC combos with accurate numeric/alpha/byte limits) Fixed logo() parameter docs (border is bool, not int)- Fixed double ```bash` in installation section Corrected SMS encoding protocol note (sms: not smsto:) Docs Added a more detailed info about MicroQR codes to README.md and DOCUMENTATION.md - Made a landing site with help of Claude.
Bug Patching (SES-1) Ran more tests and got feedback from ~15 people. Made them test the commands and try to find bugs. There were many bugs people were available to find. This is session focuses on fixing some of them Bugs that were fixed Micro QR silently corrupts data near capacity limits: In encoder.py , the capacity check treats every Micro QR data codeword as a full 8 bits — but for M1 and M3 symbols, the last data codeword is only a 4-bit nibble per spec. The checker accepts data that’s 4 bits too big, and the extra bits get silently truncated at render time. .logo() crashes every time: core.py builds a logo_info dict with a key "padding" , but matrix.py leads logo_info["padding_px"] , instant KeyError the moment anyone calls .logo(...). Terminal --terminal-style compact output has padding bugs asymmetric left/right padding and a stray extra row, so piping it anywhere that cares about exact dimensions breaks. There are some more bugs that will be fixed in the next session.
Bug Patching (SES-2.1) This will be my last patch of the day. Bug Styled Micro QR codes render wrong: Both the PNG and SVG renderers assume the standard 3-finder layout when deciding what counts as a “finder square” (for shape/color overrides). Micro QR only has one finder (top-left), so modules near the top-right and bottom-left corners get incorrectly forced into squares / finder-color under custom styling. This isnt fully fixed, Im having some hard time figuring out whats the main core issue. It is somewhat fixed.
SES-3 This session focuses on bug fixing , CI/CD improvement and some research about new features. New Features Research I realized for the past 2 weeks I have not implemented new features, and only fixed bugs and did improvements. I researched a little and looked into other QR libraries and looked for the stuff that the other libraries lack. I decided on some new features like Kanji Mode, there are few but I wont mention them here. (research time isnt logged cause I forgot but it was like an hour) Bug Fixing Did some bug fixing with the logo embedding QR code again. Its the only QR code type that fails the most. This time I guarantee it wont fail again. CI/CD Improvements Finally I realized for my test workflows I use pyzbar which is a qr code decoding library. But it does not support microqr decoding. So I had to switch to another libray called zxingcpp which does support what pyzbar has with microqr decoding support as well. I took some help from some people online regarding the tests and they help me make some test scripts. I broke down the main test script into smaller parts so Its easier for me and the readers. Conclusion Thats it for this session. Its like 95% completed for shipping and logged 50 hours as well. Just some final new features (mentioned above) and some documentation work and It v2 will be released. Thank you for reading the entire thing. I hope you’ll like it and find BetterQR useful. New features / suggestions / complaints are accepted in the replies via a DM on slack. I need some honest feedback.
The tables does not work on the stardance devlogs, idk why look at the attached image for the formatted table Benchmarking This session focuses on benchmarking BetterQR with other popular libraries like segno and qrcode . How it Compares This is a rough comparison between BetterQR , qrcode , and segno . Feature BetterQR qrcode segno Micro QR ✅ M1–M4 ❌ ✅ Kanji Mode ✅ ❌ ✅ Structured Append ✅ ❌ ✅ Logo Embedding ✅ Built-in ❌ (Manual PIL) ❌ (Manual) Module Shapes ✅ 8 Shapes ⚠️ Limited ❌ Gradients ✅ ❌ ❌ Animated GIF ✅ 10 Effects ❌ ❌ Frames & Labels ✅ Built-in ❌ ❌ Structured Data Helpers (WiFi, vCard, …) ✅ ❌ ⚠️ Via plugin BetterQR ’s primary aim is not to aggressively beat other libraries, but to provide a highly capable, reliable, and user-friendly alternative packed with creative options out of the box. Performance Metrics Payload Performance Benchmarks (2.0.0-rc) All times are in milliseconds (ms). Lower is better. | Payload Category | Size / Type | BetterQR | Segno | Standard qrcode | BetterQR Status | | :— | :— | :—: | :—: | :—: | :— | | URL | Tiny / Short | 6.88 | 7.19 | 5.90 | 🟢 Beats Segno / Competitive | | Medium | Standard | 22.44 | 21.89 | 20.03 | 🟡 Ties Segno (~2.5% diff) | | Large | V40 / Dense | 106.63 | 98.94 | 98.96 | 🔴 Behind by ~8% | | Very Large | Max Capacity | 209.00 | 197.00 | 204.00 | 🟡 Highly Competitive (~6% diff) | | SVG (Large) | Vector | 86.63 | ~0.56 | — | 🟡 Meaningful fix (was 104.66) | | SVG (Very Large) | Vector | 174.19 | ~1.50 | — | 🟡 Meaningful fix (was 211.84) | Known Limitations / Project Honesty To build clear engineering trust, here are the current structural limitations of BetterQR compared to older ecosystem veterans: Dependency Overhead: Depends heavily on Pillow for its extensive visual layouts and shapes, unlike segno , which is zero-dependency. Large Matrix Vectorization: Pure PNG generation lags behind by ~6-8% on maximum matrix dimensions (like V40) due to mask scoring loops running entirely in pure Python. Vector Vectorization Limits: While our SVG generation times dropped significantly in the latest release, pure string-building layout engines like segno still massively outperform us on massive vector layouts. Format Boundaries: The legacy EPS writer does not support logo embedding. Spec Edge Cases: Kanji mode and Structured Append are fully validated for standard QR codes, but are not yet implemented for Micro QR variants. rMQR (Rectangular Micro QR) is currently unsupported.
Session 5 More Benchmarking I have benchmarked more and repeatedly to get the accurate data. I used automated and manual tests. I found some people online who were down to help me benchmark it. For now the data isnt fully presentable. Will include in the next devlog or in the readme itself. New Brand I have decided on updating our logo. I designed a logo on Canva. I’ll probably use it as the official logo. I went for the purplish theme cause why not. The logo has a futuristic vibe to it ig. Better Landing Pages. Im currently working on a landing page for betterQR. The old one is fine but I didnt update it accordingly. So Im going to make a entirely new one. I have been looking for some inspo as well. Bug Fixing Did some little bug fixes and code cleanup
Grinding I forgot to devlog so this will be a big one lol. Im currently doing exams so I dont really have alot of time to think through new stuff. I mostly did some bug fixes , optimisation and working on the landing page. Bug Fixes Fixed some bugs related to the PDF output where sometime QR codes overlap and make an error. Fixed some bugs related to the command line. The frame generation does not work. Im actively working on it but Im not able to fix it yet. Optimisation Have been cutting down extra generation time with unnecssary checks. Have imporved alot in the generation time. This took the longest. Docs Edited the documentation.md with the new data. Edited the readme.md with new stuff. Working on a landing page for BetterQR. I also researched a little bit and asked for peoples opinion on this. Selected around 20 people to test this and give their honest review. Most feedbacks were great. Some requested for features and some found bugs.
Final Devlog of v2.0.0 (hopefully) This is the final devlog that I’ll be posting for v2.0.0 of betterqr. Hopefully you guys will give me some more ideas and features for a future version. What I did. Repository Cleanup Did a clean full push to the /src and have no uncommited changes. Pushed the webiste thats going be hosted on Github Pages. Ran some tests. Merged the feat/v2.0.0 into main branch. PyPi Configs Changes some paths in links to adjust with the branch merge. Modified some automations. Docs Cooked up a release log. Did some changes to the README.md and DOCUMENTATION.md Whats Next? This what I have been working for around 50 hours. Lets See what happens. Im plannning to maintain this as much as I can.
Fixing Changes Got a review saying the readme is too Ai. So I just wrote a readme from scratch. Cut down the Ai stuff and followed the guide and made this. Also changed the project banner to the terminal preview command cause the reviewer said so.
Ships:
(check the bottom of the ship msg before voting pls) BetterQR v2.0.0 Release Hey Everyone! I am super excited to announce BetterQR v2.0.0 . This release brings a ton of cool new stuff and makes BetterQR even better for your projects. What’s New & Awesome: Micro QR Codes! 🎉 Now you can generate tiny, super-efficient Micro QR codes (M1-M4) for when space is tight. Perfect for small labels or embedded projects. PDF & EPS Output: Need high-quality QR codes for print? You can now export your QR codes as professional PDF and EPS files! Structured Append: Got a huge message? Split it across up to 16 linked QR codes that can be scanned one after another to get the full data. Super powerful for big data! Faster Than Ever: We’ve made PNG generation about 40% faster ! Your QR codes will render quicker, leaving you more time for hacking. Rock-Solid Reliability: We’ve fixed some tricky bugs that could cause QR codes to break, especially for really big ones. Plus, our testing is way better now, so everything is super stable. Better International Support: New Kanji mode and UTF-8 declarations for global projects. Why this matters for your projects: BetterQR v2.0.0 means you can create more advanced, more reliable, and more visually stunning QR codes for whatever you’re building. Whether it’s a game, a website, or a physical project, BetterQR has your back. Get the Update! It’s easy to upgrade: pip install betterqr --upgrade Information for the voters The Logo isn’t AI generated. This was made fully in Canva. No, This is not a vibecoded project. There are some big devlogs that are around ~9h, I wasn’t able to devlog them as where I live there were serveral power outages, making me not able to use the internet and not to devlog them. This has been tested by more than 100 people now. Was only tested on Windows unfortunately. The “zero qr dependencies” mean there are no dependencies that generate the QR code. The generation logic is fully made by me. Pillow is used for PNG outputs and other small export options. The landing page is half-ai....
|
1792882136.3204722
|
1793746136.3204722
|
|
8246
|
proejct to build by @veera | Stardance
|
veera
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: proejct to build by @veera | Stardance
|
1792727427.789424
|
1793332227.789424
|
|
8247
|
New proj by @rishabhbhat20 | Stardance
|
rishabhbhat20
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: New proj by @rishabhbhat20 | Stardance
|
1793285281.665543
|
1793890081.665543
|
|
8248
|
Freendercover by @Sucrivore | Stardance
|
Sucrivore
|
0
|
14.88
|
0
|
[]
|
[{"post_id": 7415, "ts": "2026 [{"post_id": 7415, "ts": "2026-06-12T10:51:12Z", "hours": 5.3356, "text": "To add Mr. White, the role system had to be completely refactored. Previously, it simply assigned a different word to a random player. I switched to a much more suitable system, allowing the host player to choose a custom player distribution, with the caveat that it must be valid (for example, there must be more or the same number of civilians as undercovers and Mr. White). For the mobile app, a cool selector with sliders was needed, where the min, max, activated, and divisions had to adapt in real time to the constraints of the number of players and other selected values. To accommodate these new inputs, I also had to rebuild the host waiting page from scratch. I took the opportunity to tweak a few things and fix some bugs. And I realize that my file that manages multiplayer on the mobile app is an unreadable monster of more than 800 lines, but it’s my first flutter project so I don’t really know how to organize this big bag of interconnected knots… Anyway, I’m having fun."}, {"post_id": 5111, "ts": "2026-06-08T19:58:13Z", "hours": 0.6022, "text": "I have fixed some things : an infinite turns loop when more than 3 players join the game via network multi, a button showed to all players instead the host, a bad message, now builded directly by the api, and some typos"}, {"post_id": 3760, "ts": "2026-06-06T20:13:50Z", "hours": 2.0417, "text": "Remaked local mode menu"}, {"post_id": 3433, "ts": "2026-06-06T11:26:29Z", "hours": 6.8978, "text": "Creating my first Flutter app, a free version of Undercover"}]...
|
Title: Freendercover by @Sucrivore | Stardance
De Title: Freendercover by @Sucrivore | Stardance
Devlogs:
Creating my first Flutter app, a free version of Undercover
Remaked local mode menu
I have fixed some things : an infinite turns loop when more than 3 players join the game via network multi, a button showed to all players instead the host, a bad message, now builded directly by the api, and some typos
To add Mr. White, the role system had to be completely refactored. Previously, it simply assigned a different word to a random player. I switched to a much more suitable system, allowing the host player to choose a custom player distribution, with the caveat that it must be valid (for example, there must be more or the same number of civilians as undercovers and Mr. White). For the mobile app, a cool selector with sliders was needed, where the min, max, activated, and divisions had to adapt in real time to the constraints of the number of players and other selected values. To accommodate these new inputs, I also had to rebuild the host waiting page from scratch. I took the opportunity to tweak a few things and fix some bugs. And I realize that my file that manages multiplayer on the mobile app is an unreadable monster of more than 800 lines, but it’s my first flutter project so I don’t really know how to organize this big bag of interconnected knots… Anyway, I’m having fun....
|
1793436994.5683234
|
1794041794.5683234
|
|
8249
|
Untitled project by @domenico_pittari_9454 | Stard Untitled project by @domenico_pittari_9454 | Stardance...
|
domenico_pittari_9454
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: Untitled project by @domenico_pittari_9454 Title: Untitled project by @domenico_pittari_9454 | Stardance...
|
1793235293.9744134
|
1793840093.9744134
|
|
8250
|
My awesome macropad! by @rafaelmaradiaga4_8469 | S My awesome macropad! by @rafaelmaradiaga4_8469 | Stardance...
|
rafaelmaradiaga4_8469
|
0
|
0.0
|
0
|
[]
|
[]
|
Title: My awesome macropad! by @rafaelmaradiaga4_8 Title: My awesome macropad! by @rafaelmaradiaga4_8469 | Stardance...
|
1793191943.2967994
|
1793796743.2967994
|