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 seven files together and deploy them as a set.
| File | What it is | Login |
|---|---|---|
index.html | Launcher home page — tiles to every dashboard | — |
Vestian_Project_Dashboard.html | Your Project Hub — projects, clients, vendors, stakeholders, employees, users; creates each project's readable Smartsheet folder & sheets | Hub's own |
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 |
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 state store, the readable 00 · Master registers folder and the master sheets.ADMIN / 1234) and change the password from My Account. Then add your real users under Admin → Users.Project Hub → Admin → Users → New user (or create the login straight from an employee record). Assign them to projects on each project's team. They then sign in on any dashboard with those credentials and see only their projects.
Project Hub → Projects → New project. Fill client, category (PMC / GC / D&B), city, area, execution start and go-live dates. On save the Hub creates the project's readable Smartsheet folder (<ID> · Client — City) plus its readable sheets — Requisites & Documents, Daily Progress (DPR), Weekly Progress (WPR), EHS, Cost, Schedule, 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.
All dashboards — Project Hub, Video, Design, Team-Lead, EHS, Cost and the Weekly Report — sign in against the same user list, managed in the Project Hub under Admin → Users (and mirrored to the readable 00 · Master → Users sheet). Each person signs in with their username / employee code and password and sees only the projects they're assigned to.
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