3
1
Fork
You've already forked sync
0
No description
  • Rust 33.7%
  • Svelte 29.5%
  • TypeScript 27.2%
  • Nix 8.3%
  • JavaScript 1%
  • Other 0.1%
2026年07月08日 19:35:14 +02:00
backend fix(zabaged): drop sentinel placeholder values from secondary refs 2026年07月08日 19:35:14 +02:00
frontend feat(frontend): editable tag keys, per-row revert, fatter orange use-external arrow 2026年06月28日 14:55:56 +02:00
.gitignore feat: powerbox real source (numeric ref) + wikidata license guard + vertical editor 2026年06月27日 13:59:47 +02:00
AGENTS.md feat(atp): whitelist imported tags, brand fixups, drop broken spiders 2026年07月06日 20:05:27 +02:00
CLAUDE.md feat: init git repository 2026年04月27日 16:45:51 +02:00
CONFIG.md feat(atp): AllThePlaces brand spiders as version-probed datasets 2026年07月02日 14:03:07 +02:00
DEPLOYMENT.md docs(deploy): drop stale rsync-to-host serve step 2026年06月30日 11:34:11 +02:00
justfile build(nix): package frontend as flake + nix deployment docs 2026年06月27日 15:37:56 +02:00
README.md feat(config): build-time dataset opt-in + bake config into backend 2026年06月26日 11:42:20 +02:00

sync

Web-based POI import tool for OpenStreetMap. Compare external datasets to OSM, review matches, upload changes via OSM OAuth.

Layout

sync/
├── frontend/ Svelte SPA, Vite. Map + conflation UI.
└── backend/ Rust + axum. Stateless. In-process data sources (src/sources/),
 └── config.toml caches dataset GeoJSON, serves to frontend.
 config.toml = dataset registry (groups + datasets + conflation).

Dev

Each subproject builds independently. See per-dir README.md. just dev builds + runs backend (--enable-all) + frontend.

Datasets are opt-in at run time: --enable <group[.dataset]> (repeatable) or --enable-all. Prod bakes its selection into the nix wrapper (backend/flake.nix mkBackend); unlisted datasets stay inert.