FeaturesTemplatesShowcaseTownie
AI
BlogDocsPricing
Log inSign up
jibolad
jiboladEstateskillsearch
Public
Like
Estateskillsearch
Home
Code
4
backend
3
frontend
3
shared
1
README.md
Branches
1
Pull requests
Remixes
History
Environment variables
Val Town is a collaborative website to build and scale JavaScript apps.
Deploy APIs, crons, & store data – all from the browser, and deployed in miliseconds.
Sign up now
Code
/
Code
/
Search
index.ts
https://jibolad--301eeefa3fb411f08c9f76b3cceeab13.web.val.run
README.md

Neighborhood Skill Exchange Platform

A comprehensive platform for neighbors to create profiles, list their skills, and connect with each other for mutual help and support.

Features

User Profiles

  • Create detailed user profiles with bio, location, and contact information
  • Manage multiple skills per user
  • Organize skills by categories (Home & Garden, Technology, Cooking, etc.)
  • Toggle skills active/inactive status
  • View all neighbor profiles and their offerings

Skill Management

  • Add skills as either "offers" (things you can help with) or "requests" (things you need help with)
  • Categorize skills for better organization
  • Add descriptions to provide more context
  • Filter profiles by skill type (offers vs requests)

Legacy Support

  • Maintains backward compatibility with simple skill submissions
  • Quick submit option for one-off skill sharing

Project Structure

  • backend/ - Hono API server with SQLite database
    • routes/profiles.ts - User profile and skill management endpoints
    • routes/submissions.ts - Legacy submission endpoints
    • database/ - Database migrations and queries
  • frontend/ - React frontend with profile management
    • components/ProfileManager.tsx - Profile creation and skill management
    • components/ProfilesList.tsx - Display all neighbor profiles
    • components/ProfileForm.tsx - Profile creation/editing form
    • components/SkillForm.tsx - Add new skills to profile
  • shared/ - Shared types and utilities

API Endpoints

Profile Management

  • POST /api/profiles - Create or update user profile
  • GET /api/profiles - Get all user profiles
  • GET /api/profiles/:userName - Get specific user profile
  • GET /api/profiles/:userName/skills - Get user's skills

Skill Management

  • POST /api/skills - Add skill to user profile
  • GET /api/skills - Get all skills (with optional type filter)
  • PATCH /api/skills/:skillId/toggle - Toggle skill active status

Legacy Endpoints

  • POST /api/submissions - Create new submission
  • GET /api/submissions - Get all submissions

Usage

Creating a Profile

  1. Go to the "User Profiles" tab
  2. Enter your username and click "Load Profile"
  3. Click "Create Profile" if you don't have one
  4. Fill in your information (email, location, bio)
  5. Submit to create your profile

Adding Skills

  1. After creating a profile, use the "Add New Skill" form
  2. Enter skill name and select a category
  3. Choose whether you're offering help or requesting help
  4. Add a description for more context
  5. Submit to add the skill to your profile

Managing Your Skills

  • View all your skills in the "Your Skills" section
  • Toggle skills active/inactive as needed
  • Skills marked as inactive won't appear in the public listings

Browsing Neighbors

  • View all neighbor profiles in the right panel
  • Filter by "Offers" to see what help is available
  • Filter by "Requests" to see who needs help
  • Contact neighbors directly via their email if provided

Skill Categories

  • Home & Garden
  • Technology
  • Cooking & Food
  • Transportation
  • Childcare
  • Pet Care
  • Tutoring & Education
  • Arts & Crafts
  • Music & Entertainment
  • Health & Fitness
  • Business & Professional
  • Other
HTTP
  • index.ts
    jibolad--30…13.web.val.run
Code
backendfrontendsharedREADME.md
Go to top
X (Twitter)
Discord community
GitHub discussions
YouTube channel
Bluesky
Product
FeaturesPricing
Developers
DocsStatusAPI ExamplesNPM Package Examples
Explore
ShowcaseTemplatesNewest ValsTrending ValsNewsletter
Company
AboutBlogCareersBrandhi@val.town
Terms of usePrivacy policyAbuse contact
© 2025 Val Town, Inc.