CREPR
Commercial real estate platform for retail — a multi-tenant brokerage platform for landlord representation and occupier representation.
Historical Timeline
Project spans are based on archive evidence. Metadata uses database/schema source count and inferred functionality signals. Select a project to expand its details.
LocationIQ01/15/2013 - 03/08/2016
RMDB / Kirschlease10/06/2014 - 03/11/2018
ShopLease12/17/2017 - 10/17/2020
RetailerSpace / RSpace01/23/2019 - 05/08/2025
RentDesk08/30/2020 - 06/20/2021
Area Token12/29/2020 - 06/28/2023
Kirsch Agency Platform05/21/2024 - 06/28/2026
Kirsch Agency v606/13/2026 - 10/05/2026
CREPR10/01/2026 - 01/01/2027
Practice Areas
CREPR supports the two sides of a retail brokerage practice. Each side has its own engagement container and its own kind of broker activity.
Landlord Representation
Marketing Locations on behalf of property owners to attract occupiers. A Listing packages a Location and a chosen group of its Properties into a time-bound marketed offering.
An outreach action promoting one Listing to one Occupier. Every Listing × Occupier pair builds its own thread of outreach history.
Occupier Representation
Finding and evaluating properties for businesses seeking space. A Showing Pipeline holds the engagement for one occupier-side Client.
A broker showing a Property to an occupier-side Client. Every Showing Pipeline × Property pair builds its own thread of evaluation history.
Domain Model
Every record on the platform hangs off a fixed physical hierarchy, a small set of core entities, and event threads that record what brokers actually did.
Physical hierarchy
The hierarchy is never flattened or skipped: every Property has one Location, every Space has one Property.
- Location — A real-world site or campus. The primary unit of marketing.
- Property — A leasable package that belongs to exactly one Location.
- Space — An individual leasable unit, measured in square feet, inside exactly one Property.
- Space Costs — Asking Costs offered by the landlord, and Taking Costs agreed in a deal.
Core entities
A formal brokerage relationship with an external organization: landlord-side, occupier-side, or both.
A business or brand that takes or seeks leasable space. The target of landlord-side outreach.
An external individual reached during prospecting and outreach.
A time-bound marketed offering for a Location and a group of its Properties.
An occupier-side engagement grouping the Properties evaluated for one Client.
The formal pursuit of a real estate outcome. Always tied to exactly one Client; multi-party deals are separate Deals.
Event threads
Events are records of deliberate broker actions. Events sharing an anchor form a thread, ordered newest first. A thread's status is always derived from its most recent event, never stored separately, and an event's sentiment and anchor are never rewritten after the fact.
| Thread | Anchored to | Status comes from |
|---|---|---|
| Prospecting | Listing × Occupier | Latest event sentiment |
| Showing | Showing Pipeline × Property | Latest event status |
| Deal | Deal | Latest event status |
Tech Stack
CREPR is a single Next.js application deployed on Vercel.
- Framework
- Next.js (App Router), React, TypeScript
- Database
- PostgreSQL on Neon, Prisma
- Authentication
- Auth.js with Google and Microsoft sign-in
- File storage
- EdgeStore
- Maps
- Google Maps via @vis.gl/react-google-maps
- AI
- Vercel AI SDK with Google and OpenAI models
- State and data fetching
- Redux Toolkit and RTK Query
- Forms and validation
- React Hook Form and Zod
- UI
- Radix UI, Tailwind CSS, Lucide icons
- Localization
- next-intl
- Hosting
- Vercel