The Evolution of SkateConnect: Part 1 – From Concept to Reality
🚀 Introduction: The Birth of SkateConnect
Skateboarding has always been about community, creativity, and movement—but when it comes to discovering new skate spots, organizing sessions, or connecting with the global skateboarding network, the experience often feels fragmented. Enter SkateConnect, a project born from the desire to merge technology with the skateboarding culture.
SkateConnect isn’t just another social network—it’s a real-time communication and discovery tool designed for skaters by skaters. This article dives into the journey so far, covering the technical foundations, challenges, and breakthroughs in the first phase of development.
🏗️ The Core Vision of SkateConnect
At its heart, SkateConnect aims to:
✅ Provide real-time communication between skaters.
✅ Offer an interactive skate spot map with community-driven updates.
✅ Enable secure and decentralized messaging using the Nostr protocol.
✅ Support video sharing and live sessions directly from the app.
To bring this vision to life, we needed a scalable, efficient, and decentralized infrastructure. This led to some major architectural decisions early on.
🛠️ The Technical Stack: Building the Foundation
To ensure a smooth experience for users while maintaining real-time updates, decentralized messaging, and video sharing, we selected the following technologies:
Frontend (Mobile App)
- SwiftUI – For a modern and reactive UI.
- MessageKit – Handling chat and message displays.
- MapKit – To enable interactive skate spot mapping.
Backend & Networking
- Nostr Protocol – A decentralized network for real-time messaging.
- Relay Servers – To store and forward messages in a censorship-resistant manner.
- PostgreSQL & Hasura – Managing structured data and providing GraphQL queries.
- AWS S3 – For storing and retrieving skate session videos.
Event-Driven Architecture
- Combine Framework – Handling async updates and real-time data flow.
- Custom Event Bus – Enabling modular communication across different app components.
With this stack in place, we set out to build the key features that would define SkateConnect.
📡 Real-Time Communication with Nostr
One of the biggest challenges in SkateConnect was implementing real-time, decentralized messaging. Instead of relying on centralized servers like traditional chat apps, we used Nostr, which allows users to communicate without a single point of failure.
🔹 Key Challenges
1️⃣ Handling Message Streams – Since Nostr operates with relays, we needed a system to subscribe and filter messages in real time.
2️⃣ Efficiently Managing Subscriptions – Users may belong to multiple channels, requiring a way to track subscription IDs and filter events.
3️⃣ Preventing Message Duplication – Since relays can resend past events, we implemented deduplication strategies.
✅ Solutions Implemented
- Event Bus Architecture: We built a custom EventBus that routes messages efficiently.
- Subscription Mapping: Every subscription is now tracked with an ID, ensuring messages go to the correct channel.
- EOSE Handling: Properly detecting End of Stored Events (EOSE) prevents SkateConnect from continuously processing old messages.
This modular and efficient approach means that users get instant, secure, and reliable messaging, even across different relays.
📍 Interactive Skate Spot Mapping
Another core feature of SkateConnect is the ability to map and explore skate spots. Unlike static directories, SkateConnect lets skaters:
- Add custom markers with details about skate spots.
- See live updates when new spots are discovered.
- Join sessions and meet skaters at active locations.
🔹 Technical Challenges
1️⃣ Efficiently Handling Location Updates – Users constantly move, requiring low-latency map rendering.
2️⃣ Marker Management – Spots, events, and users all require different kinds of markers on the map.
3️⃣ Deep Linking Support – Clicking on a shared location should seamlessly open the correct spot in the app.
✅ Solutions Implemented
- MapKit Integration: SkateConnect uses MapKit with real-time annotations.
- Efficient State Management: Markers update only when necessary, preventing UI lag.
- Deep Linking Architecture: Opening
skateconnect://spot/{id}
takes users directly to the mapped location.
The result? A seamless and engaging experience where skaters can always find the best session nearby.
🎥 Video Sharing & Skate Sessions
A huge part of skateboarding culture is capturing tricks and sharing them with the community. Instead of relying on external platforms, SkateConnect integrates AWS S3 for video hosting, allowing skaters to:
✅ Upload and share videos directly in chat.
✅ Access high-quality replays of past sessions.
✅ Generate deep links to share highlights outside the app.
🔹 Technical Challenges
1️⃣ Optimizing Video Uploads – Skate videos are large, requiring an efficient upload process.
2️⃣ Playback Compatibility – Users on different devices need smooth video playback.
3️⃣ Generating Previews – Videos should generate thumbnail previews before playback.
✅ Solutions Implemented
- AWS S3 Storage – Enables fast uploads & retrieval.
- Automatic Video Encoding – Ensures compatibility across devices.
- MessageKit Video Support – Allows seamless playback in chat.
With this system, SkateConnect makes it effortless to share and relive skate moments without leaving the app.
🚀 Next Steps: What’s Coming in Part 2?
With real-time messaging, skate spot mapping, and video sharing working, the next phase of development focuses on:
✅ Enhancing Direct Messaging – Private & group chats.
✅ Refining the Event System – More efficient subscriptions & filtering.
✅ Optimizing UI Performance – Smoother animations & interactions.
✅ Expanding Deep Link Support – For a seamless user experience.
The SkateConnect journey is far from over, and in Part 2, we’ll dive into performance improvements, real-world testing, and community feedback. Stay tuned!
🏁 Final Thoughts
Building SkateConnect has been an exciting and challenging process. From implementing decentralized messaging to designing a real-time map for skaters, every step has brought valuable insights into merging tech with skate culture.
If you’re a developer interested in real-time systems, Nostr integration, or location-based networking, SkateConnect is a perfect case study. And if you’re a skater, we can’t wait for you to experience the app firsthand.
👀 Stay tuned for Part 2! 🚀
Konstantin Yurchenko, Jr.
- Last edit
- 3 days ago
- Published on