Inspiration

Campus communities already have everything needed to help one another: unused items, surplus event food, and thousands of students moving through the same spaces every day.

The problem is that this information is fragmented across chats and informal groups. Useful posts quickly disappear, leftover food expires before reaching nearby students, and lost-property exchanges can expose personal information or lack a trustworthy handover process.

We built ShareNUS, the NUS Community Exchange, to bring these interactions into one trusted, mobile-first platform. Our goal is to make sharing within NUS faster, safer, and more rewarding while reducing waste and strengthening the campus community.

What it does

ShareNUS brings three community experiences together:

  • Marketplace aggregates time-sensitive Marketplace Listings into a searchable public feed with categories, prices, expiry information, and consent-based contact links.
  • Buffets helps students discover surplus food before it goes to waste. Posts are organized using predefined NUS Zones, automatically expire, and can trigger opt-in alerts for students in the same or a nearby zone.
  • Lost & Found lets Participants report lost or found property while keeping identifying details private. Moderators publish sanitized descriptions, arrange secure handovers, and maintain a clear chain of custody.

Anyone can browse sanitized public information without signing in. Actions such as posting, commenting, reporting content, receiving alerts, and earning Gems require an authenticated uNivUS Participant.

ShareNUS also includes public discussions, content reporting, private notifications, Participant profiles, policy consent, role-based moderation, and an operator audit trail. Participants earn non-transferable Gems for meaningful contributions, including daily participation and verified handovers of found property.

How we built it

We built the working prototype as a mobile-first React application using Vite. A Node.js and Express backend exposes the application APIs, while SQLite provides persistent storage for Participants, posts, alerts, moderation records, policies, sessions, and the Gem Ledger.

The prototype includes a simulated uNivUS launch flow that passes a verified campus identity into ShareNUS. Sessions are stored using hashed tokens and secure HTTP-only cookies, while private profile information remains separate from public identity.

Marketplace data is processed through a permission-gated Source Feed architecture. For the demonstration, we replay deterministic fictional Telegram-style fixtures rather than connecting to a live chat. The parser extracts safe listing information, removes contact-like text, tracks edits and deletions, and sends ambiguous content to Moderator review. An author’s name or contact link appears only when the appropriate consent has been recorded.

For Buffet Alerts, we created a versioned graph of ten NUS Zones. This lets the system deliver an alert when fresh food appears in a Participant’s selected zone or an adjacent zone without collecting precise GPS locations. Alert delivery is deduplicated, and Participants can mark an alert as helpful or report that the food is gone.

Lost and found submissions use encrypted private fields and sanitized images with metadata removed. Only Moderator-approved descriptions and photos become public. When an item is physically handed to the Custodian, ShareNUS creates an immutable custody record and awards Gems exactly once.

Sensitive actions are protected through role-based permissions for Participants, Moderators, and the Platform Operator. Moderation decisions, Gem transactions, custody events, and policy acceptances are recorded in append-only audit structures.

Challenges we ran into

Our biggest challenge was balancing openness with privacy. Public feeds are most useful when anyone can browse them, but source identities, contact details, ownership evidence, and handover information must remain protected. We addressed this by designing separate public and private representations of the same workflow, applying explicit consent controls, and failing closed whenever operational approval is missing.

Freshness was another challenge. Marketplace and Buffet posts lose value quickly, so the system needed deterministic expiry rules, duplicate prevention, source-edit handling, and automatic refresh behavior.

Lost and found introduced both digital and physical trust problems. We had to model moderation, private ownership evidence, photo sanitization, appointments, custody intake, and rewards as one consistent process rather than treating each report as a simple public post.

Finally, combining three distinct features into one product required a shared mobile design system. We standardized navigation, filters, cards, form panels, status states, responsive behavior, keyboard focus, and accessible labels across every feed.

Accomplishments that we’re proud of

We are proud that ShareNUS is more than a collection of mock screens. The prototype supports complete end-to-end flows across authentication, public discovery, moderation, alerts, lost-property handover, and Gem rewards.

We are especially proud of:

  • Making useful campus information publicly discoverable without exposing private Participant data
  • Building privacy and consent into Source Feed ingestion from the beginning
  • Creating location-aware Buffet Alerts without continuous location tracking
  • Designing a moderated lost-property workflow with encrypted evidence and verifiable custody
  • Using immutable ledgers and audit records for rewards and sensitive decisions
  • Delivering a responsive, accessible interface that works from 320-pixel mobile screens upward

What we learned

We learned that community platforms cannot treat trust and safety as features to add later. Consent, moderation, retention, auditing, and operational responsibility shape the entire data model.

We also learned that a small amount of carefully structured campus context can be more useful than invasive tracking. A simple, versioned NUS Zone graph supports relevant nearby alerts while preserving privacy.

Most importantly, we learned that incentives work best when they reward verifiable contributions. Connecting Gems to actions such as a completed physical handover makes the reward system meaningful and auditable.

What’s next for ShareNUS

Our next steps are to complete direct creation and management workflows for Marketplace Listings and Buffet Posts, expand the Gem system into a fuller contribution and redemption loop, and continue polishing the shared interface and Lost & Found experience.

For production, we plan to migrate the prototype to an installable Next.js application backed by Supabase and deployed through Vercel. Before enabling live Source Feeds, we will complete the required permission, privacy, retention, custody, recovery, and operating procedures.

Ultimately, we want ShareNUS to become a trusted layer inside uNivUS where students can find what they need, share what they have, reduce campus waste, and receive recognition for helping the NUS community.

Built With

Share this project:

Updates

Submission history