5.2 KiB
Publishing SkateSpots to Zapstore
Zapstore is a permissionless, Nostr-based app store for Android. However, SkateSpots is a web app (PWA), not a native Android APK, so direct Zapstore publishing isn't applicable in the traditional sense.
🤔 Current Situation
SkateSpots is:
- ✅ A Progressive Web App (PWA)
- ✅ Installable on Android, iOS, and Desktop
- ✅ Built with React/Vite (web technologies)
- ❌ NOT a native Android APK
Zapstore is designed for:
- ✅ Native Android APK files (.apk)
- ✅ Apps compiled for Android (Java/Kotlin)
- ❌ NOT for web apps or PWAs
🚀 Options to Get SkateSpots on Zapstore
Option 1: Create a Native Android Wrapper (Recommended for Zapstore)
Convert the PWA to a native Android app using one of these tools:
A. Capacitor (Recommended)
npm install @capacitor/core @capacitor/cli
npx cap init
npx cap add android
npm run build
npx cap copy
npx cap open android
Then build APK in Android Studio and publish to Zapstore.
B. PWA Builder
- Visit https://www.pwabuilder.com/
- Enter your deployed URL: https://skate-spots.com
- Generate Android APK
- Sign and publish to Zapstore
C. Trusted Web Activity (TWA)
- Create a minimal Android app that wraps your PWA
- Requires Android development setup
- More control but more complex
Option 2: Promote PWA Installation (Current Best Option)
Since SkateSpots is already a PWA, you can:
On Android:
- Open https://skate-spots.com in Chrome
- Tap menu → "Add to Home Screen"
- App installs like a native app
- Works offline, has app icon, full-screen experience
Advantages:
- ✅ Works NOW without any changes
- ✅ No app store approval needed
- ✅ Cross-platform (Android, iOS, Desktop)
- ✅ Instant updates (no app store review)
- ✅ Users already have it available
Promote this in your marketing:
- "Install SkateSpots PWA from your browser"
- Add installation instructions to homepage
- QR code linking to https://skate-spots.com
Option 3: Publish as Nostr Event (Alternative Distribution)
Even without an APK, you could publish app metadata to Nostr:
Use Zapstore NIPs for visibility:
- Kind 32267: App metadata
- Include your PWA URL
- Tag as "web app" or "PWA"
- Zapstore users might discover it even if they can't install via Zapstore
This wouldn't enable Zapstore installation but would list your app in the Nostr ecosystem.
📝 If You Want to Proceed with Native Android (Zapstore-ready)
Step 1: Install Zapstore CLI
npm install -g zapstore-cli
Step 2: Create zapstore.yaml in project root
# Repository (optional - for open source apps)
repository: nostr://npub1yrnuj56rnen08zp2h9h7p74ghgjx6ma39spmpj6w9hzxywutevsst7k5cx/git.shakespeare.diy/skate-spots
# Name of the app
name: SkateSpots
# App identifier (reverse domain notation)
identifier: com.skatespots.app
# Description
summary: Decentralized skate spot discovery on Nostr
# Icon (path to icon file)
icon: public/images/icon-512.png
# Screenshots
images:
- public/images/screenshot-1.png
- public/images/screenshot-2.png
# APK files to publish (regex pattern)
assets:
- output/.*.apk
# Categories/tags
tags:
- skateboarding
- nostr
- social
- sports
- maps
# Remote metadata sources
remote_metadata:
- github
Step 3: Build Android APK
Using Capacitor, PWA Builder, or manual Android development.
Step 4: Publish to Zapstore
zapstore publish
You'll be prompted to sign with:
- Your nsec (secret key)
- Browser extension (NIP-07)
- Nostr Connect bunker
Step 5: Published!
- App goes live immediately (no approval process)
- Listed on relay.zapstore.dev
- Discoverable via Nostr social graph
- Users can zap you directly
🎯 My Recommendation
For NOW:
- ✅ Keep promoting PWA installation (works great!)
- ✅ Add PWA install instructions to homepage
- ✅ Create installation guide in docs/FAQ
For FUTURE (if you want native Android):
- Use Capacitor to wrap SkateSpots as native Android app
- Build signed APK
- Create
zapstore.yamlconfig - Publish to Zapstore with
zapstore publish
🔗 Useful Links
- Zapstore Website: https://zapstore.dev
- Zapstore Docs: https://zapstore.dev/docs
- Zapstore CLI: https://zapstore.dev/docs/publish
- GitHub: https://github.com/zapstore/zapstore
- Download Zapstore App: https://zapstore.dev (for Android users)
❓ Questions?
Q: Can I publish a PWA to Zapstore? A: Not directly. Zapstore expects .apk files. You'd need to wrap your PWA as a native Android app first.
Q: Do I need to pay to publish? A: No! Publishing is free and permissionless. Anyone with a Nostr pubkey can publish.
Q: Will users pay for the app? A: Apps can be free or paid. Users can zap (tip) developers directly via Lightning.
Q: How do updates work?
A: Run zapstore publish again with new APK. Users get notified of updates.
Q: Can iOS users use Zapstore? A: No, Zapstore is Android-only. iOS users can install your PWA via Safari's "Add to Home Screen".
Bottom line: SkateSpots is currently a PWA, which is already installable on Android (and iOS/Desktop). To publish to Zapstore, you'd need to create a native Android APK wrapper first. The PWA approach is working great for now! 🛹⚡