A desktop application for IT administrators and managed service providers to manage users, groups, folder permissions, licenses, and assets across multiple client environments. Built with Electron + React, it runs fully offline with no internet connection required.
A separate read-only customer build can be distributed to clients, giving them a live view of their IT environment without the ability to make changes.
- At-a-glance stats for users, assets, and licenses
- Warranty alerts — expired and expiring within 90 days
- Checklist activity summary (admin only)
- Knowledge base article count
- Global search across all entities with click-to-navigate
- Per-database toggle to show/hide Assets and Knowledge Base tabs
- Searchable, sortable user list with hide-disabled toggle
- Add user dialog with compound email input (known domain selector with New… option)
- Optional onboarding checklist auto-launched on user creation
- User detail panel — name, email, role, location, start date, notes
- Enable / disable users
- Shared mailbox support
- Group membership management (add/remove with inline search picker)
- License assignments
- Computed folder access and shared mailbox access (derived from group memberships)
- Hidden from customer flag per user
- Right-click context menu with bulk enable/disable, add to group, delete
- Simulate Access Changes mode (customer build) — explore what access a user would have with different group memberships without saving
- Searchable list with category filter tabs
- Group detail panel — name, category, email, description
- Inline member add picker with multi-select, search, and confirm
- Right-click context menu — add members, delete
- Folder tree with permission editor per folder
- Bulk permission panel for managing access across many folders at once
- Inheritable permissions from parent folders
- License cards with name, assigned/total count, and expiry date
- Expired badge on overdue licenses
- Auto-save inline editing
- Member management — inline multi-select picker with search, alphabetically sorted
- Member search on existing assignments
- Hidden from customer flag per license
- Asset list with type filter
- Asset detail — serial number, brand, model, IP address, OS, location, warranty end date
- Service/maintenance log
- Disable, decommission, and delete actions
- Warranty expiry tracking surfaced on the dashboard
- Template builder with ordered, editable steps
- Run checklists — track per-step completion with per-step notes
- Overall run notes
- Cancel in-progress runs
- Completed and cancelled run history
- Pop-out window per active run
- Onboarding checklist auto-launched from Add User dialog
- Upload and manage knowledge articles and reference files
- Multi-database — manage multiple client environments from one installation
- Dual mode — full admin build and read-only customer build from the same codebase
- Auto-save — field changes are debounced and saved automatically
- Undo / Change log — recent changes can be undone; full history panel
- Audit log — per-database record of all modifications
- Recycle bin — recover recently deleted items
- Global search — unified search from the dashboard, navigates directly to any record
- Animated tab ribbon — active tab expands to show label; inactive tabs collapse to icon only
- Pop-out windows — checklists open in separate OS windows, closed automatically when the main window closes
- Per-database settings — Assets and Knowledge Base tabs can be enabled/disabled independently per client database
Exports four human-readable CSV files that can also be re-imported:
| File | Contents |
|---|---|
Groups.csv |
Name, Category, Email, Description |
Licenses.csv |
Name, Total Seats, Expiry Date |
Folders.csv |
Name, Parent Folder, Inherits Permissions, Permissions |
Users.csv |
Full Name, Email, Role, Status, Type, Groups, Licenses |
Imports one or more of the above files. The import dialog enforces the correct order (Groups → Licenses → Folders → Users) automatically. Import is additive only — it creates new records and does not update or delete existing ones.
- Backup — saves a full timestamped JSON snapshot of the database (
{suffix}-backup-YYYY-MM-DD_HHmm.json) - Restore — completely overwrites the current database from a backup file. Shows a confirmation warning before proceeding.
Exports the current database as a distributable JSON file ({suffix}-db.json) for use with the customer read-only build.
- Node.js v18 or later
- npm (included with Node.js)
- Windows x64 (build target — development can run on any platform)
git clone <repo-url>
cd admin-atlas-flow
npm installnpm run electron:devThis builds the React app with Vite and launches Electron immediately. No separate dev server is needed — Electron loads directly from the built dist/ folder.
# Admin / full version
npm run electron:build
# Read-only customer version
npm run electron:build:customerOutput is placed in release/ as both a folder and a .zip archive ready to distribute.
All data is stored locally as JSON files in the same directory as the application executable (when packaged), or in a dev-data/ folder at the project root during development.
Each client database is a single file named db-{suffix}.json. Checklist data is stored separately as {suffix}--{name}.json files. No internet connection, cloud account, or database server is required.
admin-atlas-flow/
├── electron/
│ ├── main.cjs # Electron main process, IPC handlers, file I/O
│ └── preload.cjs # Secure bridge between main and renderer
├── src/
│ ├── api/ # base44 data layer (entity CRUD)
│ ├── components/
│ │ ├── assets/ # Assets tab
│ │ ├── checklists/ # Checklists tab + pop-out window
│ │ ├── dashboard/ # Overview dashboard
│ │ ├── folders/ # Folders tab + permission editor
│ │ ├── groups/ # Groups tab
│ │ ├── knowledge/ # Knowledge base tab
│ │ ├── layout/ # TopRibbon navigation
│ │ ├── licenses/ # Licenses tab
│ │ ├── shared/ # SlidePanel, SearchableList, TagList, ImportDialog
│ │ ├── ui/ # shadcn/ui components
│ │ └── users/ # Users tab + detail panel + add dialog
│ ├── context/ # DatabaseContext
│ ├── hooks/ # useAutoSave, useDbSettings
│ ├── lib/ # appMode (admin vs customer), utilities
│ ├── pages/ # Dashboard page (root route)
│ └── utils/ # refreshBus, changeLog, csvExportImport
├── package.json
└── vite.config.js
| Layer | Technology |
|---|---|
| Desktop shell | Electron 34 |
| UI framework | React 18 + Vite 6 |
| Styling | Tailwind CSS 3 + shadcn/ui |
| Icons | lucide-react |
| Date handling | date-fns |
| Toasts | Sonner |
| Data storage | Local JSON files (no database server) |