Skip to content

wesleybertipaglia/circula

Repository files navigation

Circula - Community Exchange Platform

Banner

This repository contains my submission for the DEV Weekend Challenge. Circula is a local mini-economy platform that connects neighbors to donate, exchange, and borrow items within their community.

Problem & Solution

In every neighborhood, people have items they no longer need but others could use. At the same time, many people need temporary access to items they don't want to buy. Circula bridges this gap by creating a trusted community marketplace where neighbors can:

  • Donate items they no longer need
  • Exchange items with others
  • Borrow items temporarily

πŸ“Œ Table of Contents

πŸ’‘ Features

  • πŸ”„ Multiple Exchange Types: Support for donations, exchanges, and borrow requests
  • πŸ” Smart Search & Filter: Find items by type, category, or keywords
  • πŸ“± Responsive Design: Works seamlessly on desktop and mobile
  • πŸ’¬ Built-in Messaging: Direct communication between users
  • πŸ‘€ User Profiles: View item history and community reputation
  • πŸ–ΌοΈ Image Support: Upload photos of items to showcase them
  • πŸ“„ Pagination: Smooth browsing through large item collections

πŸ›  Tech Stack

  • Framework: Next.js 16 with App Router
  • Language: TypeScript
  • Styling: TailwindCSS + shadcn/ui
  • State: React hooks + LocalStorage
  • Icons: Lucide React
  • Forms: React Hook Form + Zod

πŸš€ Demo

Live demo available at: circula-community.vercel.app

Note: This project currently uses mock data and LocalStorage as a temporary repository for testing purposes. A real backend can be integrated in the future.

πŸ›  Get Started

Prerequisites

  • Node.js (v18+)
  • npm

Installation

# Clone the repository
git clone https://github.com/wesleybertipaglia/circula.git

# Navigate into the project folder
cd circula

# Install dependencies
npm install

Running the Project

# Start the development server
npm run dev

# Open your browser and navigate to
http://localhost:9002/

Building for Production

# Create production build
npm run build

# Start production server
npm start

πŸ“– Usage

  1. Browse Items: View available items in your area with filtering options
  2. Create Account: Sign up to start listing or requesting items
  3. List an Item: Choose between donation, exchange, or borrow
  4. Connect: Message other users to arrange the exchange
  5. Complete Exchange: Coordinate with the other party to finalize

🀝 Contributing

Contributions are welcome! If you have any suggestions or improvements, please open an issue or a pull request.

πŸ“„ License

This project is licensed under the MIT License.

About

πŸš€ Circula is a local mini-economy platform where communities can donate, exchange, and borrow items from each other.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages