Company Announcements
My Saved Items
Quick Access
Events Calendar Outlook
Important Documents
Featured Videos
Photos from the Field
Tools & Resources
Pulse Poll: What would make your week better?
One question. One click. We share results across all five companies on Friday.
All Announcements
Events & Calendar
Document Library
All Newsletters
My Saved Items
Media
People & Recognition
Staff Directory
Browse and search the full company directory — names, titles, photos, offices, contact info, and reporting structure across all five companies.
Org Chart
Visualize reporting structure across the family of companies. Recenter on any person to see their manager, peers, and direct reports — or browse the leadership tree top-down.
🎂 Birthdays
⭐ Work Anniversaries
Kudos Wall
Skills Directory
Find colleagues who know what you're looking for — a language, a technology, a domain. Tag your own skills so others can find you when they have a question.
Learning Center
Training Partners
Learning Paths
Course Catalog
Resources
Welcome to the Family of Companies
You've joined a group of five businesses with a shared mission and a lot of shared history. This page is here to help you find your footing in the first few weeks — meet leadership, work through your onboarding checklist, and find the links you'll reach for often.
A welcome from leadership
From all of usPeople you should meet
First 30 days · Auto-curatedYour onboarding checklist
Tick items as you goLinks you'll want handy
First 30 daysNeed a real person?
If you have a question that isn't covered here, or you want to talk to someone, your HR contact is happy to help. Use the button to send a quick note — they'll follow up directly.
Offices & Facilities
Employee Directory
Select someone from the list to see their full profile, manager, and team.
Organizational Chart
Sixty-plus years of innovation in imaging.
From an epiphany about microfilm in 1957 to a family of companies serving banks, libraries, archives, and enterprises worldwide — this is how Digital Check, Benchmark, nextScan, ST Imaging, and Avivatech got here.
The next chapter is being written now.
If you've contributed to a milestone, launched a product, signed a partnership, or hit a number worth marking — let leadership know. This page is a living record, not a closed book.
Q&A Town Hall
Ask any question, upvote ones you want answered, and see what leadership has addressed. Anonymous asking is supported — pick the toggle in the form.
📅 Today's schedule
✨ Since you were last here
🎬 New videos
📌 Your pending items
🌴 Holidays this week
🎉 Celebrations this week
📷 New photos
💬 Top unanswered questions
Business Continuity
Our continuity plans keep the business running through disruptions — weather, outages, facility issues, or anything that interrupts normal operations. Start with the company-wide plan, then review the plan specific to your location.
By location
Site-specific plansTour the Hub
The Hub has grown a lot. This page is the catalog — every major feature with a short description and a one-click jump to try it. Or take the guided tour above to walk through the highlights step-by-step.
Take care of yourself.
Mental health, physical wellness, financial security, and time to recharge — these aren't perks, they're how we sustain great work over a long career. Explore your benefits, find support when you need it, and pick up something useful from the resource library.
What's covered
Read, watch, practice
Microsoft 365 Integration
📖 Hub Admin Guide
🎨 Theme
🔑 Hub Admins
Hub Admins SharePoint List and apply to everyone the next time
they load the page. The MS_CONFIG.adminEmails array in the HTML
is kept as an emergency-access fallback that always works even if this list
becomes unreachable.
🚫 Directory Exclusions
employeeId set in Entra). Use this list for the rest — service
accounts that look like real employees, contractors that shouldn't appear company-wide, or any other
edge case. Each entry is either an exact email or a display-name substring (case-insensitive).
Acumatica — hides every account with "Acumatica" in the display name (Acumatica Sales, Acumatica Admin, etc.)contractor@digitalcheck.com — hides only this specific email addressSharePoint — hides accounts with "SharePoint" in the display name
📰 Feature Articles
! for a prominent lede paragraph or
> for a pop-out pull quote (end a quote with — Name for attribution).
Drafts are visible only to admins.
🚩 Feature Flags
Defaults: any flag you haven't configured is treated as On for everyone — this matches the Hub's pre-flag behavior. Changes here take effect immediately for all users on their next page load (or on the current page if they navigate away and back).
🧭 Mission & Values
⚡ Quick Access Links
The shortcut tiles in the home page's Quick Access section. These are the
fast links employees reach for most — time off, expenses, the company store, IT help, and so on.
Each tile has an emoji, a label, a short subtitle, and a destination. Use a full
https://… URL to open an external system in a new tab, or a Hub shortcut like
#directory or #wellness to jump to a page inside the Hub.
Reorder with the ↑↓ buttons. Employees can still star their own favorites on top of whatever you set here.
🧰 Tools & Resources Cards
The tile grid in the home page's Tools & Resources section. Edit each card's
title and description, and set where it goes. For the link, use a Hub shortcut like
#wellness, #learning, #offices, #newemployee,
#history, #documents, or #resources to jump to a page inside
the Hub, or a full https://… URL to open a document or external page in a new tab.
Leave the link blank to keep the card's built-in destination. Reorder with the ↑↓ buttons.
🔗 Resources Page Tiles
The big featured tiles on the dedicated Resources page (the one the home page's
"View all resources" button opens). Edit each tile's icon, title, and description, and set where it goes.
Use a Hub shortcut like #wellness, #continuity, #orgchart,
#qa, or #offices to jump to a page inside the Hub, or a full
https://… URL to open a document or external page in a new tab.
Leave the link blank to keep the tile's built-in destination.
Each tile keeps its color accent; reorder with the ↑↓ buttons.
🎓 Required Training Banner
The dark banner at the top of the Learning Center. Use it for the current required training and its deadline. Leave the title and body blank to hide the banner entirely. The View My Training Status - Not KnowBe4 Training button is always shown automatically.
🎓 Training Partners
The external-platform cards under Training Partners on the Learning Center (KnowBe4, Microsoft Learn, etc.). Pick a badge color, set the tag pill, and point each card at its training URL. Reorder with the \u2191\u2193 buttons.
🎓 Learning Paths
The curated track cards under Learning Paths. Clicking a path filters the course catalog to its categories, so the Categories field must match the categories on your courses (comma-separated, case-insensitive). The footer note is free text (e.g. "8 courses \u00B7 ~4 hours").
🎓 Course Catalog Categories
The filter chips above the in-house Course Catalog. All is always shown first automatically \u2014 list the rest here. A category should match the Category value on the courses you want it to filter; categories with no matching courses simply show an empty result.
💡 Feature Requests
Requests submitted through the footer's Request a Feature link. Set a status to track each one, or delete spam. Changes save to the Hub Feature Requests list in SharePoint.
👋 New Employee Tab
The New Employee nav tab shows automatically to people in their first stretch after hire, then hides itself. Use the toggle below to show it to everyone instead, or set how long the hire-date window lasts. Admins always see the tab regardless.
On for the Hub launch so everyone can find the welcome videos and onboarding hub. Turn it off later to show the tab only to recent hires (the window below).
🎉 New Employees on Home
The New Employees card on the home page (and the matching strip on the People page) shows anyone whose account was created within this many days, newest first. It hides itself when nobody qualifies. This is a separate window from the New Employee tab setting above.
🏠 Home Page Order
Use the ↑↓ buttons to set the order employees see top to bottom, and Hide / Show to switch a section off or back on. Hidden sections disappear from the home page entirely but stay in this list (greyed out) so you can re-enable or reposition them later. Changes apply immediately on save. Sections that hide themselves when empty (like Employee Spotlight) still appear here so you can position them for when they have content. The "Did you know?" strip stays pinned at the very top.
📢 Home Announcement Order
Use the ↑↓ buttons to arrange how announcements appear on the home page. The first one becomes the large feature card and the next seven fill out the grid (eight show in total). Anything you don't arrange here — including newly posted announcements — falls in afterward, newest first. Changes apply on save.
🆘 Quick Help
The Quick Help column in the site footer. Add, reorder, or remove links — each is a
label plus a destination. Use a full https://… URL for a website, or a
mailto:name@digitalcheck.com address for an email link. Leave the URL blank for a
placeholder that isn't live yet.
💬 Have Feedback?
The Have Feedback? column in the site footer. Each link is a label plus a target:
use action:featureRequest to open the built-in feature / suggestion form,
a mailto:name@digitalcheck.com address for email, or a full https://…
URL for a website. Leave the target blank for a not-yet-live placeholder.
🏷️ Header & Footer
The site's masthead text and footer wording. Changes apply across every page (the header and footer show everywhere, including the sign-in screen). Leave a field blank to fall back to the built-in default.
Upload your brand logos — Digital Check, Benchmark, nextScan, ST Imaging, Avivatech. They appear in the footer to the left of the title, in the order below. Transparent PNG or SVG works best; logos are auto-lightened to read on the dark footer. Up to 8.
👋 New Employee Setup
Note: for per-user progress tracking to sync across devices, the
NewEmployeeJson column must be added to the Hub UserPrefs SharePoint list
(Note type). Without it, checkbox state is held in-memory only.
#pagename as the URL. Available pages:
#home
#announcements
#documents
#newsletters
#videos
#people
#directory
#orgchart
#learning
#events
#tradeshows
#resources
#newemployee
#offices
#wellness
https://…). Leave the URL blank to show a "no destination set" toast on click.
🌳 Org Chart Leadership
Name matching is forgiving: case and punctuation don't matter, and nicknames like "Mike Donovan" will find "Michael Donovan". Names that don't match anyone in the directory show a warning in the browser console (open DevTools to see).
🔗 Reporting Overrides
🌟 Employee Spotlights
Hub Spotlights SharePoint list — see Admin Guide for column setup.
🛡️ Business Continuity
📖 Our Story Timeline
📷 Our Story Photos
/History folder. Photos are optional; milestones without one look exactly as they do now.
🌱 Wellness
👟 Step Challenge Champions
🔔 Announcement Notifications
🎬 Vimeo Integration
private and video_files scopes. The token is stored
in the Hub Config SharePoint List. Leave blank to disable the importer.
api.vimeo.com over HTTPS, never logged.
⏱️ Performance Timing
How to read this:
t is the time elapsed from sign-in start to that mark.
duration (where shown) is the time spent inside that specific operation.
Per-list durations can overlap because list loads run in parallel — they're each measuring
their own await chain.
🪪 Microsoft Entra ID Sign-In
not set
not set
How to configure
- Go to Azure portal → Microsoft Entra ID → App registrations → New registration
- Name: "The Hub". Supported account types: "Single tenant" (your org only).
- Redirect URI: "Single-page application (SPA)" → enter the URL where you'll host this file (e.g. https://hub.digitalcheck.com or http://localhost:8000 for testing).
- Copy the Application (client) ID and Directory (tenant) ID.
- Under API permissions, add: User.Read, Calendars.Read, Calendars.ReadWrite, Calendars.Read.Shared (delegated). Grant admin consent.
- Open this HTML file and edit the MS_CONFIG block at the top of the <script> section:
After saving, reload the app. The "Sign in with Microsoft" button will activate. Authenticated employees see their real name, photo, and any calendars/documents they have permission to access.
📅 Outlook Calendar Sync
How calendar sync works
Each calendar can be connected to either a user's personal calendar or a Microsoft 365 Group calendar (recommended for shared events). The Hub uses Microsoft Graph API to read events and create new ones.
Group calendars are best for company-wide events. Create a Microsoft 365 Group called "Hub Events" and a separate one called "Tradeshows", then paste their group IDs into MS_CONFIG above. Find the group ID in Azure portal → Entra ID → Groups → select group → Object ID.
Connected calendars sync on page load and whenever you click "Refresh". New events created in the Hub are pushed to Outlook immediately.
🗂️ Document Filters
📂 SharePoint Document Library
/sites/{hostname}:/sites/{site-name}not set
not set
not set
How to set this up
- Pick a SharePoint site. Either an existing one (e.g. the All-Company site) or a new one created for this purpose. The Hub will store uploads in that site's Documents library by default.
- Find the site ID. In a browser logged into your tenant, visit:
https://graph.microsoft.com/v1.0/sites/{your-tenant}.sharepoint.com:/sites/TheHub
Copy theidvalue. Format looks like:{tenant}.sharepoint.com,{guid},{guid} - Find the drive ID. Visit:
https://graph.microsoft.com/v1.0/sites/{site-id}/drives
Find the entry wherename = "Documents"(or whatever library you want to use). Copy itsid. - Create a folder inside that library called "Hub Documents" (or whatever you set
folderPathto in MS_CONFIG). - Add custom columns to the library so Hub metadata persists in SharePoint. Library settings → Add column. Create:
HubTags(Single line of text)HubOwner(Single line of text)HubType(Choice: pdf, docx, xlsx, pptx)HubPriority(Yes/No or Single line of text — accepts "true"/"false") — flag a document to surface it on the home pageHubIsCompanyBC(Yes/No or Single line of text) — flag a document as the company-wide Business Continuity plan that the Resources page tile opens
- Update MS_CONFIG.documentLibrary at the top of the script section with the IDs you collected.
- Save and reload. Sign in. Existing SharePoint files appear in the Documents library, and new uploads flow to SharePoint.
What you get: files are stored permanently in SharePoint (not browser cache), opened in Office Online or the SharePoint viewer, indexed for global search, versioned automatically, retention-policied per your IT governance, and accessible to anyone with permission to that library — including from within Office, OneDrive, Teams, and search.
Upload limits: files under 4 MB use a single PUT for speed. Files 4 MB and above use SharePoint's resumable upload session API, which streams in 5 MB chunks and supports files up to 250 GB.
SharePoint Lists (Hub Data Storage)
How list provisioning works
Clicking "Set up lists" calls Microsoft Graph to create eight lists on your SharePoint site, each with the columns the Hub needs. The lists are: Hub Announcements, Hub Events, Hub Tradeshows, Hub Celebrations, Hub Holidays, Hub Kudos, Hub Photos, and Hub Courses. Provisioning is idempotent — if a list already exists, it's reused, not recreated, so it's safe to click multiple times.
After provisioning, you can also click Import seed data below to copy the Hub's built-in demo content (announcements, holidays, etc.) into the lists as a starting point. Once your real data is flowing, you'd typically delete the seed entries from SharePoint directly.
You can also view and edit the lists directly in SharePoint by navigating to your site → Site contents. Edits made in SharePoint flow back into the Hub at the next sign-in.
Wipe every item from every Hub SharePoint list. The lists themselves remain intact, so you can immediately start adding fresh content. Deleted items go to SharePoint's Recycle Bin and can be restored from there for 93 days. Use this when you're ready to move from seed/demo content to real production content.
AI Assistant
Requires the hub-ai-proxy Azure Function to be deployed first. See the
azure-deploy-guide.md file shipped with this Hub for step-by-step instructions on provisioning Azure OpenAI, Azure AI Search, the Function App, and the indexing pipeline. Once deployed, paste the Function URL below.
hub-ai-proxy Function (e.g. https://hub-ai-proxy.azurewebsites.net/api/chat). Admin-only field; persisted to SharePoint Hub Config so it applies for all users.api://<CLIENT_ID>/access. Without this, the AI request sends a Microsoft Graph token the proxy rejects with a 401.Usage limits
Each user is capped at 100 messages per day (resets at midnight, local time). The cap is enforced both client-side (fast UX) and server-side (source of truth) by the proxy. This protects against runaway costs and accidental loops. To change the cap, edit HubAI.dailyCap in the HTML AND update the matching value in the Function's environment configuration — they must agree.
What content does the assistant know about?
The Azure AI Search index is populated from these SharePoint sources by the indexing pipeline (see deploy guide for scheduling):
- Hub Announcements — title + body of every announcement
- Hub Documents library — extracted text from PDFs, Word docs, etc.
- Hub Config — mission, values, leadership names, other admin-set content
- Hub Newsletters — full body text of published newsletters
- Courses — title + description of every course
- Events — upcoming events with title, date, location, audience
Explicitly NOT indexed: photos (no text), kudos (private recognition), celebrations (privacy), org chart (better answered via Directory). Each answer cites the sources it drew from — citations appear as clickable pills beneath the response.
Privacy & data flow
Questions and answers leave your tenant only to the extent that the Azure OpenAI service receives them — they do NOT go to OpenAI's consumer service or train any model. Azure OpenAI runs in your subscription with your data residency settings. The proxy logs (question text, user email, response token count) are written to the Hub Analytics SharePoint list for usage tracking; conversation bodies are NOT persisted by the proxy.