This System Requirements Document (SRD) defines the requirements for Batangas Lowkey Eatery, a free, mobile-first, installable web directory (PWA) that helps people discover verified, hidden local eateries in Batangas City. The system centers on small eateries, street food stalls, and turo-turo spots that delivery apps and tourist-focused platforms overlook, and it is built for locals with barangay-level detail.
The requirement set in this document is derived from the project's Value Proposition Canvas / Lean Canvas submission and the explicit capability specification provided by the project team.
The system exists to address the following stated problems:
The system is a directory only. It provides discovery, verification, sharing, reviews, favorites, and promotion surfaces. It explicitly does not provide online ordering, delivery, or payment processing. Revenue is generated through promoted listings and featured vendor spotlights.
This SRD is written for the project team building and deploying the application, and for reviewers validating that the delivered product matches the agreed capabilities.
Batangas Lowkey Eatery is a responsive, mobile-first, PWA-installable web application organized around three user roles:
| Role | Access Model | Primary Purpose |
|---|---|---|
| Diner | Public; no login required to browse | Find cheap, filling meals nearby using search, filters, and barangay proximity |
| Vendor | Registered / authenticated | Gain free exposure for their eatery and optionally request promotion |
| Admin | Internal, restricted | Verify listings, manage content taxonomy, and monitor platform metrics |
The system maintains a curated, verifiable catalog of eateries with barangay-level location detail, locally sourced reviews, and a trust signal in the form of a "Locally Verified" badge awarded by Admin after review. Discovery is organized around categories (Eatery, Street Food, Turo-turo), barangay proximity, budget-friendly price range, and a verified-only filter.
Content surfaces include a Discover Hidden Gems section and a Featured / Promoted section that is clearly labeled as promoted. Every eatery has a shareable, QR-code-friendly URL.
The application is delivered as a mobile-first progressive web app with a bottom navigation bar on mobile and a top navbar on desktop, optimized for fast loading on slow mobile data.
Functional requirements are expressed as user stories. Each distinct capability is captured as its own story.
Personas are limited to active product roles with materially distinct workflows.
The design direction is warm, friendly, and local, with a food-inspired feel, clean cards, big food photos, simple icons, and short plain-language copy. A mix of English with light Filipino/Batangueño tone is expected in UI text.
The project-wide creative direction is "Big-hearted barangay boldness" (muse: Haraldur Thorleifsson): a hand-painted carinderia sign blown up to poster scale — big friendly type, confident colour blocking, chunky rounded cards, and character. Trust must read as "kapitbahay vouched for this", not "platform-certified". The generic indigo/blue-on-white SaaS template is forbidden for this project.
The palette uses a cream ground with deep Batangas green as the brand colour and coral as the hot accent. Cream #FFF6E9 is the ground everywhere (never white-first); pure white is used only for cards and sheets.
| Token | Value | Usage |
|---|---|---|
--bg-cream | #FFF6E9 | Page background, cream ground everywhere (never white-first) |
--surface | #FFFFFF | Cards, sheets, detail panels only |
--ink | #1B1A17 | Primary text |
--ink-muted | #6E655A | Secondary text, metadata |
--primary-green | #0F5B4C | Brand, nav, "Locally Verified" badge, primary buttons |
--accent-coral | #FF5A3C | Promoted labels, save/heart, price chips, one hero colour block (~8% of any screen) |
--cat-sunflower | #F5B31E | Category code colour (Eatery) on chips and thin card rules |
--cat-lake-blue | #2E7FA8 | Category code colour (Street Food / Turo-turo) on chips and thin card rules |
--rule-ink | #1B1A17 | 2px ink rules separating sections and the hero card outline |
Colour rules:
#F5B31E and lake blue #2E7FA8 appear only as category code colours (Eatery / Street Food / Turo-turo) on chips and thin card rules.clamp(40px, 9vw, 88px); section headings clamp(26px, 4vw, 40px); card titles 20–24px; body 16–17px with 1.6 line-height; micro-labels 12px uppercase +0.08em tracking.All text/background pairings meet high-contrast expectations, and color is never the only signal — the "Locally Verified" badge and the "Promoted" label always carry visible text as well.
Headlines, wordmarks, labels, numbers, cards' text and controls stay entirely inside the viewport and their container at 375px, 768px and 1280px, wrapping or scaling (for example font-size: clamp(...) with its mobile size) to fit, and no other element covers any part of them. Imagery, decoration and motion may be cropped, bled off an edge, rotated, overlapped or cut exactly as the direction asks, as long as it covers no readable text or control. Moving and scrollable content (marquees, tickers, carousels, horizontally scrollable rows) may cross the viewport or container edge by design: judge it by whether it actually moves or scrolls and whether every item becomes fully readable as it passes, never by the item cut at the edge in a still frame. With prefers-reduced-motion, provide a usable static arrangement: wrap items into rows or allow horizontal scrolling so each item can be brought fully into view. A scrollable row need not show every item fully at once, including in reduced-motion mode. Where a direction, requirement, brief or finding asks readable text or a control to be cropped, clipped, covered or run off an edge, keep it whole and carry the gesture with imagery or decoration instead; for readable text and controls this rule takes precedence.
"The Locally Verified Seal."
The defining visual and trust concept of Batangas Lowkey Eatery is the Locally Verified seal — a compact, hand-stamped-looking badge applied to eatery cards and detail pages only after Admin review, paired with the admin's verification notes. It is the product's answer to the stated problem that "it is hard to tell which info is trustworthy."
Supporting this concept:
prefers-reduced-motion.#0F5B4C block, edge to edge, carrying an oversized flush-left Sora headline in cream — "Ang sarap na lowkey, hanapin dito." — sized clamp(40px, 9vw, 88px) with the last word in coral #FF5A3C.Motion Tempo: restrained); hero dimensionality: layered 2D; hero drama: bold.motion/react) or GSAP — no Canvas, no R3F, no Drei.#0F5B4C block; (2) the headline and the white search pill + category chip row inside the same block; (3) the coral 48px diagonal ticker band with continuously scrolling "PROMOTED" ink-caps labels; (4) the cream band below the fold-line with the barangay signage tabs and first card grid; (5) at 768px and up, a single tall portrait food photo bleeding off the right edge, overlapping the green block and cropped by the viewport.prefers-reduced-motion all of it resolves to instant static states and the ticker becomes a wrapped row.motion/react) or GSAP — the restrained hero and band entrance motion described in the Landing Hero Motion Brief.The team has stated this stack may be swapped.
users (including role)eateries (name, category, barangay, address, price_range, hours, description, contact, status, is_verified, is_promoted)eatery_photosmenu_itemsreviewsfavoritesbarangayscategoriespromotionspage_viewssearch_logsThis section defines what each page owns. Independent visual responsibilities get top-level section ownership; tightly coupled visual regions stay as named nested subcomponents under their one mutable-state owner.
HeroHeadline, SearchPill, CategoryChipRow.prefers-reduced-motion.| Term | Definition |
|---|---|
| Barangay | The smallest local administrative division in the Philippines; used here as the primary locality filter for "near me" discovery. |
| Batangas Lowkey Eatery | The free food directory product defined by this SRD. |
| Diner | A public user who browses the directory to find affordable local food. |
| Discover Hidden Gems | A curated Home page section surfacing small, lesser-known local eateries. |
| Eatery | A small local food establishment listed in the directory. |
| Featured / Promoted | Paid placement that must always be clearly labeled as promoted. |
| Locally Verified | The admin-granted trust badge indicating a listing has been reviewed and validated, supported by verification notes. |
| PWA | Progressive Web App; an installable web app with manifest, service worker, and offline support. |
| Promoted Listing | A vendor-purchased visibility placement. |
| Street Food | A food category for street-side food vendors. |
| Turo-turo | A Filipino-style eatery where cooked dishes are displayed and customers point to their choice. |
| Vendor | A registered eatery owner/operator who manages a listing and may request promotion. |
| Verification Notes | Admin-authored justification recorded when a listing is marked "Locally Verified". |
No completed page designs yet.
Completed design pages will appear here when they are ready to preview.
No completed page designs yet.
Completed design pages will appear here when they are ready to preview.
No comments yet. Be the first!