Construct Flow is a full stack project to provide an example of a questionnaire that saves to the backend with edit features. The logic for the questionnaire can be seen below in requirements.
-
Monorepo: frontend, backend and shared packages with workspace:* dependencies in package.json, managed by Bun.
-
/frontend: Fast-loading, clean, single page app built with React/Vite
-
/backend: Hono/tRPC API server with Node.js
-
/shared: Common schemas and types
- Turbo: Monorepo build system and task runner, managing the 3-package workspace.
- Bun: Bun is used for package management and scripts, replacing npm/yarn.
- React: https://react.dev/learn
- tRPC: https://trpc.io/docs
- shadcn/ui: https://ui.shadcn.com/docs/components/radio-group
- Tailwind: https://tailwindcss.com/
- Users are able to create projects (Already completed in the scaffold)
- Users are able to fill out a questionnaire inside of the project describing the scope of work.
- Once the questionnaire is filled out, the permit requirements are shown.
- Leaving and coming back to the projet page should show the stored permit requirements.
- (Optional, if time permits) Users should be able to update their questionnaire and show updated permit requirements.
The questionnaire should follow these business requirements:
Always show this question first. Users can select multiple options.
What kind of work are you doing?
- Interior work
- Exterior work
- Property additions
Only show if interior work is selected. Users can select multiple options.
What kind of interior work are you doing?
- Flooring
- Bathroom remodel
- New bathroom
- New laundry room
- Electrical work
- Other
Only show if exterior work is selected. Users can select multiple options.
What kind of exterior work are you doing?
- Roof modifications/repair
- Garage door replacement
- Deck construction
- Garage modifications
- Exterior doors
- Fencing
- Other
Only show if property addition is selected. Users can select one option.
- ADU (Accessory dwelling unit)
- Garage conversion
- Basement/attic conversion
- Other
Once the user is finished, they should be able to submit the form and get back the requirements. You'll need to show one of three requirements:
✅ In-House Review Process
- A building permit is required.
- Include plan sets.
- Submit application for in-house review.
✅ Over-the-Counter Submission Process
- A building permit is required.
- Submit application for OTC review.
❌ No Permit
- Nothing is required! You’re set to build.
- Any property addition work is selected (ADU, Garage conversion, etc.)
- New bathroom is selected
- New laundry room is selected
- If location is "San Francisco, CA" AND any structural work is selected (deck construction or garage modifications)
- Any "Other" option is selected in any category
- Bathroom remodel
- Electrical work
- Roof modifications/repair
- If BOTH garage door replacement AND exterior doors are selected together
- Not triggering full Review or OTC Review
- Full Review
- OTC Review
- No Permit