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" : 10
"tscircuit/core" : 12
"tscircuit/tscircuit.com" : 29
"tscircuit/eval" : 20
"tscircuit/runframe" : 27
"tscircuit/tscircuit-autorouter" : 54
"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" : 14
"tscircuit/props" : 4
"tscircuit/kicadts" : 6
"tscircuit/jscad-electronics" : 4
"tscircuit/contribution-tracker" : 1
"tscircuit/3d-viewer" : 4
"tscircuit/docs" : 1
"tscircuit/circuit-json-to-gltf" : 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" : 4
"tscircuit/dataset-srj16-bga-breakouts" : 1
"tscircuit/dataset-srj18" : 1
"tscircuit/sparkfun-boards" : 1
"tscircuit/circuit-json-to-kicad" : 1
"tscircuit/tscircuit.com-landing" : 1
| Contributor | π³ Major | π Minor | π Tiny | Score | β | Discussion Contributions |
|---|---|---|---|---|---|---|
| ShiboSoftwareDev | 7 | 4 | 8 | 50.5 | βββ | 0πΉ 0πΆ 0π |
| seveibar | 8 | 2 | 6 | 43 | ββ | 0πΉ 0πΆ 0π |
| Abse2001 | 6 | 1 | 2 | 37 | ββ | 0πΉ 0πΆ 0π |
| imrishabh18 | 6 | 2 | 3 | 32 | ββ | 0πΉ 0πΆ 0π |
| techmannih | 2 | 9 | 6 | 32 | ββ | 0πΉ 0πΆ 0π |
| AnasSarkiz | 4 | 3 | 3 | 30 | ββ | 0πΉ 0πΆ 0π |
| rushabhcodes | 3 | 5 | 5 | 29 | ββ | 0πΉ 0πΆ 0π |
| MustafaMulla29 | 3 | 3 | 7 | 26 | ββ | 0πΉ 0πΆ 0π |
| 0hmX | 3 | 0 | 4 | 17 | ββ | 0πΉ 0πΆ 0π |
| tscircuitbot | 0 | 0 | 101 | 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π |
| anil08607 | 0 | 0 | 1 | 1 | 0πΉ 0πΆ 0π |
| Contributor | Reviewed PRs | Rejections | Approvals | SPR |
|---|---|---|---|---|
| techmannih | 10 | 0 | 10 | 100.0% |
| ShiboSoftwareDev | 6 | 0 | 6 | 100.0% |
| rushabhcodes | 6 | 0 | 7 | 100.0% |
| MustafaMulla29 | 6 | 0 | 7 | 100.0% |
| imrishabh18 | 4 | 1 | 4 | 75.0% |
| Sang-it | 3 | 1 | 2 | 66.7% |
| 0hmX | 3 | 0 | 3 | 100.0% |
| mohan-bee | 2 | 0 | 2 | 100.0% |
| Msa360 | 2 | 0 | 2 | 100.0% |
| AnasSarkiz | 2 | 0 | 2 | 100.0% |
| Abse2001 | 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
ShiboSoftwareDev SPR PRs (6)
- #2318 Add connection-targeted autorouting phases
- #1246 Limit Pipeline 7 component regions to BGA-like components
- #1205 benchmark qol
- #105 Fix logical source trace reuse for routed KiCad traces
- #104 Fix KiCad text sizing, rotation, and remove fab notes from PCB previews
- #96 Fix disconnected Edge.Cuts contours creating bogus board lines
rushabhcodes SPR PRs (6)
- #2330 Use female CAD footprints for pinheader components with gender="female"
- #2316 Normalize through_obstacle autorouter segments before persisting pcb_trace.route
- #294 Add camera presets and update renderFootprint to support camera configurations
- #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
MustafaMulla29 SPR PRs (6)
- #2312 Add autorouting start SRJ stack snapshots for breakout repros
- #2311 Add breakout repros and autorouting end-phase stack snapshots
- #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
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)
0hmX SPR PRs (3)
mohan-bee SPR PRs (2)
Msa360 SPR PRs (2)
AnasSarkiz SPR PRs (2)
Abse2001 SPR PRs (1)
- #1 updated kicad to circuit json and regenerated the dataset
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 |
| YunHeTracyLee | 0 | 0 | 0 | 0 | 0 | 6 | 0 | 0 |
| tungpham-dev | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| anil08607 | 1 | 1 | 0 | 0 | 0 | 5 | 1 | 0 |
| JacKane21 | 3 | 0 | 0 | 0 | 0 | 8 | 0 | 0 |
| kpoxo6op | 0 | 0 | 0 | 0 | 0 | 11 | 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 | 133 | 101 | 0 |
| imrishabh18 | 13 | 4 | 0 | 8 | 3 | 13 | 11 | 0 |
| kennedydqz-del | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0 |
| tomaspinkas-com | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| techmannih | 23 | 15 | 0 | 0 | 0 | 22 | 17 | 0 |
| ShiboSoftwareDev | 13 | 13 | 0 | 7 | 0 | 24 | 21 | 0 |
| Heyzerohey | 0 | 0 | 0 | 0 | 0 | 3 | 0 | 0 |
| MINBBBIGcode | 2 | 0 | 0 | 0 | 0 | 3 | 0 | 0 |
| jlgm81-oss | 0 | 0 | 0 | 0 | 0 | 1 | 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 |
| silktravelsadmin | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| zergzorg | 0 | 0 | 0 | 0 | 0 | 6 | 0 | 0 |
| g8rr5dg2p7-svg | 0 | 0 | 0 | 0 | 0 | 3 | 0 | 0 |
| tkwbr999 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| DYSfu | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0 |
| khozakhulile27-netizen | 0 | 0 | 0 | 0 | 0 | 5 | 0 | 0 |
| rushabhcodes | 31 | 13 | 0 | 2 | 0 | 14 | 13 | 0 |
| seveibar | 5 | 0 | 0 | 51 | 1 | 35 | 18 | 0 |
| MustafaMulla29 | 19 | 7 | 0 | 2 | 2 | 15 | 13 | 0 |
| mohan-bee | 6 | 5 | 0 | 1 | 0 | 5 | 3 | 0 |
| cwklurks | 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 | 13 | 7 | 0 | 9 | 0 | 16 | 9 | 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 |
| momenbuilds | 3 | 0 | 0 | 0 | 0 | 2 | 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 |
| asapsav | 2 | 0 | 1 | 0 | 0 | 1 | 0 | 0 |
| garrettparker245-code | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0 |
| Sang-it | 30 | 3 | 1 | 0 | 0 | 11 | 5 | 0 |
| AnasSarkiz | 7 | 7 | 0 | 5 | 0 | 11 | 10 | 0 |
| danbr | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 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 | 14 | 2 | 3 | 0 | 0 | 8 | 2 | 0 |
| LYL-8bit | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| haocyan0723-code | 0 | 0 | 0 | 0 | 0 | 5 | 0 | 0 |
| DevvoZA | 2 | 0 | 0 | 0 | 0 | 1 | 0 | 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 |
| TerryFYL | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| jing11223344 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| Cameron-xuan | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| caitoulin | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| hhyunbreh | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| hirosisa | 0 | 0 | 0 | 0 | 0 | 3 | 0 | 0 |
| longhtd | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| luoshui-coder | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| robin081412108-coder | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| zidhannnn | 2 | 0 | 0 | 0 | 0 | 2 | 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 |
| 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 |
| 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 |
| 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 |
| kebanks2 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0 |
| lloupp | 0 | 0 | 0 | 0 | 0 | 1 | 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 | 5 | 3 | 0 | 1 | 1 | 14 | 9 | 0 |
| poseidon-26 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| a25955813-cloud | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| shehaban | 2 | 1 | 0 | 0 | 0 | 1 | 1 | 0 |
| stevekkall-beansgc | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| bugi952 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| wbobbynmworley | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| OsirisLord | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| iyop666 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
| haki203 | 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 (10)
| PR # | Impact | Contributor | Description |
|---|---|---|---|
| #3258 | π Tiny | tscircuitbot | Automated package update |
| #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 |
| #3257 | π Tiny | imrishabh18 | Updates the circuit-json-to-gltf dependency to version 0.0.102 to fix a CLI bug. |
| #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 |
|---|---|---|---|---|
| #2320 | π³ Major | βββ | imrishabh18 | Changes the autorouter to utilize AutoroutingPipelineSolver8 when the laser_prefab preset is selected. |
| #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. |
| #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. |
| #2312 | π Minor | ββ | MustafaMulla29 | Adds autorouting phase IO stack snapshots for breakout repros in the testing framework |
| #2311 | π Minor | ββ | MustafaMulla29 | Adds tests for breakout routing and autorouting end-phase stack snapshots, enhancing the testing framework for autorouting functionality. |
π 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 |
|---|---|---|---|
| #3490 | π Tiny | tscircuitbot | Updates the tscircuiteval package to version 0.0.865 in package.json |
| #3491 | π Tiny | tscircuitbot | Automated package update |
| #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 |
| #3468 | π Tiny | tscircuitbot | Updates the tscircuitrunframe package from version 0.0.1984 to 0.0.1985 |
| #3464 | π Tiny | tscircuitbot | Updates the tscircuitrunframe package from version 0.0.1982 to 0.0.1983 |
| #3476 | π Tiny | tscircuitbot | Automated package update |
| #3478 | π Tiny | tscircuitbot | Automated package update |
| #3484 | π Tiny | tscircuitbot | Automated package update |
| #3463 | π Tiny | tscircuitbot | Automated package update |
| #3474 | π 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 |
| #3469 | π Tiny | tscircuitbot | Automated package update |
| #3483 | π Tiny | tscircuitbot | Updates the tscircuitrunframe package from version 0.0.1992 to 0.0.1993 |
| #3477 | π Tiny | tscircuitbot | Updates the tscircuiteval package to version 0.0.863 in the package.json file. |
| #3472 | π Tiny | tscircuitbot | Updates the tscircuitrunframe package from version 0.0.1986 to 0.0.1987 |
| #3480 | π Tiny | tscircuitbot | Automated package update to version 0.0.210 |
| #3475 | π Tiny | tscircuitbot | Updates the tscircuiteval package from version 0.0.860 to 0.0.862 |
| #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 |
| #3467 | π Tiny | tscircuitbot | Automated package update |
| #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 |
| PR # | Impact | Rating | Contributor | Description |
|---|---|---|---|---|
| #3473 | π³ Major | βββ | rushabhcodes | Standardizes error handling across components and updates dependencies for improved stability. |
π 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 |
|---|---|---|---|---|
| #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. |
| #1262 | π³ Major | βββ | ShiboSoftwareDev | Keeps cramped segment ports that touch multilayer regions so dense component escapes remain routable after cramped-port filtering. Adds a penalty for non-necessary cramped ports so they remain available as fallback escapes without being preferred by tiny-hypergraph. |
| #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. |
| #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. |
| #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 |
| #1256 | π³ Major | βββ | seveibar | Expands BGA detection functionality to include SOIC8 components by allowing detection of two-row and two-column configurations. |
| #1231 | π³ Major | βββ | seveibar | Adds functionality to upload KiCad PCB files and convert them to Simple Route JSON format for use in the autorouter. |
| #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. |
| #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. |
| #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. |
| #1257 | π Minor | ββ | seveibar | Propagates rootConnectionName through high-density routing outputs to ensure solved routes retain original root net metadata, updating hover labels across various visualizers for consistency. |
| #1248 | π Minor | ββ | seveibar | Adds dataset-srj18 as a pinned dev dependency, creates a new benchmark fixture page for it, and updates benchmark loading and parsing functionality. |
π Tiny Contributions (35)
| PR # | Impact | Contributor | Description |
|---|---|---|---|
| #1273 | π Tiny | tscircuitbot | Automated package update |
| #1269 | π Tiny | tscircuitbot | Automated package update |
| #1267 | π Tiny | tscircuitbot | Automated package update |
| #1261 | π Tiny | tscircuitbot | Automated package update |
| #1260 | π Tiny | tscircuitbot | Automated package update |
| #1258 | π Tiny | tscircuitbot | Automated package update |
| #1254 | π Tiny | tscircuitbot | Automated package update |
| #1251 | π Tiny | tscircuitbot | Automated package update |
| #1249 | π Tiny | tscircuitbot | Automated package update |
| #1242 | π Tiny | tscircuitbot | Automated package update |
| #1232 | π Tiny | tscircuitbot | Automated package update |
| #1238 | π Tiny | tscircuitbot | Automated package update |
| #1233 | π Tiny | tscircuitbot | Automated package update |
| #1234 | π Tiny | tscircuitbot | Automated package update |
| #1223 | π Tiny | tscircuitbot | Automated package update |
| #1212 | π Tiny | tscircuitbot | Automated package update |
| #1219 | π Tiny | tscircuitbot | Automated package update |
| #1225 | π Tiny | tscircuitbot | Automated package update |
| #1211 | π Tiny | tscircuitbot | Automated package update |
| #1227 | π Tiny | tscircuitbot | Automated package update |
| #1229 | π Tiny | tscircuitbot | Automated package update |
| #1215 | π Tiny | tscircuitbot | Automated package update |
| #1207 | π Tiny | tscircuitbot | Automated package update |
| #1208 | π Tiny | imrishabh18 | Adds a reproduction for a failure in autorouting pipeline 8 with a new test and fixture files. |
| #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. |
| #1245 | π Tiny | ShiboSoftwareDev | Switches the welcome page KiCad import URL to jscdn.tscircuit.com for faster updates. |
| #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. |
| #1272 | π Tiny | 0hmX | Adds basic problems for the stitch solver to facilitate testing and debugging of routing algorithms. |
| #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. |
| #1265 | π Tiny | seveibar | Adds test fixtures and a test case for reproducing and solving a bug related to QFP topology in autorouting. |
| #1259 | π Tiny | seveibar | Updates the dataset for srj18 to include fixes for layer and outline issues. |
| #1253 | π Tiny | seveibar | Adds a new autorouting bug report fixture for case 2936e12e, including a JSON bug report and a debugger fixture for replaying the case in the app. |
| #1250 | π Tiny | seveibar | Removes the API endpoint responsible for slow Vercel builds, which was causing performance issues during deployment. |
| #1235 | π Tiny | seveibar | Changes the URL for the kicad-to-circuit-json converter to use cdnjs.tscircuit.com for faster updates. |
| 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 |
|---|---|---|---|---|
| #105 | π³ Major | βββ | ShiboSoftwareDev | Deduplicates source_trace creation by logical connection (source_net_id endpoint ports) while preserving all physical pcb_trace geometry. |
| #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. |
| #107 | π³ Major | βββ | seveibar | Fixes the layer count in the circuit JSON output by accurately counting copper layers from KiCad definitions. |
| #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. |
| #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. |
| #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. |
| #106 | π Minor | ββ | AnasSarkiz | Fixes the extraction of board outlines by including footprint Edge.Cuts in the outline generation process. |
π 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. |
| #97 | π Tiny | ShiboSoftwareDev | This pull request adds additional KiCad repositories to the project, enhancing the library of available designs and components. |
| #98 | π Tiny | ShiboSoftwareDev | Refactors tests to separate Arduino board tests into individual files for better organization and maintainability. |
| #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 |
|---|---|---|---|---|
| #295 | π Minor | ββ | rushabhcodes | Fixes rendering of female pin header sockets by changing the socket opening from a circular hole to a tapered square opening, improving accuracy in 3D models. |
| #294 | π Minor | ββ | rushabhcodes | Adds reusable camera presets for footprint snapshot tests and refactors footprint rendering to follow a higher-level flow used in the CLI, improving consistency and maintainability of snapshot views. |
| #293 | π Minor | ββ | rushabhcodes | Fixes visual regression in the pinrow8 female footprint snapshot by adding explicit camera controls to stabilize rendering. |
| #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 |
|---|---|---|---|---|
| #331 | π Minor | ββ | rushabhcodes | Fixes a scoring consistency bug in the contributor graph by deriving score milestone markers from the shared backend scoring thresholds instead of maintaining a separate frontend copy. |
| 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 (3)
| PR # | Impact | Contributor | Description |
|---|---|---|---|
| #925 | π Tiny | rushabhcodes | Updates the jscad-electronics dependency to version 0.0.133 in the package.json file. |
| #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. |
| #924 | π Tiny | rushabhcodes | Updates the jscad-electronics dependency to version 0.0.132, fixing the male pinrow issue in the latest jscad version. |
π 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. |
π Tiny Contributions (1)
| PR # | Impact | Contributor | Description |
|---|---|---|---|
| #163 | π Tiny | rushabhcodes | Updates the jscad-electronics dependency to version 0.0.135 in package.json |
| 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. |
π Tiny Contributions (1)
| PR # | Impact | Contributor | Description |
|---|---|---|---|
| #95 | π Tiny | seveibar | This pull request introduces a new visualization feature for static reachability failures in the Tiny Hypergraph Solver. It adds functionality to visualize routes that cannot be statically routed, enhancing debugging and analysis capabilities. |
| 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 |
|---|---|---|---|---|
| #1 | π³ Major | βββ | Abse2001 | This pull request updates the KiCad files to use circuit JSON format and regenerates the dataset accordingly. It involves significant changes to the source traces in the JSON files, including renaming source trace IDs and removing some redundant entries. |
| 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 (1)
| PR # | Impact | Contributor | Description |
|---|---|---|---|
| #24 | π Tiny | anil08607 | Fixes the nav dropdown behavior across responsive breakpoints by correcting the positioning of the dropdown menu on tablet and mobile devices. |
π Tiny Contributions (101)
| PR # | Impact | Description |
|---|---|---|
| #3258 | π Tiny | Automated package update |
| #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 |
| #3490 | π Tiny | Updates the tscircuiteval package to version 0.0.865 in package.json |
| #3491 | π Tiny | Automated package update |
| #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 |
| #3468 | π Tiny | Updates the tscircuitrunframe package from version 0.0.1984 to 0.0.1985 |
| #3464 | π Tiny | Updates the tscircuitrunframe package from version 0.0.1982 to 0.0.1983 |
| #3476 | π Tiny | Automated package update |
| #3478 | π Tiny | Automated package update |
| #3484 | π Tiny | Automated package update |
| #3463 | π Tiny | Automated package update |
| #3474 | π Tiny | Automated package update |
| #3465 | π Tiny | Updates the version of the tscircuiteval package from 0.0.856 to 0.0.857 in package.json |
| #3469 | π Tiny | Automated package update |
| #3483 | π Tiny | Updates the tscircuitrunframe package from version 0.0.1992 to 0.0.1993 |
| #3477 | π Tiny | Updates the tscircuiteval package to version 0.0.863 in the package.json file. |
| #3472 | π Tiny | Updates the tscircuitrunframe package from version 0.0.1986 to 0.0.1987 |
| #3480 | π Tiny | Automated package update to version 0.0.210 |
| #3475 | π Tiny | Updates the tscircuiteval package from version 0.0.860 to 0.0.862 |
| #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 |
| #3467 | π Tiny | Automated package update |
| #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 |
| #1273 | π Tiny | Automated package update |
| #1269 | π Tiny | Automated package update |
| #1267 | π Tiny | Automated package update |
| #1261 | π Tiny | Automated package update |
| #1260 | π Tiny | Automated package update |
| #1258 | π Tiny | Automated package update |
| #1254 | π Tiny | Automated package update |
| #1251 | π Tiny | Automated package update |
| #1249 | π Tiny | Automated package update |
| #1242 | π Tiny | Automated package update |
| #1232 | π Tiny | Automated package update |
| #1238 | π Tiny | Automated package update |
| #1233 | π Tiny | Automated package update |
| #1234 | π Tiny | Automated package update |
| #1223 | π Tiny | Automated package update |
| #1212 | π Tiny | Automated package update |
| #1219 | π Tiny | Automated package update |
| #1225 | π Tiny | Automated package update |
| #1211 | π Tiny | Automated package update |
| #1227 | π Tiny | Automated package update |
| #1229 | π Tiny | Automated package update |
| #1215 | π Tiny | Automated package update |
| #1207 | π Tiny | Automated package update |
| #239 | π Tiny | Automated package update |
| #117 | π Tiny | Automated package update |
| 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 (3)
| PR # | Impact | Description |
|---|---|---|
| #3257 | π Tiny | Updates the circuit-json-to-gltf dependency to version 0.0.102 to fix a CLI bug. |
| #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 |
|---|---|---|---|
| #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. |
| #1262 | π³ Major | βββ | Keeps cramped segment ports that touch multilayer regions so dense component escapes remain routable after cramped-port filtering. Adds a penalty for non-necessary cramped ports so they remain available as fallback escapes without being preferred by tiny-hypergraph. |
| #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. |
| #105 | π³ Major | βββ | Deduplicates source_trace creation by logical connection (source_net_id endpoint ports) while preserving all physical pcb_trace geometry. |
| #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. |
| #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. |
| #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. |
π 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 |
| #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. |
| #1245 | π Tiny | Switches the welcome page KiCad import URL to jscdn.tscircuit.com for faster updates. |
| #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. |
| #97 | π Tiny | This pull request adds additional KiCad repositories to the project, enhancing the library of available designs and components. |
| #98 | π Tiny | Refactors tests to separate Arduino board tests into individual files for better organization and maintainability. |
| 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. |
| #3473 | π³ Major | βββ | Standardizes error handling across components and updates dependencies for improved stability. |
| #295 | π Minor | ββ | Fixes rendering of female pin header sockets by changing the socket opening from a circular hole to a tapered square opening, improving accuracy in 3D models. |
| #294 | π Minor | ββ | Adds reusable camera presets for footprint snapshot tests and refactors footprint rendering to follow a higher-level flow used in the CLI, improving consistency and maintainability of snapshot views. |
| #293 | π Minor | ββ | Fixes visual regression in the pinrow8 female footprint snapshot by adding explicit camera controls to stabilize rendering. |
| #292 | π Minor | ββ | Fixes footprint placement bug in FemaleHeaderRow by centering multi-row female headers around the component origin instead of offsetting them. |
| #331 | π Minor | ββ | Fixes a scoring consistency bug in the contributor graph by deriving score milestone markers from the shared backend scoring thresholds instead of maintaining a separate frontend copy. |
π Tiny Contributions (5)
| PR # | Impact | Description |
|---|---|---|
| #925 | π Tiny | Updates the jscad-electronics dependency to version 0.0.133 in the package.json file. |
| #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. |
| #924 | π Tiny | Updates the jscad-electronics dependency to version 0.0.132, fixing the male pinrow issue in the latest jscad version. |
| #646 | π Tiny | Adds comprehensive documentation for the opamp element used in analog circuit design, covering its properties, usage examples, and pin aliases. |
| #163 | π Tiny | Updates the jscad-electronics dependency to version 0.0.135 in package.json |
| 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. |
| #106 | π Minor | ββ | Fixes the extraction of board outlines by including footprint Edge.Cuts in the outline generation process. |
| #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 |
|---|---|---|---|
| #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. |
| #2312 | π Minor | ββ | Adds autorouting phase IO stack snapshots for breakout repros in the testing framework |
| #2311 | π Minor | ββ | Adds tests for breakout routing and autorouting end-phase stack snapshots, enhancing the testing framework for autorouting functionality. |
| #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 |
|---|---|---|---|
| #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 (4)
| PR # | Impact | Description |
|---|---|---|
| #1272 | π Tiny | Adds basic problems for the stitch solver to facilitate testing and debugging of routing algorithms. |
| #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 |
|---|---|---|---|
| #1256 | π³ Major | βββ | Expands BGA detection functionality to include SOIC8 components by allowing detection of two-row and two-column configurations. |
| #1231 | π³ Major | βββ | Adds functionality to upload KiCad PCB files and convert them to Simple Route JSON format for use in the autorouter. |
| #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. |
| #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. |
| #107 | π³ Major | βββ | Fixes the layer count in the circuit JSON output by accurately counting copper layers from KiCad definitions. |
| #93 | π³ Major | βββ | Fixes congestion issues by introducing a new solver for duplicated ports and allows acceptance of the best solution on timeout. |
| #1257 | π Minor | ββ | Propagates rootConnectionName through high-density routing outputs to ensure solved routes retain original root net metadata, updating hover labels across various visualizers for consistency. |
| #1248 | π Minor | ββ | Adds dataset-srj18 as a pinned dev dependency, creates a new benchmark fixture page for it, and updates benchmark loading and parsing functionality. |
π Tiny Contributions (6)
| PR # | Impact | Description |
|---|---|---|
| #1265 | π Tiny | Adds test fixtures and a test case for reproducing and solving a bug related to QFP topology in autorouting. |
| #1259 | π Tiny | Updates the dataset for srj18 to include fixes for layer and outline issues. |
| #1253 | π Tiny | Adds a new autorouting bug report fixture for case 2936e12e, including a JSON bug report and a debugger fixture for replaying the case in the app. |
| #1250 | π Tiny | Removes the API endpoint responsible for slow Vercel builds, which was causing performance issues during deployment. |
| #1235 | π Tiny | Changes the URL for the kicad-to-circuit-json converter to use cdnjs.tscircuit.com for faster updates. |
| #95 | π Tiny | This pull request introduces a new visualization feature for static reachability failures in the Tiny Hypergraph Solver. It adds functionality to visualize routes that cannot be statically routed, enhancing debugging and analysis capabilities. |
| 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. |
| #1 | π³ Major | βββ | This pull request updates the KiCad files to use circuit JSON format and regenerates the dataset accordingly. It involves significant changes to the source traces in the JSON files, including renaming source trace IDs and removing some redundant entries. |
| #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. |
π Tiny Contributions (1)
| PR # | Impact | Description |
|---|---|---|
| #24 | π Tiny | Fixes the nav dropdown behavior across responsive breakpoints by correcting the positioning of the dropdown menu on tablet and mobile devices. |
- 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