From e29613dfe5ea54448f6121fd7e3343c1c9b89737 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?B=C3=A1n=20D=C3=A9nes?= Date: Sat, 27 Nov 2021 21:04:30 +0100 Subject: [PATCH] Dump accumulated TODOs --- roadmap.md | 36 +++++++++++++++++++++++++++++++----- 1 file changed, 31 insertions(+), 5 deletions(-) diff --git a/roadmap.md b/roadmap.md index 12786f9..1d1a71a 100644 --- a/roadmap.md +++ b/roadmap.md @@ -6,26 +6,52 @@ ### Major +- Move column-level attributes like spread to key-level to unify the structure +- Generalize what shapes to be repeated when outlining `keys` +- Full per-point anchors +- Collapse any raw shift or rotation under the anchor infrastructure +- Merge, generalize, and uniform-ize footprints + - Also considering how (or, on which layer) they define their silks, universal mirroring behaviour, etc. + ### Minor -- Global column-level attributes like spread +- Allow shift/rotate for outlines (via `anchor_def`, probably) - More generic anchors or distances? - Intersect support for anchor affects clauses, which (combined with the math formulas and possible trigonometric functions) should allow for every use case we've discussed so far +- Allow both object (as well as arrays) in multiple anchor refs - Add a way to propagate creator/board/version info from the pcb section to the kicad template - Add a way to globally enable/disable references (`ref_hide`) - SVG input (for individual outlines, or even combinations parsed by line color, etc.) + - And once that's done, possibly even STL or other input for cases or pcb renders +- Support text silk output to PCBs (in configurable fonts, through SVG?) + - Maybe a partial markdown preprocess to support bold and italic? - Look into gr_curve to possibly add beziers to the kicad conversion + - Support curves (arcs as well as Béziers) in polygons - Support specifying keys/labels for the pcb section (not just blindly assuming all) - Should add `p`, `pcx`, and `pcy` as units for padding calculations + - Also `U` for 19.05 measurement - Add snappable line footprint +- Layer-aware export from Maker.JS, so we can debug in the webui more easily +- Support opting out of gluing, even when `bound`! +- Add filleting syntax with `@`? +- Eeschema support for pcbs +- Outline expand and shrink access from makerjs +- Resurrect and/or add wider tagging support + - Also add subtractive tagging filters (exclude) + - Also expand this to footprints (so, which footprints get applied to which pcb) + - Or, at least, allow skipping per-key footprints +- Generate ZMK shield from config ### Patch +- Better error handling for the fillet option? - Implement `glue.extra` - Integration and end2end tests to get coverage to 100% - Fix the intersection of parallel lines when gluing - +- Patch mirrored rotations in anchors (and why this hasn't come up yet) +- Fix filleting for internal regions +- Add custom fillet implementation that considers line-line connections only @@ -33,6 +59,8 @@ ### Major +- Change over to Cache's live preview implementation + ### Minor - Propagate log output from the ergogen module @@ -48,9 +76,6 @@ - - - ## DOCS - n00b tutorials @@ -64,6 +89,7 @@ - Change outline fields to have their full anchor support documented - Mention the ability to opt out of gluing! - Key-level defaults are based around u's, not 19! + - change over to built, per-chapter docs, like how Cache has them - Contribution guidelines - including test commands (npm test, npm run coverage, --what switch, --dump switch) - Changelog, Roadmap