- Server: NIP-98 nostr auth (session cookies), BTC Map sync, claim/link/field routes, physical-presence checks via geolocation distance. 31 tests passing. - Frontend: Leaflet map, team pick, claim/link UI, Archipelago identity bridge vendored (nostr-provider.js) for dashboard launch support. - Verified end-to-end against the live BTC Map API (167 real Madeira places) and via genuine NIP-98-signed HTTP requests against the built app.
13 lines
277 B
TypeScript
13 lines
277 B
TypeScript
import { loadConfig } from './config.js';
|
|
import { buildApp } from './app.js';
|
|
|
|
const config = loadConfig();
|
|
const app = await buildApp({ config });
|
|
|
|
try {
|
|
await app.listen({ port: config.PORT, host: config.HOST });
|
|
} catch (err) {
|
|
app.log.error(err);
|
|
process.exit(1);
|
|
}
|