HV Tech Stack Chapter 01 · Stack

Stack.

Every component in the platform. What it does. What it costs. Who owns it.

Contents

In this chapter

  1. i.Shape of the stackI
  2. ii.Core componentsII
  3. iii.Staff-facing componentsIII
  4. iv.License tiersIV
  5. v.SummaryV

I.

Part One

Shape of the stack

A hub in the middle. Spokes at the edges. A traffic cop between them.

Heritage Village runs on a hub-and-spoke model. Microsoft Dataverse is the hub. WordPress, AUC/ADMINS, MaintainX, Constant Contact, WebTrac, and libib are spokes. Power Automate is the traffic cop between them. Teams and SharePoint handle staff surfaces. SendGrid or Mailgun carries transactional email once the resident portal launches.

The golden rule: every piece of data has exactly one owner. AUC owns units and owners of record. MaintainX owns work orders. Dataverse owns the verified contact directory. WordPress owns editorial content and form intake.

Budget lives in one place: hv-data-hub/PLAN.md §5. Consolidated totals with CT tax: Year 1 $11,384.99 including the one-time site build; steady state $5,777.52 a year. Totals include SendGrid (in the base budget as of 2026-07-05), a domain-renewal placeholder (~$27 a year; confirm the current payer), and a $500-a-year unforeseen-expenses buffer. The hub core costs $638.10 a year.

II.

Part Two

Core components

Eleven pieces carry the platform. Each does one job well.

WordPress (custom theme)

The public website and gated resident portal. A custom theme built from vanilla HTML, CSS, and JavaScript. Staff edit content through a stripped-down admin. The theme disables Gutenberg on locked pages and enables it on the editorial blog.

Role
Frontend presentation, editorial content, form capture, resident auth surface.
Cost
WordPress core is free; hosting runs separately (see Operations).
Owner
Heritage Village IT — theme code, plugin roster, release cycle.
Data store
Local MySQL tuned for speed; holds WP users, CPT content, ACF fields, form submissions in transit.

Advanced Custom Fields Pro

Strict form fields replace the open text editor. Staff see labeled inputs for headline, date, committee, PDF, and meeting video. The layout stays locked.

Role
Backend form rail, user-profile extensions, repeater fields for multi-unit owners.
Cost
$49 per year per site ($52.11 with CT tax).
Owner
Heritage Village IT.
Note
Gemini suggested the free tier with CPT workarounds. For 3,600 residents, snowbird addresses, multi-unit owners, vehicles, and emergency contacts, Pro is the correct call.

Gravity Forms Basic

Form capture for resident submissions. A small custom gform_after_submission hook posts each entry to Power Automate. The Basic tier plus that hook replaces the $259 Elite tier.

Role
Form capture; the webhook source for every upstream flow.
Cost
$59 per year ($62.75 with CT tax).
Owner
Heritage Village IT.
Note
Prove the hook when the first form-to-hub flow is built. If it falls short, revisit Elite.

Microsoft Dataverse

The master database. Holds the resident roster, unit ownership, approved vehicles, variance records, work-order history mirrored from MaintainX, and every form submission. One brain. One source of truth for contact data. The directory consolidates four conflicting sources: AUC, the directory spreadsheet, MaintainX contacts, and the census. AUC is the spine. Every contact field carries a source stamp, a verified date, and a completeness flag.

Role
Enterprise hub; canonical resident, unit, and request records.
Cost
Rides on Nate's Power Apps Premium seat ($20/month, the only builder seat). The directory fits the free storage baseline (under 1 GB). No storage purchase.
Owner
Nate (Procurement and Data Manager), the sole builder.

Power Automate

The middleware between every spoke. Triggers on webhooks, database events, and schedules. Translates payloads. Prevents infinite loops by checking the service-account author on every sync.

Role
Webhook receiver, scheduled batch runner, AUC CSV importer, Teams card dispatcher, Constant Contact writer.
Cost
Two Power Automate Premium seats at $15/user/month: the sync service account and the security lead's standalone flows. Premium is not bundled with Power Apps. Dataverse is a premium connector; every flow that writes to it needs a paid seat.
Owner
Nate; the service account runs the sync flows.

AUC / ADMINS

The property and accounting system. Source of truth for units, owners of record, and financials (AP, AR, GL). The most vetted data in the Village. It is the spine of the directory consolidation.

Role
Property records master; feeds the hub one-way, read-only.
Cost
Existing license.
Owner
Office staff.
Integration
No API. A scheduled CSV export lands in a watched SharePoint folder. Power Automate picks it up. Until the AUC developer enables a scheduled export, an employee runs a daily or weekly manual export. That fallback is accepted and does not block Phase 1.

MaintainX

Work orders for trades and office staff. Already in heavy daily use. Stays in place.

Role
Trades system of record; resident-submitted work requests land here.
Cost
Existing license; API access confirmed in use (it already powers the resident work-order status page).
Owner
Operations team.
Integration
REST API through a WordPress server-side proxy. Never embed as an iframe. MaintainX sets headers that block framing. One open question: does the tier include webhooks? Scheduled polling is the accepted fallback.

WebTrac

Calendar, class sign-ups, and space bookings. Already in place. Residents click through; the portal does not wrap it.

Role
Events, registrations, facility reservations.
Cost
Existing license.
Owner
Activities staff.
Integration
Link-out on /living-here/activities; the homepage pulls a lightweight event feed where the vendor supports it.

Constant Contact

The e-Bulletin newsletter provider. Sends to opted-in residents.

Role
Mass email, subscriber list.
Cost
Existing license.
Owner
Communications staff.
Integration
Power Automate writes new opt-ins after Sarah approves them.

libib

Library catalog for the community library.

Role
Book, film, and item catalog.
Cost
Existing plan.
Owner
Library volunteers.
Integration
Link-out from /living-here/facilities/library.

Transactional email

Delivers magic-link emails, form confirmations, and staff notifications. Pairs with WP Mail SMTP. SendGrid or Mailgun both fit.

Role
Deliverable transactional mail.
Cost
$254.60 a year with CT tax (SendGrid Essentials at $19.95/month; Mailgun similar). In the base budget as of 2026-07-05: the launch gates require magic-link delivery, and provisioning mail to 3,600 residents exceeds the free tier's 100/day cap. Free tier covers development until launch.
Owner
Heritage Village IT.
Note
Magic-link auth fails if mail lands in spam. Once the portal launches, this service is not optional.

III.

Part Three

Staff-facing components

Where the people who run the place actually work.

Microsoft Teams

Every staff member lives here. Premium licenses go to builders. Standard licenses get Adaptive Cards.

Role
Staff triage, approval cards, channel routing.
Cost
Bundled with M365 licenses.
Owner
Heritage Village IT.

SharePoint and Excel

The reporting tier for tier-3 staff. Power Automate writes nightly upserts to Excel files on SharePoint. Staff open the files through their standard M365 license.

Role
Read-only dashboards for staff without Power licenses.
Cost
Bundled with M365.
Owner
Heritage Village IT.

Entra ID

Single sign-on for staff. Binds to Dataverse and Power Apps.

Role
Staff identity, license assignment, SSO for internal tools.
Cost
Bundled with M365.
Owner
Heritage Village IT.

IV.

Part Four

License tiers

Three tiers. Each maps to a Microsoft license level.

Paid seats today, exactly three: one Power Apps Premium (Nate, $20/month) and two Power Automate Premium at $15/month each (the sync service account and the security lead's standalone staffing and compliance flows). Everyone else consumes emailed outputs on their existing M365 license. Trades workers stay on kiosk licenses as long as they only receive emailed outputs.

See Auth for the full role table.

V.

Part Five

Summary

The whole stack on one page. Seventeen rows, one sentence apiece.

Layer Component Cost / year (w/ CT tax) Owner
FrontendWordPress custom theme$0 coreHV IT
HostingWP Engine$414.77HV IT
FormsGravity Forms Basic$62.75HV IT
FieldsACF Pro$52.11HV IT
Builder seatPower Apps Premium (1, Nate)$255.24Nate
MiddlewarePower Automate Premium (2 seats)$382.86Nate
Hub DBMicrosoft Dataverse$0 (free baseline)Nate
PropertyAUC / ADMINSexistingOffice
TradesMaintainXexisting, API in useOps
EventsWebTracexistingActivities
NewsletterConstant ContactexistingComms
LibrarylibibexistingVolunteers
EmailSendGrid or Mailgun$254.60HV IT
Domainregistrar TBD (confirm payer)$26.59 placeholderHV IT
AIClaude Max + metered API$3,828.60Nate
Staff chatTeamsM365HV IT
ReportingSharePoint + ExcelM365HV IT
IdentityEntra IDM365HV IT

The table matches the consolidated budget in hv-data-hub/PLAN.md §5 and Website-budget.xlsx. Year 1 adds the one-time $5,607.47 site build.

Hosting platform choice lives in Operations. The plugin list beyond ACF Pro lives in Auth. The design system (typography, palette) is locked in the design-system folder.