Fit-out delivery · one login, one Smartsheet backend · PMC / GC / D&B
The platform is a set of dashboards that all read and write the same Smartsheet workspace through a small Cloudflare Worker. Staff open one web address, sign in, and see only what they're assigned. This page is everything needed to put it live and run it day to day.
Everything lives in one folder — put these eight files together and deploy them as a set.
| File | What it is | Login |
|---|---|---|
index.html | Launcher home page — tiles to every dashboard | — |
Vestian_Admin_Console.html | Projects, clients, vendors, stakeholders, employees, users; creates each project's Smartsheet folder & sheets | Platform |
Vestian_Video_Dashboard.html | Video shoots per project (TDD, weekly, timelapse, pre-final, final, revisions) | Platform |
Vestian_Design_Dashboard.html | Drawing / deliverable register by discipline, with revisions | Platform |
Vestian_TeamLead_Tracker.html | DPR / WPR roll-up, site issues & follow-ups across assigned projects | Platform |
Vestian_EHS_Dashboard.html | Your EHS dashboard — retrofitted onto cloud sync | Platform |
Vestian_Cost_Dashboard.html | Your Cost Workbench — retrofitted onto cloud sync | Platform |
Vestian_Project_Dashboard.html | Your Project Hub — retrofitted onto cloud sync | Hub's own |
Keep the Worker file vestian-worker.js separately — it is deployed to Cloudflare, not into this folder.
vestian-proxy.vestian-worker.js and Deploy.SMARTSHEET_TOKEN (the new token) and APP_KEY (any long random passphrase you invent).…workers.dev).vestian.https://vestian.pages.dev.Vestian Workspace, the 00 · Master folder and the master sheets.Admin Console → Users & Roles → New user. Set a role and put ALL or a comma list of Project IDs in "Assigned Projects". They then sign in on any dashboard with those credentials and see only their projects.
Admin Console → Projects → New project. Fill client, category (PMC / GC / D&B), city, area, dates. On save it generates the ID (e.g. V-PMC-BLR-001) and creates the project's Smartsheet folder plus its seven sheets (EHS, Cost, Schedule, DPR, WPR, Video Shoots, Design Tracker). The Video, Design and Team-Lead dashboards then pick it up automatically for anyone assigned.
How data flows: every dashboard reads and writes the same Smartsheet, so cost, EHS and progress stay in sync with no lag. Edits you make directly in Smartsheet appear in the dashboards on their next refresh, and dashboard edits appear in Smartsheet immediately.
Admin, Video, Design, Team-Lead, EHS and Cost all use the shared platform login (the Users sheet you manage in Admin). The Project Hub keeps its own built-in login and roles, because its whole interface is built around them — hub accounts are managed inside the hub and are cloud-shared across the team. If you'd prefer the hub to use the same Users list one day, that's a focused change.
SMARTSHEET_TOKEN secret — never in any HTML file.vestian-worker.js change ALLOW_ORIGINS = ["*"] to your real address, e.g. ["https://vestian.pages.dev"], and redeploy. This stops any other website from using your Worker.Passwords are stored only as salted SHA-256 hashes in the Users sheet — never in plain text.
Cloudflare Pages can't replace a single file — you re-upload the whole folder. Drop the new file into your folder, then in the Pages project: Create a new deployment → drag the folder in → deploy to production. Takes a few seconds.
| Symptom | Fix |
|---|---|
| "Connect & verify" shows an error | The Worker isn't reachable — check the Worker URL and that both secrets are set. Verify only succeeds once the Worker is deployed. |
| Login says "Secure hashing unavailable" | You're on a raw file:// path. Open the hosted pages.dev address instead. |
| It shows "Sign in" instead of "Create the first administrator" | A user already exists in the Users sheet. Sign in, or clear the Users sheet in Smartsheet to start over. |
| A dashboard says "No projects assigned to you" | Add the person's Project IDs (or ALL) in Admin → Users & Roles. |
| A dashboard opens connected but empty | Make sure you created at least one project in Admin first — it provisions the project sheets the other dashboards read. |
| Cost/EHS/Project won't sync | They share the browser's saved connection. Open Admin once in the same browser to connect, or use each dashboard's "set up the connection". |
guide.html