CityPins - Hyperlocal City Content Platform

Project Gallery

Project Overview

Project Info

Category Social
Year 2026

Deliverables

Cloud Deployment Database UI/UX Design Web App

Technologies

CSS HTML MySQL PHP Vanilla JS

CityPins is a hyperlocal content platform where local businesses, creators and brands publish short-lived "pins" — city-targeted posts about offers, events, jobs, services and local updates — while residents browse, engage with and discover what is happening around them, city by city.

Instead of a payment gateway, publishing is powered by an internal credit economy. Every pin costs credits based on how many weeks it stays live and how many cities it targets, and creators can spend additional credits to boost or highlight a pin for greater visibility.


Role-Based Access

The platform separates what each type of account can do, from anonymous browsing through to full administration.

  • Guest — browse any city feed without an account
  • User — browse and engage with pins
  • Poster — publish pins in an assigned city
  • Brand — publish the same pin across multiple cities
  • Admin — moderation, pricing and full platform control

Poster and Brand accounts require admin approval before they can publish anything, and every protected action is checked against role, account state and record ownership.


City-Based Discovery

Content is always scoped to a city, so the feed stays relevant to where the visitor actually is.

  • First-time visitors choose their location through a state and city picker
  • A searchable city selector in the header allows switching at any time
  • The selected city is remembered for the next visit
  • Category filter pills narrow the feed to food, offers, jobs, events and more
  • A separate trending tab ranks pins by engagement instead of recency
  • Shared pin links open the referenced pin at the top of the feed


Feed & Engagement

Pins load in batches with infinite scroll, skeleton placeholders while fetching, and friendly empty states when a city has no content yet.

Each pin card shows the author, role badge, city, category, time posted and an optional image or external link. Visitors can react and share directly from the card.

  • Like and downvote with live counter updates
  • Share through the native share sheet on mobile or clipboard on desktop
  • Report inappropriate content once per pin
  • Pins crossing the report threshold are hidden from the feed automatically
  • View counts tracked per pin
  • Boosted pins surface at the top; highlighted pins get a gradient border and star badge


Pin Creation & Multi-City Publishing

Approved creators compose a pin in a single form with a live character counter, category, duration and target cities.

  • Short-form pin text with a strict character limit
  • Category, state and city selection with a select-all shortcut for brands
  • Duration set in weeks, with automatic expiry once the period ends
  • Optional external link and optional image upload
  • Live cost preview showing credits per week, total cost and current balance
  • Brands and admins publish one pin to many cities at once
  • Posters can be granted additional cities by an administrator
  • A short post-publish window for editing, plus the option to close a pin early
  • Related pins can be attached to an existing pin as a thread


Credit Economy

Credits are the single currency for every paid action on the platform, and every movement is written to a transaction ledger.

  • Configurable credit cost per week of publishing
  • Boost priced per day, highlight priced as a flat cost
  • Starting credits granted on registration
  • Automatic monthly top-up for approved creators through a scheduled job
  • Credit balance card with last top-up date
  • Full credit history with reason, date and amount for every entry
  • Low balance warnings delivered as notifications
  • Admins can credit or debit any account with a recorded reason


Creator Dashboard

Creators get their own workspace showing credit balance, active pins and expired pins, along with quick actions for publishing and reviewing performance.

The My Pins area separates active, inactive and expired pins, and each card shows likes, downvotes, shares, views, credits spent, expiry date and the actions available for that pin.


Notifications

An in-app notification centre keeps creators informed about account approval, credit top-ups, low balances and other system events, with unread highlighting, mark-all-read and a polled unread badge on the header bell.


Admin Panel

A dedicated admin area controls the entire platform from the same interface.

  • Dashboard with user, pin, state and city statistics plus daily activity
  • User management with search, role and status filters
  • Approve or revoke Poster and Brand accounts
  • Adjust any user's credits and assign additional publishing cities
  • Pin moderation with search, status filters, deactivate, delete and restore
  • Category management with activate and deactivate toggles
  • State and city management for the location hierarchy
  • Credit and pricing configuration, including the auto-hide report threshold


Multi-Language Support

The interface is available in English, Tamil, Telugu, Kannada, Malayalam and Hindi, selected from the header and remembered between visits.

Pin content itself is translated on demand and cached in the database, so the same pin can be read in the visitor's own language without the author doing extra work.


Accounts & Security

  • Registration confirmed by a six-digit email OTP before the account is created
  • OTP-based password reset flow
  • Token-based authentication with role checks on every protected endpoint
  • Hashed passwords and prepared statements throughout
  • All user-generated content escaped before rendering


Platform Highlights

  • City-scoped hyperlocal feed with trending and category filters
  • Short-lived pins with automatic expiry
  • Credit-based publishing instead of a payment gateway
  • Boost and highlight promotion options
  • Multi-city publishing for brands
  • Guest browsing with engagement gated behind login
  • Likes, downvotes, shares, views and community reporting
  • Automatic hiding of heavily reported pins
  • Creator dashboard with credit ledger and pin analytics
  • Email OTP verification and password recovery
  • Six-language interface with automatic pin translation
  • Complete admin panel for users, pins, locations and pricing
  • Mobile-first responsive design with bottom navigation
  • Scheduled monthly credit refill job

Related Projects