StepReady: tender proposal

DSS2026/RFQ/0210

1. Cover

TitleStepReady: a step-by-step work-task application for students at the packing workstation
Tender referenceDSS2026/RFQ/0210 (ASPN ITQ Brief)
Submitted toAPSN Delta Senior School (DSS)
SupplierThe Support Station Private Limited
Supplier contact nameHuang Zhongying (Zave), Managing Director
Supplier contact email and phonezave@skubbs.com · +65 9783 7452
Supplier registration (UEN)201406326K
Registered address114 Lavender Street, #10-72, Singapore 338729
Date20 October 2026
Version1.0

Prices are given separately in the quotation. This document contains none.

2. Executive summary

The brief asks for a simple web application on a 10–11 inch tablet at a packing workstation, so that students can start, continue, check, complete and hand over tasks with fewer reminders from an adult, while still asking for clarification, requesting help and reporting when they finish.

StepReady does this. It shows one photo and one short instruction at a time, from TODAY to NEXT. Staff create, edit, copy and remove tasks themselves behind a PIN, with no programming. Everything stays on the tablet, and it works offline after the first load. A working prototype is live now, so DSS staff can try it before deciding.

3. Our understanding of the requirement

The brief states its purpose as a simple web application for "a 10–11-inch tablet mounted at a packing workstation". The learner moves through a fixed six-stage sequence, one screen at a time:

TODAY → NOW → HOW → CHECK → DONE → NEXT

The interface calls for large buttons, clear photographs, short instructions and minimal distractions. Employers and trainers must be able to create and update tasks without programming knowledge. The worked example is "Packing One Parcel" (five steps, four checks, a reporting phrase).

We read the aim as reducing adult prompts, not removing the adult. The student should act alone where they can, and ask for help easily where they cannot.

4. Proposed solution

4.1 The six stages

StageWhat the student seesBuilt in
TODAYThe day's tasks in order; the current task is highlightedsrc/screens/TodayScreen.tsx
NOWThe current task name, a "What you need" list, and a large START buttonsrc/screens/NowScreen.tsx
HOWOne step: photo, short instruction, "Step N of M", NEXT STEP, BACK, I NEED HELPsrc/screens/HowScreen.tsx
CHECKA tick list; DONE stays unavailable until every item is tickedsrc/screens/CheckScreen.tsx
DONE"Please report to staff" with the task's handover phrasesrc/screens/DoneScreen.tsx
NEXTThe next scheduled tasksrc/screens/NextScreen.tsx

A read-only stage bar on every student screen shows where the student is (src/components/StudentLayout.tsx). The student sequence is a state machine in src/state/appState.ts, so there is nothing to mistype or bookmark.

4.2 Independence and help-seeking supports

Each support is tied to one verb in the brief's purpose and replaces a specific adult prompt. A support that did not map to a verb was not built. None adds a second main action or blocks the sequence, except the staff check, which staff switch on per task.

Purpose verbSupportAdult prompt it replacesBuilt in
Start"What you need" list on NOW. Ticking is optional and never blocks START"Have you got everything?"src/screens/NowScreen.tsx
StartTODAY highlights the next task"What are you doing next?"src/screens/TodayScreen.tsx
ContinueOne step per screen, with Step N of M and encouragement after each step"Keep going"src/screens/HowScreen.tsx, src/components/FeedbackLayer.tsx
ContinueBREAK and CONTINUE return the student to the same step"Where were you up to?"src/components/StudentTools.tsx, src/state/appState.ts
ContinueA gentle nudge if a step stalls: a button pulse and a short card, at most twice per step, default 120 seconds, staff can turn it off"Are you stuck?"src/components/useIdleNudge.ts, src/lib/feedback.ts
CheckA checklist the student ticks; DONE stays grey until all are ticked"Did you check it?"src/screens/CheckScreen.tsx
Ask for clarificationTap to enlarge the step photo; BACK re-reads the previous step; review the steps from CHECK"Show me again"src/screens/HowScreen.tsx, src/screens/CheckScreen.tsx
Request helpI NEED HELP shows the task's help phrases without leaving the stepA raised hand or a spoken requestsrc/screens/HowScreen.tsx
Request helpSHOW MY SUPERVISOR opens a full-screen card the student holds upCalling across the workshopsrc/components/StudentTools.tsx
Complete and hand overDONE shows the exact words to say to staff; read-aloud is optional"What do you say now?"src/screens/DoneScreen.tsx
Complete and hand overOptional staff check: staff press and hold for two seconds to confirm before the next task. Off unless staff turn it on for that task"Come and check this"src/screens/DoneScreen.tsx, src/screens/DashboardScreen.tsx

Calm chimes and short spoken encouragement are on by default and staff can switch each off (src/components/FeedbackSettingsPanel.tsx, src/lib/sound.ts, src/content/encouragement.ts). Every spoken phrase also appears as a short text message. There are no points, badges, streaks, confetti or countdown timers.

Help and completion signals are shown on the tablet only. Nothing is sent to another device and nothing is logged.

4.3 The seven staff functions

Staff open a PIN-protected section from TODAY (src/screens/PinScreen.tsx). A wrong PIN shakes and clears. No code or files are involved.

#Staff functionHowBuilt in
1Create and edit task templates, with steps, photographs, checklists, help phrases and completion phrasesForm editor; photos from camera or gallery, resized on the devicesrc/screens/EditScreen.tsx, src/components/StepPhotoField.tsx, src/lib/resizeImage.ts
2Copy a templateCopy makes "<name> (copy)" with everything, and opens the editor on itsrc/screens/DashboardScreen.tsx, copyTask in src/db/repo.ts
3Remove a templateRemoving archives it and takes it off the schedule. There is no hard deletearchiveTask in src/db/repo.ts
4Arrange the tasks for the dayAdd, remove and reorder with up and down buttonssrc/screens/DashboardScreen.tsx
5Preview what the learner will seePreview mode with an orange banner; tap the banner to exitsrc/screens/PreviewScreen.tsx
6Reset or resume an unfinished taskResume returns the student to their step; Reset starts the task againsrc/screens/DashboardScreen.tsx
7Back up and restoreExport JSON downloads stepready-backup-YYYY-MM-DD.json; Restore loads itsrc/components/BackupRestore.tsx, exportAll and importAll in src/db/repo.ts

Staff also control sound, encouragement, read-aloud and nudge settings (src/components/SoundSettings.tsx, src/components/FeedbackSettingsPanel.tsx), and the staff check and materials list per task.

4.4 Included in delivery (not yet in the prototype)

The items below are not live today. We will build them and test them as part of delivery.

5. Compliance table

Status: Live means it exists in the prototype now and the evidence is named. Included in delivery means we will build it, as listed in 4.4. Live URL: https://stepready.skubbsmate.com. Test files are in e2e/ and src/.

RefBrief requirementHow StepReady meets itStatusEvidence
ITQ-01A simple web application for a 10–11-inch tablet mounted at a packing workstationFullscreen landscape PWA; designed and tested at 1180×820 and 1194×834Livevite.config.ts, playwright.config.ts, e2e/demo.spec.ts "offline" (runs at both viewports)
ITQ-02Android (page 3)Installable PWA that runs in Android Chrome; automated test on a Chromium Android-tablet viewport to be addedIncluded in delivery4.4; rehearsal on Android tablet
ITQ-03The sequence TODAY → NOW → HOW → CHECK → DONE → NEXTSix screens driven by a state machineLivesrc/state/appState.ts, src/ScreenSwitcher.tsx, src/state/appState.test.ts "walks today→now→how→check→done→next", e2e/demo.spec.ts "offline" (TODAY to DONE)
ITQ-04TODAY: shows the work planned for the dayOrdered list of today's tasks, current task highlightedLiveTodayScreen.tsx, src/screens/studentFlow.test.tsx, e2e/demo.spec.ts "offline"
ITQ-05NOW: shows the task to startTask name and large START buttonLiveNowScreen.tsx, studentFlow.test.tsx, e2e/brief.spec.ts "NOW lists the 5 materials"
ITQ-06HOW: one instruction at a time, short sentence and photographOne step per screen with photo, instruction limited to two linesLiveHowScreen.tsx, src/screens/howScreen.test.tsx
ITQ-07CHECK: a short checklist for the completed workTick list; DONE unavailable until all tickedLiveCheckScreen.tsx, src/screens/finishFlow.test.tsx "gates DONE on all checks", e2e/demo.spec.ts "offline"
ITQ-08DONE: reminds the learner to report completion"Please report to staff" and the handover phraseLiveDoneScreen.tsx, src/screens/finishFlow.test.tsx
ITQ-09NEXT: shows the next scheduled taskNext task named; last-task message when none remainLiveNextScreen.tsx, finishFlow.test.tsx
ITQ-10Large buttonsPrimary buttons at least 64 px highLivePrimaryButton.tsx, howScreen.test.tsx "all buttons 64px tall", e2e/brief.spec.ts "NOW lists the 5 materials in 64 px rows"
ITQ-11Clear photographsSingapore-setting photos for all three seed tasks, generated and reviewed by a person, bundled. Replaced by the trainer's own photos in deliveryLive (demonstration photos)src/seed/photos/, docs/parcel-contact-sheet.jpg
ITQ-12Short instructionsTwo-line limit in the student view and in the editorLiveHowScreen.tsx, EditScreen.tsx
ITQ-13Minimal distractionsNo navigation chrome; back swipe, long-press and pull-to-refresh blockedLiveStudentLayout.tsx, src/state/useKioskProtection.test.ts
ITQ-14Page 2: six-stage indicatorRead-only stage bar on every student screenLivesrc/components/StudentLayout.tsx (StageRail), docs/screenshots/03-how.png
ITQ-15Page 2: BACK buttonBACK on step 1 returns to NOW; elsewhere to the previous step; never records completionLiveHowScreen.tsx, howScreen.test.tsx "BACK goes to the previous step", appState.test.ts "BACK steps back"
ITQ-16Page 2: NEXT STEP buttonAdvances one stepLiveHowScreen.tsx, howScreen.test.tsx "advances steps", e2e/demo.spec.ts "offline"
ITQ-17Page 2: I NEED HELP buttonOpens help phrases without leaving the stepLiveHowScreen.tsx, howScreen.test.tsx "I NEED HELP opens overlay", e2e/brief.spec.ts "create a task" (opens help in Preview)
ITQ-18Page 2: STAFF lock at top rightSTAFF link exists at bottom left of TODAY; moved to a subdued lock at top rightIncluded in delivery4.4; TodayScreen.tsx
ITQ-19Page 2: "Step N of M"Shown on every HOW stepLiveHowScreen.tsx, e2e/demo.spec.ts "offline", e2e/brief.spec.ts "resumes where it was left"
ITQ-20Page 2: TODAY list with NOW / NEXT / LATER labelsHighlighted current task today; labels addedIncluded in delivery4.4
ITQ-21Page 3, staff setup: staff select the day's tasks and place them in order, then return to learner modeAdd, remove, reorder; Exit Staff ViewLiveDashboardScreen.tsx, e2e/brief.spec.ts "arrange the day"
ITQ-22Page 3, TODAY: "Pack parcels / Sort supplies / Clean work area"; highlights the current taskSeed schedule of those three tasks in that orderLivesrc/db/seed.ts, src/db/repo.test.ts
ITQ-23Page 3, NOW: "Current task: Pack one parcel. A large START button is shown."As describedLiveNowScreen.tsx, studentFlow.test.tsx "START TASK goes to NOW"
ITQ-24Page 3, HOW step 1: "Take the assigned item, box and packing materials." with a photograph of the required materialsExact text and photoLiveseed.ts, src/seed/photos/
ITQ-25Page 3, HOW step 2: "Check the item and quantity against the packing instruction."Exact textLiveseed.ts, repo.test.ts
ITQ-26Page 3, HOW step 3: "Place the item in the box. Add the required protective material." with a photograph of the expected placementExact text and photoLiveseed.ts, src/seed/photos/
ITQ-27Page 3, HOW step 4: "Close and seal the box."Exact textLiveseed.ts
ITQ-28Page 3, HOW step 5: "Attach the supplied parcel label in the correct position."Exact textLiveseed.ts
ITQ-29Page 3, HOW: the student presses NEXT STEP through steps 1–5Five steps. The page-2 mock-up shows "Step 2 of 4"; we follow the page-3 tableLivee2e/demo.spec.ts "offline" (Step 1 of 5, four NEXT STEP presses)
ITQ-30Page 3, CHECK: "Correct item and quantity", "Item is protected", "Box is sealed", "Correct label is attached"Exact four itemsLiveseed.ts, repo.test.ts
ITQ-31Page 3, CHECK: the student marks each item only after checking the parcelDONE unavailable until all four are tickedLiveCheckScreen.tsx, finishFlow.test.tsx "gates DONE on all checks"
ITQ-32Page 3, DONE: "Packing completed. Please report to staff." Suggested phrase: "I have finished packing this parcel. Please check."Phrase shown exactly; other tasks use their own phraseLiveDoneScreen.tsx, seed.ts, finishFlow.test.tsx
ITQ-33Page 3, NEXT: the next scheduled task appears, for example "Sort supplies"As describedLiveNextScreen.tsx, finishFlow.test.tsx "then next task"
ITQ-34A PIN-protected staff sectionPIN screen; demo PIN 1234LivePinScreen.tsx, pinScreen.test.tsx, e2e/brief.spec.ts "PIN protects"
ITQ-35Staff function 1: create task templates+ New TaskLiveEditScreen.tsx, e2e/brief.spec.ts "create a task"
ITQ-36Staff function 1: edit task templatesEditorLiveEditScreen.tsx, editScreen.test.tsx
ITQ-37Staff function 2: copy task templatesCopy button; editor opens on the copyLiveDashboardScreen.tsx, repo.test.ts copyTask, dashboardScreen.test.tsx "copies a template"
ITQ-38Staff function 3: remove task templatesArchive with confirmationLivedashboardScreen.test.tsx "archives with confirmation", e2e/backup.spec.ts (archives a template)
ITQ-39Add task steps, photographs and checklistsStep list, photo field, checklistLiveEditScreen.tsx, StepPhotoField.tsx, resizeImage.test.ts
ITQ-40Staff function 4: arrange the tasks for the dayUp and down buttonsLiveDashboardScreen.tsx, e2e/brief.spec.ts "arrange the day"
ITQ-41Add help phrasesHelp phrase list per taskLiveEditScreen.tsx, editScreen.test.tsx
ITQ-42Add completion-reporting phrasesHandover phrase per task; fallback "I have finished this task. Please check."LiveEditScreen.tsx, DoneScreen.tsx
ITQ-43Staff function 5: preview what the learner will seePreview modeLivePreviewScreen.tsx, previewScreen.test.tsx
ITQ-44Staff function 6: reset or resume an unfinished taskResume and Reset on the dashboardLiveDashboardScreen.tsx, dashboardScreen.test.tsx "Resume returns to that step", e2e/brief.spec.ts "Reset sends an unfinished task back to the start"
ITQ-45Staff function 7: back up and restore the task informationExport JSON and RestoreLiveBackupRestore.tsx, e2e/backup.spec.ts, backupRestore.test.tsx
ITQ-46Staff can update the application without programming knowledgeAll changes by forms and buttonsLivee2e/brief.spec.ts "create a task", "arrange the day", "Reset sends an unfinished task back"
ITQ-47Purpose: start, continue, check, complete and hand over tasks with fewer adult reminders; ask for clarification, request help, report completionSupports in 4.2, one per verbLiveNowScreen.tsx, StudentTools.tsx, useIdleNudge.ts, DoneScreen.tsx; nowScreen.test.tsx, e2e/brief.spec.ts "NOW lists the 5 materials"

6. Technical approach

7. Live prototype

WhatWhere
The working apphttps://stepready.skubbsmate.com
Guided demo, with the app in an iPad framehttps://stepready.skubbsmate.com/demo/
Staff PIN1234

Open the app on an iPad in Safari, let it load once, then use Share → Add to Home Screen. To restore the demonstration content, clear the site data or re-add the icon. The demo page's Restart button clears this browser's StepReady data, so use a browser that holds no real trial data. A ten-step demo script is in README.md.

8. Delivery plan and timeline

Weeks run from the award date.

WeeksPhaseOutput
1SetupKick-off with the trainer. Choose the first real tasks. Collect or take the photographs. Confirm which tablets are used
2–3ConfigurationTasks entered with real photos and phrases. NOW / NEXT / LATER labels and top-right STAFF lock added. Support settings agreed. Android tablet test project added
4On-site rehearsalRun the full sequence on the school's tablets, in Safari or Chrome, at the workstation. Log and fix defects
5Staff trainingHands-on sessions for trainers: create, copy, arrange, preview, reset and back up
6HandoverFinal build zip with README, hosted URL, backup of the configured tasks, and sign-off

The timeline assumes the school supplies tablets, trainer time and photo access in weeks 1–2.

9. Testing and acceptance

10. Training, handover and support

11. Assumptions, limits and exclusions

12. Later-phase options

These are optional, separate from this proposal, and not priced here.

13. Company profile and track record

StepReady is submitted by The Support Station Private Limited, a Singapore-based software team. We are not a special-education provider. We read this specification, understood why existing task-prompting tools fail it, and built a solution from the brief.

CompanyThe Support Station Private Limited
UEN201406326K
Registered address114 Lavender Street, #10-72, Singapore 338729
Year established2014
Entity typePrivate Limited Company
Telephone+65 6717 6668
Emailzave@skubbs.com
GeBIZ registrationRegistered supplier, Financial Grade S7 (tendering capacity S$5,000,000), valid to 02 June 2027
GeBIZ supply headEPU/CMP/10 — Computer Related Hardware, Software and Services
Authorised signatoryHuang Zhongying (Managing Director)

What we do. Since 2014 we have delivered custom web and mobile applications, user-experience design and hosted platforms for government-linked organisations, national membership associations, healthcare providers and social-service clients. Our core capability is building applications that non-technical users administer themselves — content management, task configuration and day-to-day setup without a developer. That is exactly what this tender needs: a staff admin panel a vocational trainer can run without programming knowledge. Our team of roughly 40 people — delivery, UI/UX, engineering, QA, DevOps and account management — is based in Singapore.

Why this maps to the brief.

Security and compliance. PDPA-aligned handling (no student data leaves the device unless staff export it), OWASP ASVS L2-aligned development practice, WCAG 2.1 AA interfaces, and Singapore data residency for any optional cloud components.

Track record — selected relevant projects.

Client and platformPeriodWhy it is relevant here
HomeTeamNS — OneHome members platform2022–presentWeb and mobile portal with a staff-facing content-management interface used by non-technical administrators; serves a large, diverse membership.
Kiztopia — check-in and visitor management2022–presentTablet app on fixed kiosk stations at venue entrances — directly analogous to a workstation-mounted tablet.
SAFRA — KidzAmaze management system2025–presentEnterprise platform with staff-facing scheduling and session tools for non-technical venue operators.
IHP — members club gamification and loyalty2025–presentStep-based engagement with configurable actions and photo verification for non-technical administrators.
Automobile Association of Singapore — web and insurance services2021–presentFull-stack platform with sustained delivery and ongoing maintenance for a high-profile institutional client.
Howden Group / MediHub — employee healthcare app2023–presentMobile application for an organisation with duty-of-care obligations toward its end users.

We have delivered accessible applications for larger membership bodies than this one. This engagement is smaller in scale and, in our view, more important to get right.

14. Project team

All members below are employees of The Support Station Private Limited and are available for the engagement. No subcontractors are proposed. The Managing Director is the authorised signatory and the primary escalation contact for DSS throughout. If a team member becomes unavailable, we maintain a bench of full-stack developers and designers who can be onboarded without loss of knowledge, since all project assets and the codebase are held in our managed environment.

RoleNameExperience
Project DirectorHuang Zhongying (Zave)18+ years
Solution Architect / DevOps LeadLow Ee Chiang15+ years
Project Manager / Scrum MasterTeo Yi Ki5+ years
Technical Lead / Senior Full-Stack EngineerAaron Briones14+ years
Senior Full-Stack DeveloperAung Khant Zaw6+ years
UI/UX Designer & DeveloperVea Parale3+ years
QA TesterSumegha Chinigepalli2+ years

Huang Zhongying (Zave) — Project Director. Managing Director of The Support Station since 2014; Certified Scrum Master and designated Data Protection Officer. Accountable for delivery quality, DSS stakeholder engagement and escalation. Has overseen delivery across government-linked, healthcare and social-service clients, including the HomeTeamNS OneHome and SAFRA KidzAmaze platforms.

Low Ee Chiang — Solution Architect / DevOps Lead. Defines the StepReady architecture — offline-first PWA structure, IndexedDB schema, service worker and iPad deployment — and owns the build pipeline and security/PDPA data-handling design. Lead architect across the company's application portfolio; specialises in offline-capable PWAs, CDN/static-site deployment and OWASP-aligned security.

Teo Yi Ki — Project Manager / Scrum Master. Day-to-day project management and the primary point of contact for DSS on scheduling, milestone sign-off and documentation. Coordinates UAT with non-technical client stakeholders: plain-language test scripts, feedback sessions, defect logs tracked to sign-off.

Aaron Briones — Technical Lead / Senior Full-Stack Engineer. Leads the StepReady build — React 18 component architecture, IndexedDB data layer, service-worker offline, the staff admin panel and student workflow logic — and owns code quality and the definition of done. 14+ years full-stack; technical lead on tablet-based kiosk and multi-role platforms.

Aung Khant Zaw — Senior Full-Stack Developer. Implements the student-facing screens (TODAY through NEXT), the HELP overlay, and photo display and navigation; contributes staff-panel features including template forms, day scheduling and backup/restore. Experienced in React 18/TypeScript, IndexedDB and in-browser image handling.

Vea Parale — UI/UX Designer & Developer. Leads the design for all student screens and the staff panel, runs the design review with DSS, and implements the front-end layout to match. Practical WCAG 2.1 AA experience, and design of kiosk-mode, tablet-first interfaces operable without reading instruction text.

Sumegha Chinigepalli — QA Tester. Writes the functional and UAT test plans for DSS staff, runs testing on school-managed iPads (Safari and Chrome) across all screens and admin functions, and manages the defect log through to rectification. Prepares plain-language UAT scripts a vocational trainer can execute without technical knowledge.

Quotation SR-Q-2026-001

Every figure or term marked DRAFT – owner to confirm is a recommended default that the owner has not yet confirmed. The line items are held in src/proposal/quote.json, which the proposal page and the e2e check use, so the numbers below and on the page come from one set.

Quotation numberSR-Q-2026-001
Date20 October 2026
Validity30 days from the date (to 19 November 2026). DRAFT – owner to confirm
ClientAPSN Delta Senior School (DSS)
Tender referenceDSS2026/RFQ/0210 (ASPN ITQ Brief)
CurrencySingapore dollars (SGD)
SupplierThe Support Station Private Limited
UEN201406326K
GST registrationGST-registered, number [TBC]. DRAFT – owner to confirm. If the supplier is not registered, delete the GST line and the grand total equals the subtotal
ContactHuang Zhongying (Zave), Managing Director · zave@skubbs.com · +65 9783 7452

<!--QUOTE-->

Payment milestones

DRAFT – owner to confirm. Invoices are payable within 30 days.

#Milestone%Amount before GST (S$)GST (S$)Invoice (S$)
1On acceptance of the quotation50%3,000.00270.003,270.00
2On sign-off at handover50%3,000.00270.003,270.00
Total100%6,000.00540.006,540.00

Timeline

Weeks run from the award date. The full plan is in docs/PROPOSAL.md section 8 (Delivery plan and timeline). DRAFT – owner to confirm.

WeeksPhase
1Setup
2–3Configuration
4On-site rehearsal
5Staff training
6Handover and sign-off (second payment milestone)

The timeline assumes the school supplies tablets, trainer time and photo access in weeks 1–2.

Inclusions

Exclusions

Optional items

Not included in the total above.

ItemPrice
Hosting, updates and support for 12 months (S$150 a month, billed yearly). Includes hosting, fixes and up to 2 hours of changes each quarter. DRAFT – owner to confirmS$1,800.00 a year
Extra task set-up (per additional task), with steps, photos and checks. DRAFT – owner to confirmS$150.00 each
Phase two: cloud sync and staff accountsPriced on request
Phase two: multiple studentsPriced on request

Terms

All terms are DRAFT – owner to confirm.