Permit services
A React block (a whole screen) in Beamline's Government & legal app.
Where a permit starts on a city's permitting portal. The work's address resolved to the city (its permits are here) or the county around it (that office takes it, with a way there). The city's permits listed as a catalogue grouped by kind of work with counts, each with its usual review time and fee in columns; found by what's being done in plain words (deck, water heater) or narrowed by kind. One chosen leads with its review time, fee and kind of work, then shows what to have ready before starting, each ticked off as it's gathered with how many are ready, and starts an application whose draft keeps whatever is still missing; it can't start for an address outside the city.
Use it for
- A public portal where people must first find the right office and the right service for their job.
- Any application whose success depends on having things ready before starting.
Not for
- Filling in the application (permit-application).
- A submitted permit (permit-record).
Anatomy
- where: the address; in the city, or outside with the county's link
- permits: what you're doing; kinds with counts; each permit with kind, review time and fee
- before you start: the permit; ready of all with the meter; each thing to have ready; what's still to gather; Start application or the draft started
States
- no address
- in the city
- outside the city
- nothing matches
- all ready
- draft started
Keyboard
- Tab through the address, the search, the kinds, the permits and the checklist
Props
| Prop | Type | Default | Description |
|---|---|---|---|
city (required) | string | — | The city's name as it reads in a sentence ("City of Larkspur"). |
county (required) | string | — | The county around it, which takes permits outside the city. |
addresses (required) | ServiceAddress[] | — | |
services (required) | PermitService[] | — | |
address | string | null | — | |
defaultAddress | string | null | — | |
onAddressChange | ((id: string | null) => void) | — | |
defaultService | string | null | — | |
defaultQuery | string | — | |
defaultReady | string[] | — | Requirements already ticked off, by id. |
onStart | ((o: { service: string; address: string; ready: string[]; }) => void) | — | |
onCounty | (() => void) | — | Sent elsewhere: the county's permit office. |
className | string | — | Classes on the documented visual root; no override by default. |
style | CSSProperties | — | Inline styles on the documented visual root; no overrides by default. |
ref | Ref<HTMLDivElement> | — | Receives the documented native target or imperative handle; omitted by default. |
Built from
- combobox
- search-field
- chip-group
- checkbox
- button
Dependencies
lucide-react
Import
import { PermitServices } from "@beamline/permit-services";
Get it
Permit services is part of Beamline UI. Install the parts you need in your React app as compiled packages or editable source. Get Beamline · Connect your agent
More in Government & legal
- Permit application: A permit application filled in over several sittings on a city's portal. Steps with how many answers each still misses; the draft saved as you go and…
- Permit fees: An applicant's permit fees on a city's portal. What's owed across how many permits and how much of it is overdue; every unpaid invoice with its permit…
- Permit record: A submitted permit seen by the applicant. The overview leads with what's waiting on them: the corrections to answer before the next version goes in, each…
- Parcel record: A property's parcel on a permitting portal. The lot drawn to scale as a site plan: the street, the property lines with their lengths, the dashed setback…
- Document review: A PDF going through review: the document in the viewer with every comment pinned to its place, the reviewers' threads beside it (open or resolved, one…
- Signing request: A document sent for signature, its signature page drawn in miniature with each side's block in order. Sides sign as numbered stages that move earlier or…
- Playbook check: A document's changes checked against a versioned playbook (a rulebook of what's acceptable). Each change shows what it was and is now, then two records…
- Audit room: A compliance audit seen by the company preparing it or by the auditor reviewing it. Evidence keeps the company's readiness (not ready, flagged, ready for…
- Agency book: An insurance agency's book in two places. Estimated commission: the report named an estimate (not received or earned), as of a time; each source system…
- Applicant company: A contractor's company on a permitting portal. Its identity with the licence and insurance it applies under, each said valid, expiring within 60 days…
- Applicant projects: An applicant's permits on a city's portal in one place. Projects through saved views (theirs, their company's, expiring within 30 days) and a search…
- Lease renewals: Leases coming up for renewal. The window leads: every tracked lease placed on the days ahead at its end date, coloured by whose step it is (yours, the…
- Queue display: The screen in a waiting room, read from across the room. It draws only a public projection of the queue (ticket codes and counters, never a name or a…
- Visitor journey: A visitor's way into a walk-in queue, on their phone. Branches first: each card names its address, whether it's open (until when, closing soon, full, or…