# 1. Configure environment
cp .env.example .env.local
# Edit .env.local as needed
# 2. Start Pubky stack (testnet)
cd scripts && ./start-pubky-stack.sh
# 3. Start Eventky frontend standalone
npm run dev
NEXT_PUBLIC_PUBKY_ENV=testnet # testnet | staging | production
| Environment |
Homeserver |
Nexus |
Relay |
| testnet |
localhost:6286 |
localhost:8080 |
localhost:15412 |
| staging |
homeserver.staging.pubky.app |
nexus.eventky.app |
httprelay.staging.pubky.app |
| production |
homeserver.pubky.app |
nexus.eventky.app |
httprelay.pubky.app |
import { config } from "@/lib/config";
config.environment; // "testnet" | "staging" | "production"
config.homeserver.publicKey;
config.gateway.url; // Nexus URL
For mobile QR authentication on local network:
NEXT_PUBLIC_PUBKY_RELAY=http://192.168.1.x:15412/link
sudo ufw allow 15412/tcp # If using firewall
Hybrid approach:
- Writes → Direct to Pubky homeserver via
@synonymdev/pubky
- Reads → Nexus API for indexed, cached queries
| Issue |
Fix |
| Events not indexing |
docker compose logs nexusd, wait a few seconds |
| Services down |
docker compose ps, check logs |
| Port conflicts |
Verify ports 3000, 8080, 15412 are available |