尚未收集仓库信息。
尚未检测到更新。GitHub 发布版本后会显示在这里。
Plan your home Wi-Fi mesh on your floor plan: estimated coverage on 2.4, 5 and 6 GHz. Static, free, open source.
翻译准备中
取自仓库 README
正在加载完整 README。
查看完整 README ↗Plan your home Wi-Fi before you buy. Draw your floor plan, drop routers and mesh nodes on it, and see the estimated coverage on 2.4, 5 and 6 GHz.
Live at planejadorwifi.com, free and with no sign-up, in Portuguese, English and Spanish.
You need Node.js 22 or newer. The project has no dependencies to install.
npm start # build, serve at http://localhost:8080 and rebuild on changes
npm test # unit tests (propagation model, storage, build)
npm run build # production build into dist/
npm run preview # build, then serve dist/
npm run check # secret scan + tests + build, same as CI
This is a fully static site: HTML, CSS and vanilla JavaScript ES modules. It has no backend and no framework. scripts/build.mjs renders the page templates once per language and writes everything to dist/, using only the Node standard library.
src/index.html simulator page
src/guides.html, src/guide.html guides index and guide template
src/doc.html reference pages (methodology, about)
src/privacy.html, src/404.html other page templates
src/partials/ shared head, header and footer
i18n/pt-BR.json, en.json, es.json every visible text, one file per language
assets/js/i18n.js runtime translations (t(), raw())
assets/js/tour.js first-visit guided tour
assets/js/site.js language switcher, site menu, project link fragment
assets/js/engine.js propagation model, pure functions
assets/js/store.js projects and custom models in localStorage, project links
assets/js/app.js user interface
scripts/build.mjs production build (pages, hreflang, sitemap, robots.txt, llms.txt)
scripts/scenarios.mjs example homes the guides quote, covered with the engine
scripts/lastmod.mjs per-page modified dates from git history
scripts/dev.mjs build + serve + rebuild on change
scripts/check-secrets.mjs fails CI if credentials or real IDs are committed
tests/ node:test suites
.github/workflows/ secret scan, tests and build on every push and pull request
Portuguese is served at /, English at /en/ and Spanish at /es/. Each version has its own canonical URL, hreflang links and sitemap entries, so search engines index all three. The Portuguese home page sends people (not crawlers) to /en/ or /es/ based on the browser language, and the switcher in the header remembers the visitor's choice.
Every visible text lives in i18n/*.json. Templates use {{key}}, scripts use t('key'), and tests/i18n.test.js fails if the three files drift apart. To add a language, copy i18n/en.json, translate it, give it its own paths, and add it to LANGS in scripts/build.mjs.
The repository contains no analytics, ads or other third-party code. A deployment can add its own features through build extensions, listed in the SITE_EXTENSIONS environment variable; without them, dist/ loads nothing from third parties. See docs/deployment.md.
Each point gets a log-distance path loss (exponent 2.5), plus the attenuation of every wall crossed and of each slab between floors. The per-material values live in assets/js/engine.js, and the build fills every number the guides, the methodology page and llms.txt quote from them, so texts never drift from the model. Typical error is ±8 dB, so the tool compares placements and does not replace a site survey. Better models and calibration data are very welcome contributions.
Ideas, bug reports and pull requests are welcome, and so is AI-assisted code.
npm run check, and open a pull request.See CONTRIBUTING.md for the details.
This project is written with AI coding assistants and encourages contributors to use them.
CLAUDE.md and .github/copilot-instructions.md point to it.npm run check.npm start.engine.js and all three i18n/*.json files together. The test suite enforces this.npm run build writes a static site to dist/ that any web server or static host can serve. Requirements and server settings: docs/deployment.md. Pull requests are reviewed and merged here on GitHub, where the workflow runs the secret scan, the tests and the build.
The app stores projects only in the visitor's localStorage and sends them nowhere. A shared project link carries the project in its fragment (#p=…), which browsers never send to the server. The code in this repository sets no cookies and loads no tracking or advertising scripts.
If the planner saved you a bad router purchase, you can send any amount of bitcoin over the Lightning Network. Scan the BOLT 12 offer with a wallet that supports it (Phoenix, Zeus and others), or copy it from planejadorwifi.com/#support.