DesktopMof
커서를 따라다니거나, 피하거나, 화면 가장자리에서 졸기도 한다
서랍을 측정하면 프린터 베드에 맞게 나뉘는 Gridfinity 베이스플레이트와 연결 부품을 제공해 바로 출력 가능
Measure your drawer, get a Gridfinity baseplate split to fit your printer bed, joined with printable connectors and ready to print.
라이프스타일JavaScript · HTMLGitHub @Oliver-Johnson온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기Gridfinity baseplates and bins, built to the drawer you actually have. Free and browser-based, no account: measure once, split the plate to fit your printer, lay out the bins, export STL and 3MF.
저장소 README에서 가져옴
README 전체를 불러오는 중입니다.
README 전문 보기 ↗Gridfinity baseplates and bins, built to the drawer you actually have.
Drawerforge is a pair of free, open, browser-based tools for Gridfinity. Measure your drawer once, and it works out the grid, splits the baseplate to fit your print bed, joins the pieces with printable connectors, then lays out the bins that go inside — exporting STL and 3MF, including pre-arranged print plates that open straight in your slicer.
Everything runs in your browser. Nothing is uploaded, there's no account, and there's no tracking.
▶ Baseplates — drawerforge.co.uk · ▶ Bins — drawerforge.co.uk/bins · Guide
Your drawer dimensions carry between the two, in both directions, without losing your work. Kitting out a whole chest? Save each drawer by name — its baseplate and its bins together — switch between them on either page, and export them as a small design file to move them to another device.
Written for the questions people actually arrive with, and readable without opening either tool:
The shipped app is a handful of static HTML files with no runtime build step.
/bins/, the guide at /guide/.Hosting it unmodified needs nothing further. If you change it and put it in front of other people, the licence asks you to offer your users the source of your version — point the Source code link in the page footers at your own fork and that covers it. Keep the name off it (see License).
three.js and JSZip are vendored in vendor/ and served from your own origin, so
a page makes no third-party request at all. Copy that directory along with the HTML. The
build refuses to emit a page that references an external script or stylesheet, so a CDN URL
cannot creep back in.
The site also installs as an app. Once any page has been opened over http(s), a service
worker (sw.js) keeps a copy of every page and of vendor/, so the tools open with no
connection at all, layout link included, and the browser offers to install it to a home
screen or dock from manifest.webmanifest. Both sit at the root and have to stay there: a
worker only looks after pages in its own folder and below. A page opened from a file does
not use either, and works offline as it always has.
The tab icon (favicon.svg, apple-touch-icon.png), the installed app's icons
(icon-192.png, icon-512.png, icon-maskable-512.png) and the picture a shared link is
shown with (og-image.png) sit at the root beside the pages. The icons are linked
relatively and follow a fork anywhere; the link-preview image is an absolute
drawerforge.co.uk URL, as the canonical links are, because a crawler has no page to
resolve a relative one against. The tab icon and the link preview are set in
tools/seo.js, the app's icons and manifest in tools/app.js.
index.html, bins/index.html and every page under guide/ are generated, and so are
sw.js and manifest.webmanifest (from src/sw.js and tools/app.js). Edit the sources,
never the built files:
| file | contents |
|---|---|
src/shared-ui/style.css | one stylesheet, both tools |
src/core.js | shared geometry engine — pure JS, also runs headless in Node |
src/template.html, src/ui.js | the Baseplates tool |
src/bins/bin.js | bin geometry, no CSG at all |
src/bins/template.html, src/bins/ui.js | the Bins tool |
src/guide/*.html | the guide pages, one file each |
node build.js
The build itself needs nothing but Node — it splices text. node build.js --check verifies
the outputs are in sync without writing, and runs in CI. The full test suite does have
dependencies, because the browser tests drive a real browser; see
CONTRIBUTING.md for how to run it.
og-image.png and apple-touch-icon.png are generated too, but by a browser rather than by
the build — the card carries a real render of the Bins preview. After a change you would
want a shared link to show, rebuild and then run:
node tools/social-image.js
The app icons are drawn from favicon.svg the same way. After changing the favicon, run
the script and then the build, because the service worker's cache name is a hash of the
files it caches and the icons are among them:
node tools/app-icons.js && node build.js
The build refuses to emit output unless three checks pass, each of which has caught a
shipped bug: node --check on every source; an id audit (every $('id') must exist in
its template); and a display-reachability audit (anything hidden with display:none
must be un-hidden somewhere, or it is dead UI).
Geometry is verified headlessly:
node test/bin-audit.js
node test/fit-check.js
Read docs/ENGINE.md before touching geometry. The CSG is fragile in specific, documented ways, and the failure mode is silently broken output rather than a crash.
Some joint pockets intentionally leave small uncapped faces where a cut interrupts the top rim (≈20 mm² per piece, all simple planar rectangles). Every mainstream slicer's automatic mesh repair closes these.
Found a bug, or want a feature? Open an issue — reports with a settings share-link attached are especially easy to act on.
If the tool saved you some time, there's a tip jar at ko-fi.com/oliver_johnson — entirely optional, always appreciated.
AGPL-3.0-or-later — free software, and it stays free software. Use it, fork it, self-host it, build on it. If you distribute it or run a modified version as a public service, you have to offer that version's source under the same terms.
The models you make with it are yours. Everything the tool generates — STL, 3MF, the ZIP, and the geometry in them — is explicitly excluded from the licence. Sell the files, sell the prints, sell them on Etsy at a markup. No attribution, no obligation, no share of anything. That exception is written into NOTICE rather than left to be argued about.
The name is reserved: call your fork something else, so visitors can tell whose work they are looking at. A link back is appreciated but not required.
LICENSE is the AGPL text, unaltered; NOTICE holds the two additional terms above. Every version published before NOTICE was added was MIT, and that grant is not withdrawn.