Skip to content
Sava Stosic, home
Selected work

Live community portal

H

Idea to delivery / Web / 2026

Harbourpoint Community.

A resident portal with customizable sections for each building. The current setup includes parking, storage lockers, a marketplace, and contractor recommendations.

Resident access requires administrator approval.

Harbourpoint resident dashboard with parking, lockers, marketplace, contractor directory, bookings, and profile shortcuts, shown with a demo account
The resident dashboard arranged in a single column on a phone, with a demo account

Resident dashboard · Preview with sample data

Users
80+
Building
1
Sections
Customizable

Usage reported by the project owner as of .

From parking to a community portal.

The parking domain reflects where the project started. The product has grown to support more of the building’s everyday needs.

The problem

Parking offers, items for sale, and service recommendations were spread across chats and noticeboards. The portal gives residents one place to find current information and arrange directly with a neighbour.

My role: idea to delivery

I created and delivered the entire product, from the original idea to the live portal. I handled the product scope, UX and visual design, frontend and backend development, testing, and deployment.

Customizable sections. The current building’s setup includes:

  • Parking
  • Storage lockers
  • Resident marketplace
  • Contractor directory

Interface and design

Desktop and mobile views share the same navigation and listing patterns. These previews use the project’s components with sample data.

Consistent navigation

Colour and icons distinguish sections, while browsing and posting follow the same pattern across desktop and mobile.

Details suited to each section

Listings show the relevant price, availability, location, or service details. Filters help residents find a suitable entry.

Clear status and controls

Membership, booking decisions, and sold items have visible states. Residents can manage their own posts and requests.

System architecture

Next.js provides the interface and server routes. Firebase handles identity and data; Resend delivers notification emails.

Application and services

Next.js + React

Resident interface · Listing forms · Admin screens

Firebase Authentication

Identity · Sign-in · Session cookies

Firestore + Storage

Listings · Directory entries · Uploaded photos

Next.js API + Resend

Booking transactions · Account operations · Email

Approved community access

Administrators approve new members. Access rules check membership and ownership before residents can read or change community data.

Consistent booking availability

A server transaction checks conflicts and updates the booking and reserved dates together. Email notifications follow the committed decision.

Built with

Next.js · TypeScript · React · Tailwind CSS · Firebase Authentication · Firestore · Cloud Storage · Firebase Admin SDK · Resend · Vercel

Results

A live product used by building residents, with resident and administrator workflows delivered together.

  • 80+ users across 1 building, as of October 7, 2026
  • Customizable sections with resident posting, search, and administrator controls
  • Parking requests with host approval, availability checks, and email notifications

What I learned

Shared availability affects more than one account. Booking and account cleanup need to preserve other residents’ reserved dates, just as carefully as the initial booking flow.

Early community feedback

The original parking concept drew interest from residents and an offer to help with testing.

“Saw your post about the parking spots app..super cool idea! I hope the residents sign on for it too! My husband and I are currently renting a spot from someone in the building. But we could have definitely benefited from such an app in the past.”

Building residentFeedback on the parking concept

“Great idea, I would support using this app for sure.”

PaulaCommunity comment

“Incredible idea. I have experience with QA and would be happy to run through test cases if you need it”

DanCommunity comment