Segment

A community-driven platform that connects book donors with readers, promoting literacy and sustainable reading habits.

View Live Demo
Segment Logo

Dashboard showing users overview

Segment

A community-driven platform that connects book donors with readers, promoting literacy and sustainable reading habits.

Role

Full-stack Developer

Team

Solo project

Date

Aug - Sep 2024

Motivation

As a lifelong book enthusiast, I’ve consistently observed the issue of unwanted books accumulating on shelves or, more concerningly, being discarded in landfills. Simultaneously, I was aware of individuals in my community who lacked the financial means to purchase new books or had limited access to libraries. Segment emerged from this observed problem and a strong desire to establish connections between book donors and eager readers, resulting in a mutually beneficial arrangement that enhances literacy and extends the lifespan of books.

Features & Mechanics

Segment incorporates several key features to create an engaging and effective book donation platform:

  1. Easy Book Listing: A user-friendly interface for donors to quickly list books they want to donate, including details and condition.
  2. Search: A robust search functionality allowing readers to find available books by title and conditions.
  3. User Profiles: Profiles for donors and readers, showing donation history, listed books and joined date.
  4. Book Details: Detailed view of each book, including title, author, description, condition, and location.
  5. Book Donation: Donate books to the community with ease.

Technologies

Segment is built using a modern tech stack to ensure performance, type safety and maintainability.

  • Tanstack Router: I have always been a fan of Tanstack Query and typesafety and seeing how much typesafe it is made it my choice and I already intended to build it as a Single Page Application so it was a no brainer.
  • Supabase: A backend as a service that provides a postgres database, authentication, and real-time data subscription.
  • React: A JavaScript library that makes building user interfaces way easier than vanilla JavaScript.
  • TypeScript: A typed superset of JavaScript that makes development easier by providing better tooling and ensuring code quality.
  • Rsbuild: A build tool powered by Rspack which is built in Rust and if you’ve ever used Rust you know speed is something they take seriously and being able to make a change and see the page hot reload is milliseconds is amazing.

Impact

Segment aims to make a positive impact by:

  • Promoting literacy and increasing access to books for all community members
  • Encouraging sustainable reading habits through book recycling
  • Building connections between book lovers in local communities
  • Reducing waste by giving pre-loved books a new home

You can view the live demo here and the source code here.