DEV Community

Cover image for SkillSwap Local: Trading Plumbing Skills for React Lessons with Neighbors
Arya Koste
Arya Koste

Posted on

SkillSwap Local: Trading Plumbing Skills for React Lessons with Neighbors

DEV Weekend Challenge: Community

This is a submission for the DEV Weekend Challenge: Community

Have you ever stared at a leaky faucet, wrench in hand, wishing you knew someone—anyone—who could just show you what to do? Or perhaps you're a seasoned baker whose sourdough starter is practically a family heirloom, and you'd love to teach a neighbor the art of the perfect crust in exchange for some tech-support for your laptop?

That's the core of my submission for the Build for Your Community challenge: SkillSwap Local.

It’s completely localized, meaning you aren't shouting into the digital void. You are talking to people blocks away from you. It’s a platform designed specifically to turn strangers in your immediate vicinity into collaborators, teachers, and friends.

🤝 The Community & The Problem

I live in a bustling neighborhood where people are incredibly busy. Despite living shoulder-to-shoulder, the modern paradox is that we barely know each other. We hire expensive contractors for minor fixes, struggle alone with new software, or let our own unique talents gather dust.

The community I wanted to serve was my own neighborhood—and by extension, any local neighborhood. The problem isn't a lack of willingness to help; it's a lack of a structured, safe, and engaging way to connect needs with skills locally.

Why pay a premium for a service when the person three houses down loves doing it and just needs help learning React in return?

✨ The Solution: SkillSwap Local

SkillSwap Local bridges the gap between digital convenience and physical proximity. It’s an interactive, visually stunning platform built on the premise of the barter system, elevated for the modern localized web.

It is a hyperlocal barter platform where neighbors exchange skills instead of cash—plumbing for React mentoring, guitar lessons for UX reviews—discoverable through a live neighborhood map and backed by real‑time chat.

🌟 Key Features & Value Proposition

1. Smart Matching System:
Forget endless scrolling. SkillSwap uses a "Smart Match" algorithm that pairs people whose "offered skills" directly match another person's "needed skills"—creating instant, mutually beneficial relationships.

2. Interactive Neighborhood Radar (Map View):
I didn't just want a list of users. I wanted users to see their community. Using Leaflet, the interactive Map View drops pins of nearby skill-sharers and open requests, turning your neighborhood into a map of opportunities. It defaults to your local area, creating an immediate sense of geographic belonging.

3. Real-Time Chat & Collaboration:
When a match is made, communication needs to be seamless. Built with robust Socket.io integration, the app features instant real-time messaging, allowing groups and individuals to coordinate meetups, share files, and barter without leaving the platform.

4. The Requests Board & Social Feed:
Need something specific right now? Post it to the Requests Board. Neighbors can accept quests—like "need help assembling an IKEA desk"—fostering a gamified sense of helpfulness. The social feed allows users to post updates, share community news, and celebrate successful swaps.

5. Community Leaderboard:
A subtle layer of gamification! The leaderboard highlights the most helpful community members. Earning points by teaching, helping, and successfully completing requests adds a layer of fun and accountability.

6. Polished, Premium UI:
I specifically aimed for a high-end, glassmorphism-inspired dark theme. Why? Because community apps often look like bulletin boards from 1999. I wanted this to feel modern, engaging, and worthy of its users' time. The UI is rich with subtle micro-animations that make exploring your neighborhood feel alive.

🛠️ Technical Execution

I wanted the architecture to be as robust as the community it aims to build.

  • Frontend: Built with React (Vite/CRA), leveraging dynamic routing and Context API for state management. The UI strictly adheres to modern web design principles—utilizing custom CSS (no generic templates here) to achieve a deeply tailored glassmorphic dark mode, smooth transitions, and a premium feel.
  • Backend: A scalable Node.js/Express architecture backed by Sequelize (SQLite for ease of local deployment, easily interchangeable).
  • Real-time: Socket.io powers the chat experience, handling private messaging and group channels with low latency.
  • Geospatial: react-leaflet integrates map views directly into the dashboard.
  • Deployment & Config: Everything is easily configurable via .env files. The API URLs are perfectly isolated so that deployment from a local dev server to a cloud provider is as simple as flipping an environment switch.

🎨 Creativity & The "Spark a Smile" Factor

The most creative aspect of SkillSwap Local isn't just the code—it's the interactions it encourages. The "Radar" view feels a bit like a video game mini-map, turning the mundane task of finding a plumber into a localized quest. The gamified leaderboards add a lighthearted, slightly competitive (but overwhelmingly positive) flair to being a "good neighbor."

It genuinely sparks a smile when you realize the person who can finally fix your bicycle gears is the same person you wave to every morning at the coffee shop.

Demo

Code

SkillSwap Local

SkillSwap Local is a hyperlocal skill exchange platform where users can offer their skills and learn from others in their community. Connect with nearby users, chat in real-time, view users on an interactive map, and share posts!

✨ Features

  • Smart Matching & Radar: Find nearby users offering skills you want and wanting skills you offer. View their location on an interactive map (Leaflet).
  • Real-time Chat: Seamless communication with matches using Socket.io.
  • Community Wall: Share posts, requests, and tips with the community.
  • Rich User Profiles: Display skills offered and wanted in a categorized, polished UI.
  • Premium UI: Modern dark theme with glassmorphism and smooth animations.
  • Database: Uses SQLite for local development and easily switchable to MySQL for production.

🛠️ Tech Stack

  • Backend: Node.js, Express.js, Sequelize (SQLite/MySQL), Socket.io, JWT Authentication, Multer
  • Frontend: React, React Router, React Leaflet, Lucide React, Socket.io-client

🚀 Getting

🛠️ Live Deployment

Deployed on Google Cloud Run with Docker containers. Working demo: skillswap-frontend-818474269873.us-central1.run.app/login

🚀 Wrapping Up

SkillSwap Local isn't just an app; it's a digital catalyst for real-world interactions. In a time when we've never been more connected globally, we've never been more disconnected locally. This project was my attempt to use modern web technologies—real-time sockets, geolocation, and algorithmic matching—to solve a very old, very human problem: getting to know our neighbors.

Thank you to the community for this challenge, and I hope SkillSwap Local inspires you to knock on a door, share a skill, and build your own local fabric!


If you'd like to check out the repo or contribute to bringing SkillSwap to your own neighborhood, let me know in the comments below!

Top comments (2)

Collapse
 
shital_shinde_81481a0ac84 profile image
Shital Shinde

Wow! Nice idea. Very useful and impactful project for the Community. Will definitely check it out.

Collapse
 
arya_koste_5845807df94776 profile image
Arya Koste

Thanks