Features / Crew
Crew.
billWright's Crew section covers everything related to your team: logging and approving time, managing employee logins, scheduling field visits, monitoring live job status, running safety talks, and tracking incidents.
Timesheet
#/time
The Timesheet screen shows your personal time log for the current week, with summary KPIs and charts.
Viewing the week summary
- Navigate to
#/time. The screen loads automatically for the current open week. - Review the four KPI tiles at the top: Total hours, Billable hours (with a percentage of total), Billable $ (at logged rates), and Entries (count).
- The Day breakdown bar chart shows hours logged per day, Monday through Sunday.
- The Day mix donut chart splits billable hours (accent color) from shop/unbilled hours (amber).
Adding a time entry
- Click Add entry (the + button in the top-right action bar).
- Fill in the entry form: date, job, hours, and whether the time is billable.
- Save the entry. The KPIs and charts update to reflect the new totals.
Submitting or reopening the week
- When the week status pill reads Open - entries draft, click Submit week to lock the entries and mark the week submitted. The pill changes to Submitted.
- If you need to make corrections after submitting, click Reopen week to return it to draft status.
Verify
#/time/verify
The Verify tab is part of the Timesheet screen (same rendered shell) and is used to review and approve time entries submitted by employees from the mobile punch app.
- Navigate to
#/time/verifyor click the Verify tab within the Timesheet screen. - The screen loads the entry table for the week selected in the "Week of" dropdown in the top bar. If no week is selected, a prompt appears to pick one.
- Review employee-submitted entries. Each row shows the employee name, job, hours, date, and cost (hours x pay rate).
- Approve or reject entries as needed.
Employees
#/time/employees
The Employees screen manages crew members who log time through the mobile punch app.
Viewing the employee list
- Navigate to
#/time/employees. - The table shows: Name, Username (monospaced), Pay rate ($/hr), Billable rate ($/hr, with a note if the default 50% markup applies), Contact (email and phone), Status (Active or Inactive pill), Pending (count of entries awaiting verification, linked to
#/time/verify), and Last login (relative time). - The table defaults to sorting active employees first.
Adding an employee
- Click + Add employee in the top-right corner.
- Complete the form. A numeric login code is generated and shown once for the new employee to use in the punch app.
Editing an employee
- Find the employee row and click Edit.
- Update the name, pay rate, billable rate, contact details, or other fields and save.
Resetting a login code
- On an active employee row, click Reset code.
- A new numeric code is generated and displayed once.
Deactivating and reactivating
- To suspend a crew member without losing their history, click Deactivate on an active employee row. Their status pill changes to Inactive.
- To restore access, click Reactivate on an inactive employee row.
Deleting an employee
- Click Delete on the employee row.
- A confirmation dialog appears: "Delete employee permanently?" Past time entries are kept but will no longer be linked to a name. The dialog recommends using Deactivate instead if you want to preserve the history link.
- Confirm to proceed with permanent deletion.
Timesheets
#/timesheets
The Timesheets screen renders the same Timesheet shell as #/time but defaults to whichever tab was last active. It provides the full time-log view including the entries table for any selected week.
- Navigate to
#/timesheets. - Use the Week of dropdown in the top bar to select the week you want to inspect. If none is selected the screen shows a prompt to pick one.
- The entry table shows all recorded time entries for that week, with columns for date, employee, job, hours, pay cost, and billable value.
- Entries sourced from quoted jobs are distinguished visually.
- Use the Log and Verify tabs to switch between your own entry view and the crew approval queue.
Rates
#/rates
The Rates screen manages pay and billable rates for the owner and crew, with per-scope overrides.
Viewing rates
- Navigate to
#/rates. - A scope bar at the top contains dropdowns to filter the view (for example, by employee or job scope). A scope pill in the top-right corner shows the currently active context.
- Rate rows are laid out in a grid showing the name, pay rate, billable rate, the source of the rate (inherited or overridden), and action buttons.
- Inherited rows are shown with a slightly dimmed background; overridden rows are shown at full opacity.
Editing or adding a rate override
- Locate the row for the employee or scope you want to change.
- Click the edit icon button on the row.
- Enter the new pay rate and/or billable rate and save. The row updates to reflect the override and its source label changes accordingly.
- To remove an override and revert to the inherited rate, click the delete (danger) icon button on the override row.
Schedule
#/schedule
The Schedule screen is a dispatch board showing who is assigned where and when. It supports Day, Week, and Month views.
Switching views
- Navigate to
#/schedule. - Use the Day / Week / Month segmented control in the top-right corner to switch views. On screens narrower than 900px the view defaults to Day.
Navigating dates
- The Week of picker in the top bar controls which week is displayed in Week and Day views.
- In Month view the calendar grid shows the full month.
Reading the board
- Each employee row shows colored blocks representing scheduled visits.
- Block color corresponds to the job (a color-coded legend below the board lists all jobs in the current view).
- A block shows the start and end time. If two blocks overlap in the same employee lane, a ! conflict badge appears on both.
Creating a visit
- Click + New visit in the top-right corner. An editor panel opens.
- Select the employee(s), job, date, start time, and end time.
- Save. The block appears on the board.
Editing or rescheduling a visit
- Click an existing block to open it in the editor.
- Edit the fields and save, or drag the block to a new day or time slot to reschedule.
Status board
#/status
The Status board is a live monitor showing who is on the clock right now, grouped by job. It is read-only and refreshes itself every 30 seconds.
Viewing live status
- Navigate to
#/status. - The rollup bar at the top shows four counters: On the clock, Active jobs, Flags (highlighted in amber if any), and Reports filed today.
- Below the rollup, each job appears as a card. Each card lists expected crew and the live roster with classification chips: present, late, absent, extra, or unknown.
- The "updated just now" ticker in the top-right flashes each time a background poll completes.
Changing the date
- Use the Date input field above the board to pick a different date.
- The board reloads for that date. If no live clock data exists for the selected date, a banner appears: "No live clock data for this date - showing the published schedule only." Counters that depend on live data show a dash.
Safety
#/safety
The Safety screen manages toolbox talks: running them, recording acknowledgments, and maintaining a topic library.
Running a talk
- Navigate to
#/safety. - Click + Run a talk in the top-right corner. A modal opens.
- Select or type a topic (optionally from the topic library), choose the job (or leave blank for all jobs), set the date, and indicate whether crew acknowledgment is required.
- Save. The talk is recorded and crew members are prompted to acknowledge it in the punch app.
Viewing records
- Click the Records tab (active by default).
- The table shows each held talk with columns: Held (date), Topic, Job (or "All jobs" if not job-specific), and Acknowledged (a green pill if all crew have acknowledged, amber if pending).
- Click any row to open the acknowledgment roster, which lists each crew member and whether they have acknowledged.
Managing the topic library
- Click the Topic library tab.
- The library lists all sheet templates with their title and active/archived status.
- To add a new sheet, use the add control in the library tab.
- To edit an existing sheet, click its row.
- To archive a sheet so it no longer appears in the "Run a talk" picker, click the archive action on the row.
Library
#/library
The Library screen is a searchable archive of everything filed from the field (field posts, photos, notes) with a Daily log tab and the ability to publish a curated selection to a client share link.
Browsing the library
- Navigate to
#/library. The screen loads the Library tab by default. - Use the toolbar filters to narrow results: Search (free text across notes, jobs, and people), Job (dropdown), and Kind (post or media).
- Toggle between Stream and Gallery views using the view control.
- Items show the author, their role, the job, and any attached photos.
Selecting items to publish
- Check the selection control on each item you want to include in a client package.
- When at least one item is selected, the Publish selected button in the top-right becomes active.
- Click Publish selected. A modal opens where you can set a title and optional expiry date for the share link.
- Confirm. A share link (token URL) is minted and displayed. Past published packages for the same job are listed and can be revoked.
Viewing the daily log
- Click the Daily log tab.
- Select a job and a date. The log shows the crew on that job that day, total hours, and all items filed (posts, photos, notes) for that job and date.
- Use the Print / PDF link to generate a printable version.
Daily Reports
#/daily-reports
The Daily Reports screen lists end-of-day reports filed by foremen from the field.
Browsing reports
- Navigate to
#/daily-reports. - Use the toolbar filters: Job (dropdown), From (date), and To (date). The Job filter applies immediately on change; the date filters reload the full list from the server.
- The table shows: Date, Job, Foreman, Crew (count), Hours, and Photos (count). The list defaults to most-recent first.
Opening a report
- Click any row to open the report drawer.
- The drawer shows the narrative fields: Work done, Issues, Needs, and Weather.
- Below the narrative is the verified crew hours table and a photo strip.
- A Print / PDF link is available to download or print the report.
Incidents
#/incidents
The Incidents screen is the queue for injuries, near misses, and property damage reported from the field.
Viewing incidents
- Navigate to
#/incidents. - Use the All / Open / Reviewing / Closed segmented filter at the top of the table to narrow by status.
- The table shows: When (date/time), Type (Injury, Near miss, Property, or Other pill), Who (employee name), Job, Severity (High, Medium, Low, or Not set), and Status.
- The list defaults to most-recent first.
Opening an incident
- Click any row (or navigate directly to
#/incidents/<id>from a notification link) to open the incident drawer. - The drawer shows the worker's written report, any attached photos, and the linked clock punch (clock-in/out record from the punch app's injury check at clock-out).
- A notes thread below shows all owner notes with timestamps, and any status transitions that were logged.
Adding a note, changing status, or setting severity
- In the open incident drawer, use the note/status/severity controls at the bottom of the notes thread.
- Type a note and/or select a new status (Open, Reviewing, Closed) or severity (High, Medium, Low).
- Save. The new entry appears in the thread and the table row updates to reflect the new status and severity.
