Arenesha Coworking Space

The platform a coworking operator runs on: memberships, meeting rooms, billing and the site itself.

arenesha.com
Client
51k
Lines of code
20
Admin modules
208
Source files
Next.jsSupabasePostgreSQLFullCalendarTipTapVercel

The problem

A coworking operator running multiple floors was holding the business together with spreadsheets, a booking sheet and a developer on call for every marketing change. Meeting-room allowances were tracked by hand, partner marketplace bookings arrived by email, and the public site needed an engineer to publish a page.

What we built

  • Admin console covering branches, workspaces, pricing, maintenance and analytics, with orders, offers, inquiries and finances in one place
  • Member portal for meeting-room booking, membership status and booking history
  • Meeting-room credit system with monthly allowances reset on a scheduled job, so allowances do not have to be reconciled by hand
  • Block-based CMS page builder with row-level security, so staff publish and edit landing pages without a deploy
  • Partner booking integration with a coworking marketplace, replacing an email-driven process
  • Inbound email ingestion and transactional mail for enquiries and member messaging
  • Programmatic location landing pages for local search, built on the same block system
  • Audit logging and role-based access across the admin surface, so every mutation has an actor and a timestamp
  • Month-end reporting that reconciles bookings, memberships and payments against one another rather than against three exports
  • Maintenance scheduling per workspace, so a room out of service stops appearing as bookable instead of being remembered by staff

Decisions worth explaining

Content editing had to stop being a deploy

The operator was raising a ticket every time a landing page needed a price or a photograph changed. Rather than bolt on a third-party CMS, the page builder was built into the platform: a set of typed blocks, a schema that validates them, and row-level security so a staff account can publish only its own tenant's pages. Marketing changes stopped touching the release process entirely.

Meeting-room credits are a ledger, not a counter

Allowances that are simply decremented cannot answer why a member has the balance they do. Credits are recorded as movements with a reason and a timestamp, and the monthly reset is a scheduled job that posts a new allocation rather than overwriting the old number. A disputed balance can be reconstructed rather than argued about.

Partner bookings needed to look like every other booking

Marketplace reservations arrived by email and were rekeyed by hand, which meant double-bookings. The integration writes them into the same booking model as direct reservations, so availability, capacity and reporting have one source of truth instead of two that disagree.