contributions.tscircuit.com γ» tscircuit.com γ» Contribution Overviews γ» Changelogs
Generates weekly contribution overviews for tscircuit contributors. Check out all the contribution overviews here You can find AI-generated monthly changelogs in the changelogs directory
- All PRs in the tscircuit org are scanned/summarized via an LLM
- The LLM classifies each Diff/PR as into a set of attributes for scoring
- All the PRs, summaries, and classifications are organized into charts and tables for the website
Want to run locally? See the Development Section
The current week is shown below. There are 3 major sections:
pie
"tscircuit/tscircuit" : 8
"tscircuit/core" : 12
"tscircuit/tscircuit.com" : 29
"tscircuit/eval" : 20
"tscircuit/runframe" : 26
"tscircuit/tscircuit-autorouter" : 36
"tscircuit/circuit-to-canvas" : 2
"tscircuit/autorouting-dataset-01" : 2
"tscircuit/circuit-to-svg" : 3
"tscircuit/svg.tscircuit.com" : 1
"tscircuit/circuit-json-to-gerber" : 7
"tscircuit/kicad-to-circuit-json" : 11
"tscircuit/props" : 4
"tscircuit/kicadts" : 6
"tscircuit/jscad-electronics" : 1
"tscircuit/3d-viewer" : 3
"tscircuit/docs" : 1
"tscircuit/pver" : 1
"tscircuit/schematic-trace-solver" : 3
"tscircuit/fabrication-operator-ui" : 3
"tscircuit/lbrnts" : 1
"tscircuit/krt-wasm" : 2
"tscircuit/breakout-point-solver" : 7
"tscircuit/checks" : 2
"tscircuit/tiny-hypergraph" : 3
"tscircuit/dataset-srj16-bga-breakouts" : 1
"tscircuit/sparkfun-boards" : 1
"tscircuit/circuit-json-to-kicad" : 1
| Contributor | π³ Major | π Minor | π Tiny | Score | β | Discussion Contributions |
|---|---|---|---|---|---|---|
| ShiboSoftwareDev | 5 | 4 | 8 | 42.5 | ββ | 0πΉ 0πΆ 0π |
| techmannih | 2 | 9 | 6 | 32 | ββ | 0πΉ 0πΆ 0π |
| Abse2001 | 5 | 1 | 2 | 32 | ββ | 0πΉ 0πΆ 0π |
| imrishabh18 | 6 | 2 | 2 | 31 | ββ | 0πΉ 0πΆ 0π |
| AnasSarkiz | 4 | 2 | 3 | 27 | ββ | 0πΉ 0πΆ 0π |
| MustafaMulla29 | 3 | 3 | 7 | 26 | ββ | 0πΉ 0πΆ 0π |
| seveibar | 6 | 0 | 1 | 26 | ββ | 0πΉ 0πΆ 0π |
| 0hmX | 3 | 0 | 3 | 16 | ββ | 0πΉ 0πΆ 0π |
| rushabhcodes | 2 | 1 | 3 | 14 | ββ | 0πΉ 0πΆ 0π |
| tscircuitbot | 0 | 0 | 91 | 12.5 | ββ | 0πΉ 0πΆ 0π |
| Sang-it | 1 | 2 | 2 | 10 | β | 0πΉ 0πΆ 0π |
| mohan-bee | 2 | 0 | 1 | 10 | β | 0πΉ 0πΆ 0π |
| itisrohit | 2 | 0 | 0 | 8 | β | 0πΉ 0πΆ 0π |
| Msa360 | 0 | 2 | 0 | 4 | β | 0πΉ 0πΆ 0π |
| shehaban | 1 | 0 | 0 | 4 | β | 0πΉ 0πΆ 0π |
| Contributor | Reviewed PRs | Rejections | Approvals | SPR |
|---|---|---|---|---|
| techmannih | 10 | 0 | 10 | 100.0% |
| MustafaMulla29 | 6 | 0 | 7 | 100.0% |
| ShiboSoftwareDev | 5 | 0 | 5 | 100.0% |
| rushabhcodes | 5 | 0 | 6 | 100.0% |
| imrishabh18 | 4 | 1 | 4 | 75.0% |
| Sang-it | 3 | 1 | 2 | 66.7% |
| mohan-bee | 2 | 0 | 2 | 100.0% |
| Msa360 | 2 | 0 | 2 | 100.0% |
| 0hmX | 2 | 0 | 2 | 100.0% |
| AnasSarkiz | 1 | 0 | 1 | 100.0% |
| itisrohit | 1 | 0 | 1 | 100.0% |
techmannih SPR PRs (10)
- #2305 Fix jlcpcb CAD fallback for library footprints
- #562 Fix PCB text anchor alignment from rendered glyph bounds
- #564 fix knockout text anchor alignment
- #563 Render route vias from trace points
- #106 support rounded SMT pad corner-radius apertures
- #101 Fix polygon plated hole Gerber support
- #103 fix rotated pill smtpad gerber rotation
- #1479 Add JLCPCB C2040 preview regression coverage
- #94 chore: update tscircuit and route via snapshots
- #238 Use text geometry for anchor alignment
MustafaMulla29 SPR PRs (6)
- #2311 Add breakout repros and autorouting end-phase stack snapshots
- #2312 Add autorouting start SRJ stack snapshots for breakout repros
- #151 Fix false missing PCB trace errors for physically routed source traces
- #10 Fix same-net routed traces being treated as obstacles in KRT
- #4 Add breakout point spacing solver with clearer QFN snapshots
- #2 Add initial breakout solver with ray-boundary placement
ShiboSoftwareDev SPR PRs (5)
rushabhcodes SPR PRs (5)
- #2330 Use female CAD footprints for pinheader components with gender="female"
- #2316 Normalize through_obstacle autorouter segments before persisting pcb_trace.route
- #293 Fix pinrow8 female footprint snapshot framing by adding explicit render camera controls
- #292 Center multi-row female header footprints around the component origin
- #3473 Handle react-error-boundary unknown fallback errors in RunFrame error boundaries and update @tscircuit/3d-viewer to version 0.0.560
imrishabh18 SPR PRs (4)
- #3479 Add the fake endpoits for /orders/*.ts
- #1210 fix: Don't send the routes which have pre placed via's to the later cleanup solver
- #1218 fix: Increasing the effort level was preventing globalDrcForceImprovementSolver to use the preplaced via's
- #1203 Add Pipeline8 for routing the board with pre placed via's
Sang-it SPR PRs (3)
mohan-bee SPR PRs (2)
Msa360 SPR PRs (2)
AnasSarkiz SPR PRs (1)
- #37 Introduce LightBurn Content Offsetting API
itisrohit SPR PRs (1)
- #3461 fix: preserve full redirect URL (path, query, and hash) on login and session timeout
Note: AI evaluates PRs and assigns 1-3 star ratings automatically. 4 and 5 star ratings require manual staff review.
- πΉ Normal Comments: Basic participation with minimal effort
- πΆ Great Informative Comments: Thoughtful participation that adds value
- π Incredible Comments: Exceptional participation with high-quality content
| Contributor | Reviews Received | Approvals Received | Rejections Received | Approvals | Rejections Given | PRs Opened | PRs Merged | Issues Created |
|---|---|---|---|---|---|---|---|---|
| onchito-walks | 0 | 0 | 0 | 0 | 0 | 4 | 0 | 0 |
| AlissonBecker1 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| Mandeep0402 | 0 | 0 | 0 | 0 | 0 | 3 | 0 | 0 |
| atukunare | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0 |
| junn-dev | 0 | 0 | 0 | 0 | 0 | 11 | 0 | 0 |
| ChandraDvitiyah | 0 | 0 | 0 | 0 | 0 | 3 | 0 | 0 |
| kayeve | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| RoyZhao1991 | 0 | 0 | 0 | 0 | 0 | 29 | 0 | 0 |
| Myrarc | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| fabicholas | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| kodahhhhh | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| anil08607 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| JacKane21 | 3 | 0 | 0 | 0 | 0 | 8 | 0 | 0 |
| kpoxo6op | 0 | 0 | 0 | 0 | 0 | 7 | 0 | 0 |
| harrrshall | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0 |
| ZYM1160501013 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| Adamchaua | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| mjzs13 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0 |
| NguyenTienDat-GTR | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0 |
| 2bf | 0 | 0 | 0 | 0 | 0 | 11 | 0 | 0 |
| absalonCRC | 0 | 0 | 0 | 0 | 0 | 9 | 0 | 0 |
| Begarudev | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| SimplyRayYZL | 0 | 0 | 0 | 0 | 0 | 8 | 0 | 0 |
| ajjucoder | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| tscircuitbot | 0 | 0 | 0 | 0 | 0 | 122 | 91 | 0 |
| techmannih | 23 | 15 | 0 | 0 | 0 | 22 | 17 | 0 |
| tomaspinkas-com | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| kennedydqz-del | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0 |
| ShiboSoftwareDev | 10 | 10 | 0 | 7 | 0 | 21 | 19 | 0 |
| Heyzerohey | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| MINBBBIGcode | 2 | 0 | 0 | 0 | 0 | 3 | 0 | 0 |
| NightVibes33 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0 |
| voltrace-io | 0 | 0 | 0 | 0 | 0 | 8 | 0 | 0 |
| ar-amk | 0 | 0 | 0 | 0 | 0 | 6 | 0 | 0 |
| dukunline-cyber | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| cwklurks | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| rushabhcodes | 23 | 9 | 0 | 1 | 0 | 9 | 6 | 0 |
| MustafaMulla29 | 19 | 7 | 0 | 2 | 2 | 15 | 13 | 0 |
| mohan-bee | 6 | 5 | 0 | 1 | 0 | 4 | 3 | 0 |
| zergzorg | 0 | 0 | 0 | 0 | 0 | 6 | 0 | 0 |
| seveibar | 1 | 0 | 0 | 45 | 1 | 16 | 10 | 0 |
| g8rr5dg2p7-svg | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| khozakhulile27-netizen | 0 | 0 | 0 | 0 | 0 | 5 | 0 | 0 |
| silktravelsadmin | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| cuongwf1711 | 0 | 0 | 0 | 0 | 0 | 3 | 0 | 0 |
| yuetongli-PL | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| Msa360 | 5 | 5 | 0 | 0 | 0 | 2 | 2 | 0 |
| Abse2001 | 12 | 6 | 0 | 8 | 0 | 13 | 8 | 0 |
| ktk-research-9185 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| LaoChouPro | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| landiscode | 0 | 0 | 0 | 0 | 0 | 7 | 0 | 0 |
| leninug | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| GX88 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| swhan0329 | 0 | 0 | 0 | 0 | 0 | 39 | 0 | 0 |
| Finesssee | 1 | 0 | 0 | 0 | 0 | 2 | 0 | 0 |
| ayskobtw-lil | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| jeffreybarts-max | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| rtbogt11-droid | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| shriram-svg | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| maiqiu-cat | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0 |
| swright7001 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| itsdior01 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| sdibella | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| Charolex | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| illgitthat | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| isiliconx | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| matcldr | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| Qian001A | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0 |
| liangtovi-debug | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0 |
| Sang-it | 30 | 3 | 1 | 0 | 0 | 11 | 5 | 0 |
| garrettparker245-code | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0 |
| imrishabh18 | 5 | 4 | 0 | 6 | 2 | 11 | 10 | 0 |
| AnasSarkiz | 6 | 6 | 0 | 4 | 0 | 9 | 9 | 0 |
| afkjdn-bombadeel | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0 |
| 100more | 0 | 0 | 0 | 0 | 0 | 3 | 0 | 0 |
| shootingallday | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0 |
| iFaceTheWind | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| yeguacelestial | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| itisrohit | 9 | 2 | 3 | 0 | 0 | 8 | 2 | 0 |
| a1local | 0 | 0 | 0 | 0 | 0 | 3 | 0 | 0 |
| Fire-Fairy84 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| juanfgaviriac | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0 |
| codeaustral-oss | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| Deepthinkr | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| Yassinbrine | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| ProtonsAndElectrons | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0 |
| ryonakae | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| Haenlein1 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0 |
| acdunbrack | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| chriszlr | 0 | 0 | 0 | 0 | 0 | 5 | 0 | 0 |
| hanjav | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| VOVANQUOCBAO | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0 |
| demetacrypto | 4 | 0 | 0 | 0 | 0 | 2 | 0 | 0 |
| 1aday | 5 | 0 | 0 | 0 | 0 | 2 | 0 | 0 |
| jing11223344 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| robin081412108-coder | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| zidhannnn | 2 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| nyashahama | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0 |
| MinhThienNguyen040905 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0 |
| 7vf7gcpwsy-create | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| firewine | 4 | 0 | 0 | 0 | 0 | 2 | 0 | 0 |
| hhyunbreh | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| JPL-Jarvis | 0 | 0 | 0 | 0 | 0 | 44 | 0 | 0 |
| TruongSz3 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| Globalpropertyguy | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0 |
| MolhamHamwi | 6 | 0 | 0 | 0 | 0 | 4 | 0 | 0 |
| robsltd | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| mjshanker | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0 |
| Okidoki9903 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| 6c696e68 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| Neabigmo | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| SadmanPinon | 0 | 0 | 0 | 0 | 0 | 5 | 0 | 0 |
| sk8kpwhrjt-creator | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| jiangwen1115-ui | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| kiet1i38 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| aaronlab | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| itsjustet-lab | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| khanwang009 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| xfocus3 | 0 | 0 | 0 | 0 | 0 | 7 | 0 | 0 |
| steves83 | 0 | 0 | 0 | 0 | 0 | 4 | 0 | 0 |
| ZainKazmiii | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| Aquileo-hub | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| sonnymay | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| DukeDawg | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| ya-nsh | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0 |
| KLSGG | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| enormusdapp-prog | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| FigLangHQ | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| Wmedrado | 2 | 0 | 0 | 0 | 0 | 2 | 0 | 0 |
| mara-241 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| eric-cheong | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0 |
| MANFIT7 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| surim0n | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0 |
| Meliwat | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| luoshui-coder | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| dhrubasumatary | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| uniquenesslabs | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| emulatronicGIT | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| yangsori | 0 | 0 | 0 | 0 | 0 | 4 | 0 | 0 |
| haocyan0723-code | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0 |
| dekacchi | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0 |
| nakulsingla2020-hash | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| nguyenducshuy | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| hikali123456789 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| FrancisPhan0105 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| lukaIvanic | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| EnesBrt | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| mg272011 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| thepianistdirector | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| lloupp | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| kebanks2 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0 |
| Spina7 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| arthurgervais | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| Misch369 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| nguyentamdat | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0 |
| 0hmX | 4 | 2 | 0 | 1 | 1 | 13 | 8 | 0 |
| a25955813-cloud | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| shehaban | 2 | 1 | 0 | 0 | 0 | 1 | 1 | 0 |
| bugi952 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| danbr | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| haki203 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| hirosisa | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0 |
| OsirisLord | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| brain-nrds | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| ColumbusLabs | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| anytimeatvibe | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| blackblue1 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| JorisViaudQuantAI | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| jamilahmadzai | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| tanmayxchoudhary | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| qkzdreamer | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| Mohamed-elgypaly | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| akmittal006 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| morganschp | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| PassivelyWealthyDad | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0 |
| patchplain | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| mauricemohr88-debug | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| Thanhdn1984 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| driptux | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| kennynwokoye | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| thebasedcapital | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| HunterCML | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| partyplatter08-lab | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| Bilal-Lodhi | 6 | 0 | 2 | 0 | 0 | 2 | 0 | 0 |
π Tiny Contributions (8)
| PR # | Impact | Contributor | Description |
|---|---|---|---|
| #3251 | π Tiny | tscircuitbot | Automated package update |
| #3252 | π Tiny | tscircuitbot | Automated package update |
| #3254 | π Tiny | tscircuitbot | Automated package update |
| #3250 | π Tiny | tscircuitbot | Automated package update |
| #3255 | π Tiny | tscircuitbot | Automated package update |
| #3256 | π Tiny | tscircuitbot | Updates the package version from 0.0.1777 to 0.0.1778 in package.json |
| #3253 | π Tiny | techmannih | Updates the circuit-to-svg dependency version from 0.0.345 to 0.0.350 in package.json |
| #3249 | π Tiny | techmannih | Updates the circuit-to-svg dependency version from 0.0.345 to 0.0.349 in package.json |
| PR # | Impact | Rating | Contributor | Description |
|---|---|---|---|---|
| #2318 | π³ Major | βββ | ShiboSoftwareDev | Adds support for autoroutingphase connection... and connections... to assign routing phases and reroute selected traces by endpoint selector. |
| #2330 | π³ Major | βββ | rushabhcodes | Fixes a core rendering bug where pinheader components with genderfemale did not propagate that gender into the implied CAD footprint selection. |
| #2316 | π³ Major | βββ | rushabhcodes | Fixes a core autorouting bug where local autorouter output could write through_obstacle segments directly into pcb_trace.route, even though the public route format should expose those segments as through_pad. |
| #2320 | π³ Major | βββ | imrishabh18 | Changes the autorouter to utilize AutoroutingPipelineSolver8 when the laser_prefab preset is selected. |
| #2305 | π Minor | ββ | techmannih | Fixes 3D rendering for library footprints that do not provide a CAD model by falling back cleanly to a bounding box instead of surfacing a parser error. |
| #2317 | π Minor | ββ | Sang-it | Adds netLabelWidth to direct connections and updates the schematic trace solver. |
| #2324 | π Minor | ββ | AnasSarkiz | Fixes handle through_pad in circuit-to-svg rendering. |
| #2311 | π Minor | ββ | MustafaMulla29 | Adds tests for breakout routing and autorouting end-phase stack snapshots, enhancing the testing framework for autorouting functionality. |
| #2312 | π Minor | ββ | MustafaMulla29 | Adds autorouting phase IO stack snapshots for breakout repros in the testing framework |
π Tiny Contributions (3)
| PR # | Impact | Contributor | Description |
|---|---|---|---|
| #2322 | π Tiny | tscircuitbot | Updates the tscircuitchecks package from version 0.0.130 to 0.0.131 in the package.json file. |
| #2326 | π Tiny | tscircuitbot | Updates the tscircuitchecks package from version 0.0.131 to 0.0.132 |
| #2328 | π Tiny | Sang-it | Adds a test case for reproducing a rendering issue related to circuit traces in the tscircuit library. |
| PR # | Impact | Rating | Contributor | Description |
|---|---|---|---|---|
| #3487 | π³ Major | βββ | imrishabh18 | Removes the order steps and related state management from the database schema and API, simplifying the order processing logic. |
| #3481 | π³ Major | βββ | imrishabh18 | Adds a new order success page that displays order confirmation details and allows users to navigate to their orders or back to the home page. |
| #3461 | π³ Major | βββ | itisrohit | Fixes the issue where logging back in after a session timeout discards the users location state, search parameters, or hash fragments, ensuring users are redirected back to their intended location with full URL structure preserved. |
| #3489 | π Minor | ββ | imrishabh18 | Fixes the checkout process by ensuring users are redirected to the correct Stripe checkout page URL after order creation. |
| #3479 | π Minor | ββ | imrishabh18 | Adds fake endpoints for order creation and retrieval, integrating with a mock Stripe checkout session. |
π Tiny Contributions (24)
| PR # | Impact | Contributor | Description |
|---|---|---|---|
| #3491 | π Tiny | tscircuitbot | Automated package update |
| #3490 | π Tiny | tscircuitbot | Updates the tscircuiteval package to version 0.0.865 in package.json |
| #3488 | π Tiny | tscircuitbot | Automated package update to version 0.0.211 |
| #3470 | π Tiny | tscircuitbot | Updates the tscircuitrunframe package from version 0.0.1985 to 0.0.1986 |
| #3464 | π Tiny | tscircuitbot | Updates the tscircuitrunframe package from version 0.0.1982 to 0.0.1983 |
| #3468 | π Tiny | tscircuitbot | Updates the tscircuitrunframe package from version 0.0.1984 to 0.0.1985 |
| #3483 | π Tiny | tscircuitbot | Updates the tscircuitrunframe package from version 0.0.1992 to 0.0.1993 |
| #3469 | π Tiny | tscircuitbot | Automated package update |
| #3472 | π Tiny | tscircuitbot | Updates the tscircuitrunframe package from version 0.0.1986 to 0.0.1987 |
| #3478 | π Tiny | tscircuitbot | Automated package update |
| #3477 | π Tiny | tscircuitbot | Updates the tscircuiteval package to version 0.0.863 in the package.json file. |
| #3484 | π Tiny | tscircuitbot | Automated package update |
| #3465 | π Tiny | tscircuitbot | Updates the version of the tscircuiteval package from 0.0.856 to 0.0.857 in package.json |
| #3463 | π Tiny | tscircuitbot | Automated package update |
| #3476 | π Tiny | tscircuitbot | Automated package update |
| #3474 | π Tiny | tscircuitbot | Automated package update |
| #3471 | π Tiny | tscircuitbot | Automated package update |
| #3482 | π Tiny | tscircuitbot | Updates the tscircuitrunframe package from version 0.0.1991 to 0.0.1992 |
| #3466 | π Tiny | tscircuitbot | Automated package update |
| #3480 | π Tiny | tscircuitbot | Automated package update to version 0.0.210 |
| #3467 | π Tiny | tscircuitbot | Automated package update |
| #3475 | π Tiny | tscircuitbot | Updates the tscircuiteval package from version 0.0.860 to 0.0.862 |
| #3485 | π Tiny | tscircuitbot | Updates the tscircuitrunframe package from version 0.0.1993 to 0.0.1994 |
| #3462 | π Tiny | imrishabh18 | Removes deprecated fake API endpoints for order files and quotes, cleaning up the codebase and eliminating unused functionality. |
π Tiny Contributions (20)
| PR # | Impact | Contributor | Description |
|---|---|---|---|
| #2734 | π Tiny | tscircuitbot | Automated package update |
| #2733 | π Tiny | tscircuitbot | Automated package update |
| #2719 | π Tiny | tscircuitbot | Automated package update |
| #2713 | π Tiny | tscircuitbot | Updates the version of tscircuitcore from 0.0.1262 to 0.0.1263 and tscircuitschematic-trace-solver from 0.0.57 to 0.0.60 in package.json |
| #2716 | π Tiny | tscircuitbot | Updates the version of the tscircuitcore package from 0.0.1263 to 0.0.1264 in package.json |
| #2721 | π Tiny | tscircuitbot | Automated package update |
| #2711 | π Tiny | tscircuitbot | Automated package update |
| #2710 | π Tiny | tscircuitbot | Automated package update |
| #2730 | π Tiny | tscircuitbot | Automated package update |
| #2727 | π Tiny | tscircuitbot | Automated package update |
| #2723 | π Tiny | tscircuitbot | Automated package update |
| #2714 | π Tiny | tscircuitbot | Automated package update |
| #2731 | π Tiny | tscircuitbot | Automated package update |
| #2717 | π Tiny | tscircuitbot | Automated package update |
| #2724 | π Tiny | tscircuitbot | Automated package update |
| #2709 | π Tiny | tscircuitbot | Automated package update |
| #2708 | π Tiny | tscircuitbot | Updates package dependencies to their latest versions in package.json |
| #2728 | π Tiny | tscircuitbot | Automated package update |
| #2718 | π Tiny | techmannih | Updates the circuit-to-svg dependency version from 0.0.345 to 0.0.348 in package.json |
| #2720 | π Tiny | techmannih | Updates the circuit-to-svg dependency to version 0.0.349 in package.json |
π Tiny Contributions (26)
| PR # | Impact | Contributor | Description |
|---|---|---|---|
| #3499 | π Tiny | tscircuitbot | Automated package update |
| #3498 | π Tiny | tscircuitbot | Updates the tscircuiteval package from version 0.0.864 to 0.0.865 in the package.json file. |
| #3486 | π Tiny | tscircuitbot | Updates the circuit-json-to-gerber package from version 0.0.64 to 0.0.67 |
| #3471 | π Tiny | tscircuitbot | Updates the tscircuiteval package from version 0.0.855 to 0.0.856 in the package.json file. |
| #3474 | π Tiny | tscircuitbot | Updates the tscircuiteval package from version 0.0.856 to 0.0.857 in the package.json file. |
| #3484 | π Tiny | tscircuitbot | Updates the tscircuiteval package version from 0.0.861 to 0.0.862 in package.json |
| #3492 | π Tiny | tscircuitbot | Updates the circuit-json-to-gerber package from version 0.0.68 to 0.0.70 |
| #3487 | π Tiny | tscircuitbot | Automated package update |
| #3479 | π Tiny | tscircuitbot | Automated package update |
| #3480 | π Tiny | tscircuitbot | Updates the tscircuiteval package from version 0.0.859 to 0.0.860 in the package.json file. |
| #3483 | π Tiny | tscircuitbot | Automated package update |
| #3478 | π Tiny | tscircuitbot | Updates the tscircuiteval package to version 0.0.859 in the package.json file. |
| #3493 | π Tiny | tscircuitbot | Automated package update |
| #3481 | π Tiny | tscircuitbot | Automated package update |
| #3488 | π Tiny | tscircuitbot | Updates the tscircuiteval package to version 0.0.863 in the package.json file. |
| #3475 | π Tiny | tscircuitbot | Automated package update |
| #3491 | π Tiny | tscircuitbot | Automated package update |
| #3495 | π Tiny | tscircuitbot | Automated package update |
| #3477 | π Tiny | tscircuitbot | Automated package update |
| #3482 | π Tiny | tscircuitbot | Updates the tscircuiteval package to version 0.0.861 in the package.json file. |
| #3485 | π Tiny | tscircuitbot | Automated package update |
| #3472 | π Tiny | tscircuitbot | Automated package update |
| #3476 | π Tiny | tscircuitbot | Updates the tscircuiteval package to version 0.0.858 in the package.json file. |
| #3494 | π Tiny | tscircuitbot | Updates the tscircuiteval package to version 0.0.864 in the package.json file. |
| #3490 | π Tiny | tscircuitbot | Updates the circuit-json-to-gerber package from version 0.0.67 to 0.0.68 |
| #3489 | π Tiny | tscircuitbot | Automated package update |
| PR # | Impact | Rating | Contributor | Description |
|---|---|---|---|---|
| #1246 | π³ Major | βββ | ShiboSoftwareDev | before: img width994 height1042 altimage srchttps:github.comuser-attachmentsassetsc6075912-a771-475f-a863-791219e5ab9e after: img width1204 height1018 altimage srchttps:github.comuser-attachmentsassetsd5b04b30-f11d-4023-ae10-8daff999ab04 Pipeline 7 was treating every componentId as a component region, which caused ordinary passivesconnectors in circuit-json-derived SRJ to produce thousands of extra topology regions. This narrows component detection to BGA-like dense pad grids, keeps non-BGA component pads in the global topology, and adds a USB-C repro asserting the topology no longer creates non-BGA component regions. |
| #1210 | π³ Major | βββ | imrishabh18 | Fixes the autorouting process by preventing routes with pre-placed vias from being sent to the cleanup solver, ensuring more accurate routing results. |
| #1218 | π³ Major | βββ | imrishabh18 | Fixes the issue where increasing the effort level prevents the globalDrcForceImprovementSolver from utilizing preplaced vias, leading to suboptimal DRC score layer transitions. |
| #1203 | π³ Major | βββ | imrishabh18 | This pull request introduces Pipeline8, a new routing algorithm for the autorouter that utilizes pre-placed vias to enhance routing efficiency and accuracy. The implementation includes new test fixtures and a bug report for validation. |
| #1206 | π³ Major | βββ | itisrohit | Fixes a bug in the useless-via-removal solver that incorrectly flagged segments as colliding with adjacent traces or obstacles, preventing the removal of redundant vias in crowded routing areas. |
| #1247 | π³ Major | βββ | seveibar | This pull request introduces a new method for converting circuit JSON to simple route JSON using the core library. It also adds a KiCad Arduino Leonardo PCB file for testing purposes. The changes include significant refactoring of the conversion logic and the addition of new utility functions to handle the conversion process more effectively. The PR aims to improve the autorouting capabilities of the library by ensuring better compatibility with KiCad files. |
| #1231 | π³ Major | βββ | seveibar | Adds functionality to upload KiCad PCB files and convert them to Simple Route JSON format for use in the autorouter. |
| #1216 | π³ Major | βββ | seveibar | Enhances the tiny-hypergraph optimizer to accept the best solution instead of failing after reaching the maximum iterations, and introduces a penalty for duplicate ports to improve routing performance. |
| #1214 | π³ Major | βββ | seveibar | Adds a new GrowShrinkHighDensityIntraNodeSolver to improve high-density autorouting by allowing dynamic resizing of nodes during the routing process. |
| #1228 | π³ Major | βββ | seveibar | Fixes autorouting failure when encountering impossible single-layer crossings due to invalid geometries. |
| #1224 | π³ Major | βββ | 0hmX | Preserves component-region shared edge segments during the necessary cramped port point solving process in the autorouting pipeline. |
| #1199 | π³ Major | βββ | 0hmX | Adds a new portPointsInPairs field to NodeWithPortPoint to clarify connections between ports and nodes, enhancing the autorouting process. |
| #1200 | π³ Major | βββ | 0hmX | https:github.comtscircuittscircuit-autorouterpull1175changes |
| #1226 | π³ Major | βββ | Abse2001 | Removes large vias from the srj16 dataset to improve routing efficiency and design integrity. |
| #1205 | π Minor | ββ | ShiboSoftwareDev | Adds structured benchmark failure summaries so solver failures are separated from relaxed DRC failures, records DRC error countstypesmessages per sample, adds top solver failure buckets to textJSON output, and scales sample timeouts by concurrency to avoid misattributing parallel wall-clock contention as phase failures. |
π Tiny Contributions (21)
| PR # | Impact | Contributor | Description |
|---|---|---|---|
| #1242 | π Tiny | tscircuitbot | Automated package update |
| #1238 | π Tiny | tscircuitbot | Automated package update |
| #1234 | π Tiny | tscircuitbot | Automated package update |
| #1233 | π Tiny | tscircuitbot | Automated package update |
| #1232 | π Tiny | tscircuitbot | Automated package update |
| #1223 | π Tiny | tscircuitbot | Automated package update |
| #1212 | π Tiny | tscircuitbot | Automated package update |
| #1227 | π Tiny | tscircuitbot | Automated package update |
| #1211 | π Tiny | tscircuitbot | Automated package update |
| #1229 | π Tiny | tscircuitbot | Automated package update |
| #1215 | π Tiny | tscircuitbot | Automated package update |
| #1219 | π Tiny | tscircuitbot | Automated package update |
| #1225 | π Tiny | tscircuitbot | Automated package update |
| #1207 | π Tiny | tscircuitbot | Automated package update |
| #1245 | π Tiny | ShiboSoftwareDev | Switches the welcome page KiCad import URL to jscdn.tscircuit.com for faster updates. |
| #1221 | π Tiny | ShiboSoftwareDev | Re-renders oversized benchmark PR comments with unchanged passing PR samples omitted, while preserving failures, DRC failures, regressions, improvements, and missing-main rows. |
| #1198 | π Tiny | ShiboSoftwareDev | This pull request adds more samples to the reroute dataset 15, increasing the sample count from 25 to 55. It introduces new datasets and modifies existing sample data, including adjustments to the retained trace counts and ripped connection counts for various samples. The changes aim to enhance the testing and validation of the autorouting functionality. |
| #1208 | π Tiny | imrishabh18 | Adds a reproduction for a failure in autorouting pipeline 8 with a new test and fixture files. |
| #1235 | π Tiny | seveibar | Changes the URL for the kicad-to-circuit-json converter to use cdnjs.tscircuit.com for faster updates. |
| #1241 | π Tiny | 0hmX | Change autorouting-dataset-01 to use git URL instead of versioning. |
| #1222 | π Tiny | 0hmX | Adds Pipeline7 Multi Graph to the autorouting menu bar options and includes its solver in the pipeline solvers list. |
| PR # | Impact | Rating | Contributor | Description |
|---|---|---|---|---|
| #238 | π Minor | ββ | techmannih | Replaces approximate text anchor offsets with geometry derived from actual glyph outline bounds, ensuring accurate text alignment and consistency in rendering knockout backgrounds and stroked text. |
π Tiny Contributions (1)
| PR # | Impact | Contributor | Description |
|---|---|---|---|
| #239 | π Tiny | tscircuitbot | Automated package update |
π Tiny Contributions (2)
| PR # | Impact | Contributor | Description |
|---|---|---|---|
| #117 | π Tiny | tscircuitbot | Automated package update |
| #120 | π Tiny | 0hmX | Adds a preview component for visualizing circuit designs using React and Tailwind CSS, along with necessary configuration files. |
| PR # | Impact | Rating | Contributor | Description |
|---|---|---|---|---|
| #562 | π³ Major | βββ | techmannih | Summary This fixes the remaining PCB text anchor alignment offset in circuit-to-svg by deriving anchor placement from the rendered alphabet path geometry instead of from coarse widthheight box math. What was wrong Copper text and knockout text were being anchored from centered layout dimensions rather than the actual rendered glyph bounds. That worked for some alignments, but top_, bottom_, and side-aligned cases could still land slightly off because the alignment math was not using the true outline extents. During the first pass of the fix, regular silkscreen text was also moved onto the alphabet stroke renderer. That improved consistency, but it changed the visible letterforms, which was a regression. What changed added a shared helper for PCB alphabet text geometry compute text bounds from the rendered path segments themselves derive anchor offsets from those real bounds for copper text and knockout text use the shared geometry in both copper text and silkscreen knockout rendering remove the older centered widthheight anchor helper keep regular silkscreen text on the existing SVG text renderer so its visual design stays unchanged refresh affected snapshots to match the corrected placement Why this approach This keeps the fix in the rendering model instead of layering more special-case offsets on top: one source of truth for alphabet-path text bounds anchor placement follows the real rendered shape knockout rectangles inherit the same geometry and stay aligned with the text they mask regular silkscreen text keeps its original appearance Impact fixes residual sidetopbottom anchor drift for PCB copper text and knockout text keeps silkscreen text visuals stable makes future PCB text alignment changes easier to reason about because the geometry and anchoring logic are centralized Validation sh bun test --timeout 30000 Passed: 207 pass, 0 fail |
| #564 | π Minor | ββ | techmannih | Fixes knockout text alignment so it anchors against the outer padded knockout bounds instead of the inner glyph bounds. |
| #563 | π Minor | ββ | techmannih | Render visible PCB via geometry for pcb_trace.route entries with route_type: via when the circuit JSON does not already include a matching top-level pcb_via element, and remove degenerate zero-length trace segments around via waypoints. |
| PR # | Impact | Rating | Contributor | Description |
|---|---|---|---|---|
| #1479 | π³ Major | βββ | techmannih | This pull request adds regression coverage for the JLCPCB C2040 preview feature, ensuring that any future changes do not break existing functionality. It includes updates to the request handling logic, tests for the new feature, and necessary adjustments to the project configuration. |
| PR # | Impact | Rating | Contributor | Description |
|---|---|---|---|---|
| #104 | π³ Major | βββ | AnasSarkiz | Introduces proper Gerber copper generation support for PCB trace routes containing through_pad segments, ensuring multilayer routing paths emit valid coordinates and continuous copper geometry. |
| #99 | π³ Major | βββ | AnasSarkiz | This pull request introduces support for native Gerber apertures specifically for pill-shaped SMT pads. It includes validation for the dimensions of the pill shape and defines the necessary configurations for both standard and solder mask layers. The changes ensure that the Gerber output correctly represents pill-shaped pads, enhancing the overall functionality of the circuit design tool. |
| #106 | π Minor | ββ | techmannih | Adds support for rounded SMT pad corner-radius apertures in Gerber output, ensuring that rounded geometries are preserved instead of being collapsed into plain rectangular shapes. |
| #101 | π Minor | ββ | techmannih | Fixes Gerber generation failure for polygon plated-hole pads by implementing proper region-based rendering and aperture configuration. |
| #105 | π Minor | ββ | techmannih | Renames the old rotated pill copper-vs-paste repro to a drill-focused repro, adds direct Excellon assertions for the rotated pill plated-hole slot direction, and keeps a side-by-side PCB vs Gerber comparison snapshot for easier debugging. |
| #103 | π Minor | ββ | techmannih | Fixes the rendering of rotated SMT pill pads in Gerber output to ensure correct orientation and geometry. |
π Tiny Contributions (1)
| PR # | Impact | Contributor | Description |
|---|---|---|---|
| #100 | π Tiny | techmannih | Adds targeted gerber repro coverage for the SMT pad issues we identified, including polygon SMT pad support repro, silkscreen knockout repro, SMT pad corner radius repro, rotated pill SMT pad repro, and rotated pill copper vs paste overlay snapshot repro. |
| PR # | Impact | Rating | Contributor | Description |
|---|---|---|---|---|
| #99 | π³ Major | βββ | ShiboSoftwareDev | Bumps kicadts and adds SVG snapshot tests for eight large KiCad PCB fixtures. Adds shared SVG snapshot test utilities and supports gr_rect Edge.Cuts outlines when calculating board bounds and emitting pcb_board. |
| #94 | π Minor | ββ | techmannih | Fixes a bug in the arduino-uno-via-overlay.snap.svg rendering due to snapshot updates. |
| #104 | π Minor | ββ | ShiboSoftwareDev | Corrects KiCad text height conversion to circuit-json font size, preserves silkscreencopper text rotation and hidden-text handling, avoids duplicate fab text when it overlaps visible silkscreen text, filters fabrication-note elements from PCB visual snapshots so previews match KiCad silkscreen views, adds focused text parity coverage and updates the OCuLink SVG snapshot. |
| #100 | π Minor | ββ | ShiboSoftwareDev | Relaxes Edge.Cuts endpoint matching tolerance to prevent tiny KiCad coordinate gaps from splitting board outlines into fragments, and adds a regression test to ensure continuous board outlines without cutouts. |
| #96 | π Minor | ββ | ShiboSoftwareDev | Converts disconnected Edge.Cuts contours separately instead of flattening them into a single pcb_board outline. The largest contour becomes the board outline; internal circle contours become pcb_hole elements, and other internal contours become pcb_cutout elements. Adds an Arduino Mega 2560 SVG repro snapshot plus a regression test for non-circular disconnected cutouts. Tests, typecheck, build, and biome pass. |
π Tiny Contributions (6)
| PR # | Impact | Contributor | Description |
|---|---|---|---|
| #93 | π Tiny | techmannih | Updates the version of tscircuit in package.json and refreshes the associated snapshot images for tests. |
| #98 | π Tiny | ShiboSoftwareDev | Refactors tests to separate Arduino board tests into individual files for better organization and maintainability. |
| #97 | π Tiny | ShiboSoftwareDev | This pull request adds additional KiCad repositories to the project, enhancing the library of available designs and components. |
| #102 | π Tiny | AnasSarkiz | This pull request updates the kicadts dependency to version 0.0.41 and adds a new test for the OV5640 dual camera board PCB. The test verifies the conversion of the Kicad PCB file to Circuit JSON format and checks the output for expected components and traces. Additionally, it includes a new Kicad PCB file for the OV5640 dual camera board. |
| #103 | π Tiny | Abse2001 | This pull request introduces a new PCB snapshot for the debug toolkit and updates the kicadts parser to version 0.0.42. The new PCB snapshot is intended to enhance testing and debugging capabilities within the project. |
| #101 | π Tiny | Abse2001 | This pull request introduces a new KiCad repro for the OV9281 dual camera board and updates the kicadts dependency to version 0.0.40 to fix existing issues. |
| PR # | Impact | Rating | Contributor | Description |
|---|---|---|---|---|
| #673 | π³ Major | βββ | ShiboSoftwareDev | Adds connection and connections properties to AutoroutingPhaseProps for enhanced autorouting capabilities. |
π Tiny Contributions (3)
| PR # | Impact | Contributor | Description |
|---|---|---|---|
| #674 | π Tiny | ShiboSoftwareDev | Bumps the package version from 0.0.535 to 0.0.536 in package.json |
| #676 | π Tiny | ShiboSoftwareDev | Resets package version in package.json from 0.0.536 to 0.0.535 to match the currently published npm version and removes a trailing blank line in README.md. |
| #675 | π Tiny | ShiboSoftwareDev | Adds a new line to the README.md file for formatting purposes |
| PR # | Impact | Rating | Contributor | Description |
|---|---|---|---|---|
| #43 | π³ Major | βββ | ShiboSoftwareDev | Adds missing KiCad PCB S-expression parsing paths, allowing for proper parsing of repeated group children and fp_curve graphics, and extends existing parsers for various tokens with focused regression tests for each case. |
| #45 | π³ Major | βββ | AnasSarkiz | This pull request addresses gaps in the parsing of PCB files related to the svguseinch and tstamp tokens. It adds support for these tokens in various classes, ensuring that they are correctly recognized and processed during PCB file parsing. This enhancement improves the overall robustness of the PCB parsing functionality. |
| #46 | π³ Major | βββ | Abse2001 | Adds support for dimension timestamp identities and introduces a new mode for connect_pads in KiCad zones. |
| #47 | π³ Major | βββ | mohan-bee | Fixes S-expression parser gaps for locked zones, gr_text without uuidtstamp, footprint curvesgroups, dimension timestamps, and zone polygonconnect-pad variants. |
| #44 | π Minor | ββ | Abse2001 | Adds support for parsing and serializing the footprint-level solder_paste_margin_ratio in the KiCad PCB format. |
π Tiny Contributions (1)
| PR # | Impact | Contributor | Description |
|---|---|---|---|
| #42 | π Tiny | mohan-bee | This pull request introduces a new PCB design file for a cyclometer, which includes various components such as resistors, capacitors, and LEDs. The design is structured in KiCad format and includes detailed specifications for each component, including footprints and properties. |
| PR # | Impact | Rating | Contributor | Description |
|---|---|---|---|---|
| #292 | π Minor | ββ | rushabhcodes | Fixes footprint placement bug in FemaleHeaderRow by centering multi-row female headers around the component origin instead of offsetting them. |
| PR # | Impact | Rating | Contributor | Description |
|---|---|---|---|---|
| #910 | π Minor | ββ | Msa360 | Fixes a localStorage race condition in CadViewer that clobbered the users persisted engine and camera-type choices on every mount. |
π Tiny Contributions (2)
| PR # | Impact | Contributor | Description |
|---|---|---|---|
| #924 | π Tiny | rushabhcodes | Updates the jscad-electronics dependency to version 0.0.132, fixing the male pinrow issue in the latest jscad version. |
| #921 | π Tiny | rushabhcodes | Adds Storybook stories to visually test and demonstrate alignment issues between male and female pinrow components and updates the existing pinheader story for better layout clarity. |
π Tiny Contributions (1)
| PR # | Impact | Contributor | Description |
|---|---|---|---|
| #646 | π Tiny | rushabhcodes | Adds comprehensive documentation for the opamp element used in analog circuit design, covering its properties, usage examples, and pin aliases. |
| PR # | Impact | Rating | Contributor | Description |
|---|---|---|---|---|
| #31 | π Minor | ββ | Msa360 | Fixes the tagging process in the release flow to ensure that the version tag points to the correct commit after a version bump, rather than an orphaned pre-rebase commit. |
| PR # | Impact | Rating | Contributor | Description |
|---|---|---|---|---|
| #394 | π³ Major | βββ | Sang-it | Adds netLabelWidth property to direct connections and updates the Example28Solver algorithm to utilize this property for better net label width handling. |
| #403 | π Minor | ββ | Sang-it | Fixes a bug in the rectangle detection logic by using a precision threshold for point comparisons. |
π Tiny Contributions (1)
| PR # | Impact | Contributor | Description |
|---|---|---|---|
| #390 | π Tiny | Sang-it | Adds a new example page and corresponding test for the schematic trace solver using example35 data. |
| PR # | Impact | Rating | Contributor | Description |
|---|---|---|---|---|
| #10 | π³ Major | βββ | AnasSarkiz | Adds a CameraPreviewCard component for camera-assisted PCB alignment with controls for starting the camera, retaking snapshots, and using snapshots. |
π Tiny Contributions (2)
| PR # | Impact | Contributor | Description |
|---|---|---|---|
| #9 | π Tiny | AnasSarkiz | Adds new React components for the Dashboard and Fabrication workflow, enabling fixture pages for development and testing. |
| #11 | π Tiny | AnasSarkiz | Refactors the user interface to utilize Tailwind CSS for styling and enhances the visual representation of workflow state indicators across various components. |
| PR # | Impact | Rating | Contributor | Description |
|---|---|---|---|---|
| #37 | π Minor | ββ | AnasSarkiz | Adds a new applyOffsetToLbrn utility for translating LightBurn project geometry by applying XY offsets directly to shape transforms. |
| PR # | Impact | Rating | Contributor | Description |
|---|---|---|---|---|
| #10 | π³ Major | βββ | MustafaMulla29 | Fixes routing failure where same-net copper traces block later same-net traces in KRT. |
π Tiny Contributions (1)
| PR # | Impact | Contributor | Description |
|---|---|---|---|
| #9 | π Tiny | MustafaMulla29 | Adds a test to reproduce an autorouting error when traces are routed on the same net with obstacles. |
| PR # | Impact | Rating | Contributor | Description |
|---|---|---|---|---|
| #4 | π³ Major | βββ | MustafaMulla29 | Computes a breakout boundary point for each inside port by projecting toward the outside target, avoids already-used boundary points when usedBoundaryPoints and boundaryPointSpacing are provided, chooses the nearest available point on the same boundary edge when the ideal point is occupied, and returns only breakoutPoints, not routed traces. |
| #2 | π³ Major | βββ | MustafaMulla29 | Adds an initial implementation of a breakout solver that calculates breakout points based on ray-boundary intersections. |
π Tiny Contributions (5)
| PR # | Impact | Contributor | Description |
|---|---|---|---|
| #7 | π Tiny | MustafaMulla29 | Updates the README file to provide detailed usage instructions and API documentation for the BreakoutPointSolver. |
| #6 | π Tiny | MustafaMulla29 | Changes the package name to include the tscircuit scope in package.json |
| #5 | π Tiny | MustafaMulla29 | Adds a GitHub Actions workflow for publishing to npm, including version bumping and triggering updates for upstream repositories. |
| #1 | π Tiny | MustafaMulla29 | Adds GitHub workflows for format checking, testing, and type checking, along with initial project setup files and a basic README. |
| #3 | π Tiny | MustafaMulla29 | Renames the BreakoutSolver class to BreakoutPointSolver and updates related types, while adding new test cases for the renamed solver. |
| PR # | Impact | Rating | Contributor | Description |
|---|---|---|---|---|
| #151 | π Minor | ββ | MustafaMulla29 | Fixes false-positive pcb_trace_missing_error reports from checkSourceTracesHavePcbTraces by improving the check for routed PCB traces. |
π Tiny Contributions (1)
| PR # | Impact | Contributor | Description |
|---|---|---|---|
| #150 | π Tiny | MustafaMulla29 | This pull request introduces a new test case that reproduces a false positive error related to missing PCB traces. The test case is designed to validate the behavior of the PCB trace checking mechanism in the software, ensuring that it correctly identifies and handles cases where traces are not actually missing, thus preventing unnecessary warnings or errors during the design process. |
| PR # | Impact | Rating | Contributor | Description |
|---|---|---|---|---|
| #93 | π³ Major | βββ | seveibar | Fixes congestion issues by introducing a new solver for duplicated ports and allows acceptance of the best solution on timeout. |
| #89 | π³ Major | βββ | Abse2001 | Adds a benchmarking script and a new interactive page for the SRJ13 core solver, allowing users to run benchmarks and debug datasets interactively. |
| #90 | π³ Major | βββ | Abse2001 | Adds configurable lazy heuristics and sparse candidate storage to improve rendering of large hypergraph visualizations, specifically fixing sample 02 in the srj13 dataset. |
| PR # | Impact | Rating | Contributor | Description |
|---|---|---|---|---|
| #4 | π³ Major | βββ | Abse2001 | This pull request removes the minimum via hole diameter and minimum via pad diameter from multiple circuit JSON files in the dataset. The changes affect a total of 66 files, simplifying the dataset by eliminating these constraints. |
| PR # | Impact | Rating | Contributor | Description |
|---|---|---|---|---|
| #284 | π³ Major | βββ | shehaban | Adds a new SparkFun Qwiic Shield for Thing Plus, including schematic and footprint definitions for multiple connectors. |
| PR # | Impact | Rating | Contributor | Description |
|---|---|---|---|---|
| #305 | π³ Major | βββ | mohan-bee | Fixes 3D model rotation and offset for rotated PCB components in KiCad export. The model rotation is now relative to the footprint rotation, and model_origin_position is included when calculating the model offset. |
π Tiny Contributions (91)
| PR # | Impact | Description |
|---|---|---|
| #3251 | π Tiny | Automated package update |
| #3252 | π Tiny | Automated package update |
| #3254 | π Tiny | Automated package update |
| #3250 | π Tiny | Automated package update |
| #3255 | π Tiny | Automated package update |
| #3256 | π Tiny | Updates the package version from 0.0.1777 to 0.0.1778 in package.json |
| #2322 | π Tiny | Updates the tscircuitchecks package from version 0.0.130 to 0.0.131 in the package.json file. |
| #2326 | π Tiny | Updates the tscircuitchecks package from version 0.0.131 to 0.0.132 |
| #3491 | π Tiny | Automated package update |
| #3490 | π Tiny | Updates the tscircuiteval package to version 0.0.865 in package.json |
| #3488 | π Tiny | Automated package update to version 0.0.211 |
| #3470 | π Tiny | Updates the tscircuitrunframe package from version 0.0.1985 to 0.0.1986 |
| #3464 | π Tiny | Updates the tscircuitrunframe package from version 0.0.1982 to 0.0.1983 |
| #3468 | π Tiny | Updates the tscircuitrunframe package from version 0.0.1984 to 0.0.1985 |
| #3483 | π Tiny | Updates the tscircuitrunframe package from version 0.0.1992 to 0.0.1993 |
| #3469 | π Tiny | Automated package update |
| #3472 | π Tiny | Updates the tscircuitrunframe package from version 0.0.1986 to 0.0.1987 |
| #3478 | π Tiny | Automated package update |
| #3477 | π Tiny | Updates the tscircuiteval package to version 0.0.863 in the package.json file. |
| #3484 | π Tiny | Automated package update |
| #3465 | π Tiny | Updates the version of the tscircuiteval package from 0.0.856 to 0.0.857 in package.json |
| #3463 | π Tiny | Automated package update |
| #3476 | π Tiny | Automated package update |
| #3474 | π Tiny | Automated package update |
| #3471 | π Tiny | Automated package update |
| #3482 | π Tiny | Updates the tscircuitrunframe package from version 0.0.1991 to 0.0.1992 |
| #3466 | π Tiny | Automated package update |
| #3480 | π Tiny | Automated package update to version 0.0.210 |
| #3467 | π Tiny | Automated package update |
| #3475 | π Tiny | Updates the tscircuiteval package from version 0.0.860 to 0.0.862 |
| #3485 | π Tiny | Updates the tscircuitrunframe package from version 0.0.1993 to 0.0.1994 |
| #2734 | π Tiny | Automated package update |
| #2733 | π Tiny | Automated package update |
| #2719 | π Tiny | Automated package update |
| #2713 | π Tiny | Updates the version of tscircuitcore from 0.0.1262 to 0.0.1263 and tscircuitschematic-trace-solver from 0.0.57 to 0.0.60 in package.json |
| #2716 | π Tiny | Updates the version of the tscircuitcore package from 0.0.1263 to 0.0.1264 in package.json |
| #2721 | π Tiny | Automated package update |
| #2711 | π Tiny | Automated package update |
| #2710 | π Tiny | Automated package update |
| #2730 | π Tiny | Automated package update |
| #2727 | π Tiny | Automated package update |
| #2723 | π Tiny | Automated package update |
| #2714 | π Tiny | Automated package update |
| #2731 | π Tiny | Automated package update |
| #2717 | π Tiny | Automated package update |
| #2724 | π Tiny | Automated package update |
| #2709 | π Tiny | Automated package update |
| #2708 | π Tiny | Updates package dependencies to their latest versions in package.json |
| #2728 | π Tiny | Automated package update |
| #3499 | π Tiny | Automated package update |
| #3498 | π Tiny | Updates the tscircuiteval package from version 0.0.864 to 0.0.865 in the package.json file. |
| #3486 | π Tiny | Updates the circuit-json-to-gerber package from version 0.0.64 to 0.0.67 |
| #3471 | π Tiny | Updates the tscircuiteval package from version 0.0.855 to 0.0.856 in the package.json file. |
| #3474 | π Tiny | Updates the tscircuiteval package from version 0.0.856 to 0.0.857 in the package.json file. |
| #3484 | π Tiny | Updates the tscircuiteval package version from 0.0.861 to 0.0.862 in package.json |
| #3492 | π Tiny | Updates the circuit-json-to-gerber package from version 0.0.68 to 0.0.70 |
| #3487 | π Tiny | Automated package update |
| #3479 | π Tiny | Automated package update |
| #3480 | π Tiny | Updates the tscircuiteval package from version 0.0.859 to 0.0.860 in the package.json file. |
| #3483 | π Tiny | Automated package update |
| #3478 | π Tiny | Updates the tscircuiteval package to version 0.0.859 in the package.json file. |
| #3493 | π Tiny | Automated package update |
| #3481 | π Tiny | Automated package update |
| #3488 | π Tiny | Updates the tscircuiteval package to version 0.0.863 in the package.json file. |
| #3475 | π Tiny | Automated package update |
| #3491 | π Tiny | Automated package update |
| #3495 | π Tiny | Automated package update |
| #3477 | π Tiny | Automated package update |
| #3482 | π Tiny | Updates the tscircuiteval package to version 0.0.861 in the package.json file. |
| #3485 | π Tiny | Automated package update |
| #3472 | π Tiny | Automated package update |
| #3476 | π Tiny | Updates the tscircuiteval package to version 0.0.858 in the package.json file. |
| #3494 | π Tiny | Updates the tscircuiteval package to version 0.0.864 in the package.json file. |
| #3490 | π Tiny | Updates the circuit-json-to-gerber package from version 0.0.67 to 0.0.68 |
| #3489 | π Tiny | Automated package update |
| #1242 | π Tiny | Automated package update |
| #1238 | π Tiny | Automated package update |
| #1234 | π Tiny | Automated package update |
| #1233 | π Tiny | Automated package update |
| #1232 | π Tiny | Automated package update |
| #1223 | π Tiny | Automated package update |
| #1212 | π Tiny | Automated package update |
| #1227 | π Tiny | Automated package update |
| #1211 | π Tiny | Automated package update |
| #1229 | π Tiny | Automated package update |
| #1215 | π Tiny | Automated package update |
| #1219 | π Tiny | Automated package update |
| #1225 | π Tiny | Automated package update |
| #1207 | π Tiny | Automated package update |
| #239 | π Tiny | Automated package update |
| #117 | π Tiny | Automated package update |
| PRs # | Impact | Rating | Description |
|---|---|---|---|
| #562 | π³ Major | βββ | Summary This fixes the remaining PCB text anchor alignment offset in circuit-to-svg by deriving anchor placement from the rendered alphabet path geometry instead of from coarse widthheight box math. What was wrong Copper text and knockout text were being anchored from centered layout dimensions rather than the actual rendered glyph bounds. That worked for some alignments, but top_, bottom_, and side-aligned cases could still land slightly off because the alignment math was not using the true outline extents. During the first pass of the fix, regular silkscreen text was also moved onto the alphabet stroke renderer. That improved consistency, but it changed the visible letterforms, which was a regression. What changed added a shared helper for PCB alphabet text geometry compute text bounds from the rendered path segments themselves derive anchor offsets from those real bounds for copper text and knockout text use the shared geometry in both copper text and silkscreen knockout rendering remove the older centered widthheight anchor helper keep regular silkscreen text on the existing SVG text renderer so its visual design stays unchanged refresh affected snapshots to match the corrected placement Why this approach This keeps the fix in the rendering model instead of layering more special-case offsets on top: one source of truth for alphabet-path text bounds anchor placement follows the real rendered shape knockout rectangles inherit the same geometry and stay aligned with the text they mask regular silkscreen text keeps its original appearance Impact fixes residual sidetopbottom anchor drift for PCB copper text and knockout text keeps silkscreen text visuals stable makes future PCB text alignment changes easier to reason about because the geometry and anchoring logic are centralized Validation sh bun test --timeout 30000 Passed: 207 pass, 0 fail |
| #1479 | π³ Major | βββ | This pull request adds regression coverage for the JLCPCB C2040 preview feature, ensuring that any future changes do not break existing functionality. It includes updates to the request handling logic, tests for the new feature, and necessary adjustments to the project configuration. |
| #2305 | π Minor | ββ | Fixes 3D rendering for library footprints that do not provide a CAD model by falling back cleanly to a bounding box instead of surfacing a parser error. |
| #564 | π Minor | ββ | Fixes knockout text alignment so it anchors against the outer padded knockout bounds instead of the inner glyph bounds. |
| #563 | π Minor | ββ | Render visible PCB via geometry for pcb_trace.route entries with route_type: via when the circuit JSON does not already include a matching top-level pcb_via element, and remove degenerate zero-length trace segments around via waypoints. |
| #106 | π Minor | ββ | Adds support for rounded SMT pad corner-radius apertures in Gerber output, ensuring that rounded geometries are preserved instead of being collapsed into plain rectangular shapes. |
| #101 | π Minor | ββ | Fixes Gerber generation failure for polygon plated-hole pads by implementing proper region-based rendering and aperture configuration. |
| #105 | π Minor | ββ | Renames the old rotated pill copper-vs-paste repro to a drill-focused repro, adds direct Excellon assertions for the rotated pill plated-hole slot direction, and keeps a side-by-side PCB vs Gerber comparison snapshot for easier debugging. |
| #103 | π Minor | ββ | Fixes the rendering of rotated SMT pill pads in Gerber output to ensure correct orientation and geometry. |
| #94 | π Minor | ββ | Fixes a bug in the arduino-uno-via-overlay.snap.svg rendering due to snapshot updates. |
| #238 | π Minor | ββ | Replaces approximate text anchor offsets with geometry derived from actual glyph outline bounds, ensuring accurate text alignment and consistency in rendering knockout backgrounds and stroked text. |
π Tiny Contributions (6)
| PR # | Impact | Description |
|---|---|---|
| #3253 | π Tiny | Updates the circuit-to-svg dependency version from 0.0.345 to 0.0.350 in package.json |
| #3249 | π Tiny | Updates the circuit-to-svg dependency version from 0.0.345 to 0.0.349 in package.json |
| #100 | π Tiny | Adds targeted gerber repro coverage for the SMT pad issues we identified, including polygon SMT pad support repro, silkscreen knockout repro, SMT pad corner radius repro, rotated pill SMT pad repro, and rotated pill copper vs paste overlay snapshot repro. |
| #2718 | π Tiny | Updates the circuit-to-svg dependency version from 0.0.345 to 0.0.348 in package.json |
| #2720 | π Tiny | Updates the circuit-to-svg dependency to version 0.0.349 in package.json |
| #93 | π Tiny | Updates the version of tscircuit in package.json and refreshes the associated snapshot images for tests. |
| PRs # | Impact | Rating | Description |
|---|---|---|---|
| #673 | π³ Major | βββ | Adds connection and connections properties to AutoroutingPhaseProps for enhanced autorouting capabilities. |
| #2318 | π³ Major | βββ | Adds support for autoroutingphase connection... and connections... to assign routing phases and reroute selected traces by endpoint selector. |
| #1246 | π³ Major | βββ | before: img width994 height1042 altimage srchttps:github.comuser-attachmentsassetsc6075912-a771-475f-a863-791219e5ab9e after: img width1204 height1018 altimage srchttps:github.comuser-attachmentsassetsd5b04b30-f11d-4023-ae10-8daff999ab04 Pipeline 7 was treating every componentId as a component region, which caused ordinary passivesconnectors in circuit-json-derived SRJ to produce thousands of extra topology regions. This narrows component detection to BGA-like dense pad grids, keeps non-BGA component pads in the global topology, and adds a USB-C repro asserting the topology no longer creates non-BGA component regions. |
| #43 | π³ Major | βββ | Adds missing KiCad PCB S-expression parsing paths, allowing for proper parsing of repeated group children and fp_curve graphics, and extends existing parsers for various tokens with focused regression tests for each case. |
| #99 | π³ Major | βββ | Bumps kicadts and adds SVG snapshot tests for eight large KiCad PCB fixtures. Adds shared SVG snapshot test utilities and supports gr_rect Edge.Cuts outlines when calculating board bounds and emitting pcb_board. |
| #1205 | π Minor | ββ | Adds structured benchmark failure summaries so solver failures are separated from relaxed DRC failures, records DRC error countstypesmessages per sample, adds top solver failure buckets to textJSON output, and scales sample timeouts by concurrency to avoid misattributing parallel wall-clock contention as phase failures. |
| #104 | π Minor | ββ | Corrects KiCad text height conversion to circuit-json font size, preserves silkscreencopper text rotation and hidden-text handling, avoids duplicate fab text when it overlaps visible silkscreen text, filters fabrication-note elements from PCB visual snapshots so previews match KiCad silkscreen views, adds focused text parity coverage and updates the OCuLink SVG snapshot. |
| #100 | π Minor | ββ | Relaxes Edge.Cuts endpoint matching tolerance to prevent tiny KiCad coordinate gaps from splitting board outlines into fragments, and adds a regression test to ensure continuous board outlines without cutouts. |
| #96 | π Minor | ββ | Converts disconnected Edge.Cuts contours separately instead of flattening them into a single pcb_board outline. The largest contour becomes the board outline; internal circle contours become pcb_hole elements, and other internal contours become pcb_cutout elements. Adds an Arduino Mega 2560 SVG repro snapshot plus a regression test for non-circular disconnected cutouts. Tests, typecheck, build, and biome pass. |
π Tiny Contributions (8)
| PR # | Impact | Description |
|---|---|---|
| #674 | π Tiny | Bumps the package version from 0.0.535 to 0.0.536 in package.json |
| #676 | π Tiny | Resets package version in package.json from 0.0.536 to 0.0.535 to match the currently published npm version and removes a trailing blank line in README.md. |
| #675 | π Tiny | Adds a new line to the README.md file for formatting purposes |
| #1245 | π Tiny | Switches the welcome page KiCad import URL to jscdn.tscircuit.com for faster updates. |
| #1221 | π Tiny | Re-renders oversized benchmark PR comments with unchanged passing PR samples omitted, while preserving failures, DRC failures, regressions, improvements, and missing-main rows. |
| #1198 | π Tiny | This pull request adds more samples to the reroute dataset 15, increasing the sample count from 25 to 55. It introduces new datasets and modifies existing sample data, including adjustments to the retained trace counts and ripped connection counts for various samples. The changes aim to enhance the testing and validation of the autorouting functionality. |
| #98 | π Tiny | Refactors tests to separate Arduino board tests into individual files for better organization and maintainability. |
| #97 | π Tiny | This pull request adds additional KiCad repositories to the project, enhancing the library of available designs and components. |
| PRs # | Impact | Rating | Description |
|---|---|---|---|
| #2330 | π³ Major | βββ | Fixes a core rendering bug where pinheader components with genderfemale did not propagate that gender into the implied CAD footprint selection. |
| #2316 | π³ Major | βββ | Fixes a core autorouting bug where local autorouter output could write through_obstacle segments directly into pcb_trace.route, even though the public route format should expose those segments as through_pad. |
| #292 | π Minor | ββ | Fixes footprint placement bug in FemaleHeaderRow by centering multi-row female headers around the component origin instead of offsetting them. |
π Tiny Contributions (3)
| PR # | Impact | Description |
|---|---|---|
| #924 | π Tiny | Updates the jscad-electronics dependency to version 0.0.132, fixing the male pinrow issue in the latest jscad version. |
| #921 | π Tiny | Adds Storybook stories to visually test and demonstrate alignment issues between male and female pinrow components and updates the existing pinheader story for better layout clarity. |
| #646 | π Tiny | Adds comprehensive documentation for the opamp element used in analog circuit design, covering its properties, usage examples, and pin aliases. |
| PRs # | Impact | Rating | Description |
|---|---|---|---|
| #910 | π Minor | ββ | Fixes a localStorage race condition in CadViewer that clobbered the users persisted engine and camera-type choices on every mount. |
| #31 | π Minor | ββ | Fixes the tagging process in the release flow to ensure that the version tag points to the correct commit after a version bump, rather than an orphaned pre-rebase commit. |
| PRs # | Impact | Rating | Description |
|---|---|---|---|
| #394 | π³ Major | βββ | Adds netLabelWidth property to direct connections and updates the Example28Solver algorithm to utilize this property for better net label width handling. |
| #2317 | π Minor | ββ | Adds netLabelWidth to direct connections and updates the schematic trace solver. |
| #403 | π Minor | ββ | Fixes a bug in the rectangle detection logic by using a precision threshold for point comparisons. |
π Tiny Contributions (2)
| PR # | Impact | Description |
|---|---|---|
| #2328 | π Tiny | Adds a test case for reproducing a rendering issue related to circuit traces in the tscircuit library. |
| #390 | π Tiny | Adds a new example page and corresponding test for the schematic trace solver using example35 data. |
| PRs # | Impact | Rating | Description |
|---|---|---|---|
| #104 | π³ Major | βββ | Introduces proper Gerber copper generation support for PCB trace routes containing through_pad segments, ensuring multilayer routing paths emit valid coordinates and continuous copper geometry. |
| #99 | π³ Major | βββ | This pull request introduces support for native Gerber apertures specifically for pill-shaped SMT pads. It includes validation for the dimensions of the pill shape and defines the necessary configurations for both standard and solder mask layers. The changes ensure that the Gerber output correctly represents pill-shaped pads, enhancing the overall functionality of the circuit design tool. |
| #45 | π³ Major | βββ | This pull request addresses gaps in the parsing of PCB files related to the svguseinch and tstamp tokens. It adds support for these tokens in various classes, ensuring that they are correctly recognized and processed during PCB file parsing. This enhancement improves the overall robustness of the PCB parsing functionality. |
| #10 | π³ Major | βββ | Adds a CameraPreviewCard component for camera-assisted PCB alignment with controls for starting the camera, retaking snapshots, and using snapshots. |
| #2324 | π Minor | ββ | Fixes handle through_pad in circuit-to-svg rendering. |
| #37 | π Minor | ββ | Adds a new applyOffsetToLbrn utility for translating LightBurn project geometry by applying XY offsets directly to shape transforms. |
π Tiny Contributions (3)
| PR # | Impact | Description |
|---|---|---|
| #102 | π Tiny | This pull request updates the kicadts dependency to version 0.0.41 and adds a new test for the OV5640 dual camera board PCB. The test verifies the conversion of the Kicad PCB file to Circuit JSON format and checks the output for expected components and traces. Additionally, it includes a new Kicad PCB file for the OV5640 dual camera board. |
| #9 | π Tiny | Adds new React components for the Dashboard and Fabrication workflow, enabling fixture pages for development and testing. |
| #11 | π Tiny | Refactors the user interface to utilize Tailwind CSS for styling and enhances the visual representation of workflow state indicators across various components. |
| PRs # | Impact | Rating | Description |
|---|---|---|---|
| #2320 | π³ Major | βββ | Changes the autorouter to utilize AutoroutingPipelineSolver8 when the laser_prefab preset is selected. |
| #3487 | π³ Major | βββ | Removes the order steps and related state management from the database schema and API, simplifying the order processing logic. |
| #3481 | π³ Major | βββ | Adds a new order success page that displays order confirmation details and allows users to navigate to their orders or back to the home page. |
| #1210 | π³ Major | βββ | Fixes the autorouting process by preventing routes with pre-placed vias from being sent to the cleanup solver, ensuring more accurate routing results. |
| #1218 | π³ Major | βββ | Fixes the issue where increasing the effort level prevents the globalDrcForceImprovementSolver from utilizing preplaced vias, leading to suboptimal DRC score layer transitions. |
| #1203 | π³ Major | βββ | This pull request introduces Pipeline8, a new routing algorithm for the autorouter that utilizes pre-placed vias to enhance routing efficiency and accuracy. The implementation includes new test fixtures and a bug report for validation. |
| #3489 | π Minor | ββ | Fixes the checkout process by ensuring users are redirected to the correct Stripe checkout page URL after order creation. |
| #3479 | π Minor | ββ | Adds fake endpoints for order creation and retrieval, integrating with a mock Stripe checkout session. |
π Tiny Contributions (2)
| PR # | Impact | Description |
|---|---|---|
| #3462 | π Tiny | Removes deprecated fake API endpoints for order files and quotes, cleaning up the codebase and eliminating unused functionality. |
| #1208 | π Tiny | Adds a reproduction for a failure in autorouting pipeline 8 with a new test and fixture files. |
| PRs # | Impact | Rating | Description |
|---|---|---|---|
| #10 | π³ Major | βββ | Fixes routing failure where same-net copper traces block later same-net traces in KRT. |
| #4 | π³ Major | βββ | Computes a breakout boundary point for each inside port by projecting toward the outside target, avoids already-used boundary points when usedBoundaryPoints and boundaryPointSpacing are provided, chooses the nearest available point on the same boundary edge when the ideal point is occupied, and returns only breakoutPoints, not routed traces. |
| #2 | π³ Major | βββ | Adds an initial implementation of a breakout solver that calculates breakout points based on ray-boundary intersections. |
| #2311 | π Minor | ββ | Adds tests for breakout routing and autorouting end-phase stack snapshots, enhancing the testing framework for autorouting functionality. |
| #2312 | π Minor | ββ | Adds autorouting phase IO stack snapshots for breakout repros in the testing framework |
| #151 | π Minor | ββ | Fixes false-positive pcb_trace_missing_error reports from checkSourceTracesHavePcbTraces by improving the check for routed PCB traces. |
π Tiny Contributions (7)
| PR # | Impact | Description |
|---|---|---|
| #150 | π Tiny | This pull request introduces a new test case that reproduces a false positive error related to missing PCB traces. The test case is designed to validate the behavior of the PCB trace checking mechanism in the software, ensuring that it correctly identifies and handles cases where traces are not actually missing, thus preventing unnecessary warnings or errors during the design process. |
| #9 | π Tiny | Adds a test to reproduce an autorouting error when traces are routed on the same net with obstacles. |
| #7 | π Tiny | Updates the README file to provide detailed usage instructions and API documentation for the BreakoutPointSolver. |
| #6 | π Tiny | Changes the package name to include the tscircuit scope in package.json |
| #5 | π Tiny | Adds a GitHub Actions workflow for publishing to npm, including version bumping and triggering updates for upstream repositories. |
| #1 | π Tiny | Adds GitHub workflows for format checking, testing, and type checking, along with initial project setup files and a basic README. |
| #3 | π Tiny | Renames the BreakoutSolver class to BreakoutPointSolver and updates related types, while adding new test cases for the renamed solver. |
| PRs # | Impact | Rating | Description |
|---|---|---|---|
| #3461 | π³ Major | βββ | Fixes the issue where logging back in after a session timeout discards the users location state, search parameters, or hash fragments, ensuring users are redirected back to their intended location with full URL structure preserved. |
| #1206 | π³ Major | βββ | Fixes a bug in the useless-via-removal solver that incorrectly flagged segments as colliding with adjacent traces or obstacles, preventing the removal of redundant vias in crowded routing areas. |
| PRs # | Impact | Rating | Description |
|---|---|---|---|
| #1247 | π³ Major | βββ | This pull request introduces a new method for converting circuit JSON to simple route JSON using the core library. It also adds a KiCad Arduino Leonardo PCB file for testing purposes. The changes include significant refactoring of the conversion logic and the addition of new utility functions to handle the conversion process more effectively. The PR aims to improve the autorouting capabilities of the library by ensuring better compatibility with KiCad files. |
| #1231 | π³ Major | βββ | Adds functionality to upload KiCad PCB files and convert them to Simple Route JSON format for use in the autorouter. |
| #1216 | π³ Major | βββ | Enhances the tiny-hypergraph optimizer to accept the best solution instead of failing after reaching the maximum iterations, and introduces a penalty for duplicate ports to improve routing performance. |
| #1214 | π³ Major | βββ | Adds a new GrowShrinkHighDensityIntraNodeSolver to improve high-density autorouting by allowing dynamic resizing of nodes during the routing process. |
| #1228 | π³ Major | βββ | Fixes autorouting failure when encountering impossible single-layer crossings due to invalid geometries. |
| #93 | π³ Major | βββ | Fixes congestion issues by introducing a new solver for duplicated ports and allows acceptance of the best solution on timeout. |
π Tiny Contributions (1)
| PR # | Impact | Description |
|---|---|---|
| #1235 | π Tiny | Changes the URL for the kicad-to-circuit-json converter to use cdnjs.tscircuit.com for faster updates. |
| PRs # | Impact | Rating | Description |
|---|---|---|---|
| #1224 | π³ Major | βββ | Preserves component-region shared edge segments during the necessary cramped port point solving process in the autorouting pipeline. |
| #1199 | π³ Major | βββ | Adds a new portPointsInPairs field to NodeWithPortPoint to clarify connections between ports and nodes, enhancing the autorouting process. |
| #1200 | π³ Major | βββ | https:github.comtscircuittscircuit-autorouterpull1175changes |
π Tiny Contributions (3)
| PR # | Impact | Description |
|---|---|---|
| #1241 | π Tiny | Change autorouting-dataset-01 to use git URL instead of versioning. |
| #1222 | π Tiny | Adds Pipeline7 Multi Graph to the autorouting menu bar options and includes its solver in the pipeline solvers list. |
| #120 | π Tiny | Adds a preview component for visualizing circuit designs using React and Tailwind CSS, along with necessary configuration files. |
| PRs # | Impact | Rating | Description |
|---|---|---|---|
| #1226 | π³ Major | βββ | Removes large vias from the srj16 dataset to improve routing efficiency and design integrity. |
| #46 | π³ Major | βββ | Adds support for dimension timestamp identities and introduces a new mode for connect_pads in KiCad zones. |
| #89 | π³ Major | βββ | Adds a benchmarking script and a new interactive page for the SRJ13 core solver, allowing users to run benchmarks and debug datasets interactively. |
| #90 | π³ Major | βββ | Adds configurable lazy heuristics and sparse candidate storage to improve rendering of large hypergraph visualizations, specifically fixing sample 02 in the srj13 dataset. |
| #4 | π³ Major | βββ | This pull request removes the minimum via hole diameter and minimum via pad diameter from multiple circuit JSON files in the dataset. The changes affect a total of 66 files, simplifying the dataset by eliminating these constraints. |
| #44 | π Minor | ββ | Adds support for parsing and serializing the footprint-level solder_paste_margin_ratio in the KiCad PCB format. |
π Tiny Contributions (2)
| PR # | Impact | Description |
|---|---|---|
| #103 | π Tiny | This pull request introduces a new PCB snapshot for the debug toolkit and updates the kicadts parser to version 0.0.42. The new PCB snapshot is intended to enhance testing and debugging capabilities within the project. |
| #101 | π Tiny | This pull request introduces a new KiCad repro for the OV9281 dual camera board and updates the kicadts dependency to version 0.0.40 to fix existing issues. |
| PRs # | Impact | Rating | Description |
|---|---|---|---|
| #284 | π³ Major | βββ | Adds a new SparkFun Qwiic Shield for Thing Plus, including schematic and footprint definitions for multiple connectors. |
| PRs # | Impact | Rating | Description |
|---|---|---|---|
| #47 | π³ Major | βββ | Fixes S-expression parser gaps for locked zones, gr_text without uuidtstamp, footprint curvesgroups, dimension timestamps, and zone polygonconnect-pad variants. |
| #305 | π³ Major | βββ | Fixes 3D model rotation and offset for rotated PCB components in KiCad export. The model rotation is now relative to the footprint rotation, and model_origin_position is included when calculating the model offset. |
π Tiny Contributions (1)
| PR # | Impact | Description |
|---|---|---|
| #42 | π Tiny | This pull request introduces a new PCB design file for a cyclometer, which includes various components such as resistors, capacitors, and LEDs. The design is structured in KiCad format and includes detailed specifications for each component, including footprints and properties. |
- Bun runtime
.envfile with required API keys:GITHUB_TOKEN=your_github_token OPENAI_API_KEY=your_openai_api_key DISCORD_TOKEN=your_discord_token (optional, for Discord integration) SLACK_BOT_TOKEN=your_slack_token (optional, for Slack integration)
bun run generate:weekly- Generate current week's contribution overviewbun run generate:monthly- Generate current month's contribution overviewbun run generate:changelog- Generate monthly changelog from PRs
bun run analyze-pr- Analyze a single PR (interactive prompt)bun run test:github- Test GitHub API integration
bun run notifications:issues- Send notifications for new issuesbun run notifications:pr- Send notifications for new PRsbun run sync:discord- Sync contributor roles with Discord
bun run export:sponsorship- Generate sponsorship data CSV
bun run dev- Start development server for web UIbun run build- Build for productionbun run format- Format code with Biome
# Generate this week's contribution overview
bun run generate:weekly
# Generate current month's overview
bun run generate:monthly
# Analyze a specific PR
bun run analyze-pr
# Test your GitHub token setup
bun run test:github