Skip to content

Commit 1adf493

Browse files
committed
docs: expand README with detailed feature descriptions
1 parent c2dd472 commit 1adf493

File tree

1 file changed

+179
-39
lines changed

1 file changed

+179
-39
lines changed

README.md

Lines changed: 179 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -12,31 +12,152 @@ Product Data Management for engineering teams. Built with Electron, React, and S
1212
## Features
1313

1414
### Core PDM
15-
- **Check In / Check Out** — Exclusive file locking with multi-machine tracking
16-
- **Version Control** — Full history with rollback to any previous version
17-
- **File States** — WIP → In Review → Released → Obsolete with customizable workflows
18-
- **Real-time Sync** — Instant updates across all connected clients via Supabase
19-
- **Multi-vault Support** — Organize files into separate vaults with per-vault permissions
20-
- **Trash & Recovery** — Soft delete with restore or permanent delete options
15+
16+
- **Check In / Check Out**
17+
- Exclusive file locking prevents conflicts when multiple engineers work on the same files
18+
- Multi-machine tracking shows which computer has a file checked out
19+
- Force check-in option for admins to release abandoned locks
20+
- Request checkout notifications to ask colleagues to release files
21+
22+
- **Version Control**
23+
- Full history of every file with timestamps and user attribution
24+
- Rollback to any previous version with one click
25+
- Side-by-side comparison of server vs. local versions
26+
- Automatic version increment on check-in
27+
28+
- **File State Management**
29+
- Lifecycle states: WIP → In Review → Released → Obsolete
30+
- Visual workflow builder to customize state transitions
31+
- Approval gates requiring reviews before state changes
32+
- ECO column shows which change orders affect each file
33+
34+
- **Real-time Collaboration**
35+
- Instant sync across all connected clients via Supabase Realtime
36+
- Live notifications for check-ins, checkouts, state changes, and new versions
37+
- Green `+` indicators for files added by other users
38+
- User avatars showing who has files checked out
39+
40+
- **Multi-vault Support**
41+
- Organize files into separate vaults (e.g., by project or department)
42+
- Per-vault user permissions (restrict access to specific vaults)
43+
- Connect/disconnect vaults without losing data
44+
- Vault-level ignore patterns (`.gitignore` style)
45+
46+
- **Trash & Recovery**
47+
- Soft delete moves files to trash instead of permanent deletion
48+
- Restore deleted files back to active status
49+
- Permanent delete option for cleanup
50+
- Empty trash to remove all deleted files at once
2151

2252
### Engineering Change Management
23-
- **ECO Management** — Create and track Engineering Change Orders with file attachments
24-
- **Visual Workflow Builder** — Drag-and-drop canvas to design state transitions and approval gates
25-
- **Reviews & Notifications** — Request reviews, set due dates/priority, track approvals
53+
54+
- **ECO Management**
55+
- Create Engineering Change Orders with title, description, and priority
56+
- Attach files to ECOs for full traceability
57+
- Track ECO status through configurable workflow states
58+
- ECO tags column in file browser shows all linked change orders
59+
60+
- **Visual Workflow Builder**
61+
- Drag-and-drop canvas for designing state machines
62+
- Create custom states with names, colors, and types
63+
- Connect states with transition arrows
64+
- Add approval gates requiring reviews before transitions
65+
- Pan, zoom, and reposition elements interactively
66+
67+
- **Reviews & Notifications**
68+
- Request reviews from teammates with due dates and priority levels
69+
- Reviewers receive notifications and can approve/reject with comments
70+
- Track all outgoing review requests and their status
71+
- Notification badges show unread count
72+
- Overdue reviews highlighted with visual indicators
73+
- Watch files to get notified on any changes
2674

2775
### Integrations
28-
- **SolidWorks** — Thumbnail extraction, native add-in (check in/out from toolbar)
29-
- **Google Drive** — Browse, edit Docs/Sheets/Slides inline, connect Shared Drives
30-
- **REST API** — Fastify + Swagger for ERP/automation, signed URLs, webhooks
31-
- **Odoo** — Sync suppliers and products with your Odoo instance
32-
- **Backups** — Automated encrypted backups via Restic (local, S3, Backblaze, SFTP)
33-
34-
### Desktop App
35-
- **Built-in Terminal** — CLI with file ops, queries, and batch commands
36-
- **Drag & Drop** — Import from Windows Explorer, drag files out to other apps
37-
- **Ignore Patterns** — Exclude files/folders from sync (`.gitignore` style)
38-
- **Icon & List Views** — Adjustable thumbnail sizes, Windows shell icons
39-
- **Offline Mode** — Work locally when disconnected
76+
77+
- **SolidWorks**
78+
- Thumbnail extraction for parts, assemblies, and drawings (.sldprt, .sldasm, .slddrw)
79+
- Native add-in with toolbar buttons and task pane
80+
- Document Manager API for BOM, properties, and configs without launching SolidWorks
81+
- SolidWorks Service for headless exports and Pack and Go
82+
- Auto read-only mode for non-checked-out files
83+
84+
- **Google Drive**
85+
- Browse personal Drive and Shared Drives in sidebar
86+
- Edit Docs, Sheets, Slides, and Forms inline without leaving BluePLM
87+
- Quick access to Starred, Recent, Shared with me, and Trash
88+
- Context menu: rename, star, download, delete, open in browser
89+
- Organization-level OAuth (admin configures once)
90+
91+
- **REST API**
92+
- Fastify server with OpenAPI/Swagger documentation at `/docs`
93+
- JWT authentication via Supabase tokens
94+
- Signed URLs for secure file downloads
95+
- Webhooks for external system notifications
96+
- Docker image with one-click deploy to Railway/Render
97+
- Rate limiting and request validation
98+
99+
- **Odoo ERP**
100+
- Sync suppliers from Odoo to BluePLM
101+
- Product catalog integration
102+
- Automatic sync scheduling
103+
104+
- **Vault Backups**
105+
- Automated encrypted backups via Restic
106+
- Supports local disk, S3, Backblaze B2, and SFTP
107+
- Configurable schedule (hourly, daily, weekly)
108+
- Deduplicated storage for efficiency
109+
110+
### Desktop Experience
111+
112+
- **Built-in Terminal**
113+
- CLI with file operations: `checkout`, `checkin`, `sync`, `download`
114+
- Navigation commands: `cd`, `ls`, `pwd`
115+
- Query commands: `status`, `history`, `find`
116+
- Batch operations on multiple files
117+
118+
- **File Browser**
119+
- Icon view with adjustable thumbnail sizes (48–256px)
120+
- List view with adjustable row heights
121+
- Windows shell thumbnails and icons
122+
- SolidWorks preview thumbnails
123+
- Sort by name, date, size, state, or version
124+
- Multi-select with Ctrl/Shift click
125+
126+
- **Drag & Drop**
127+
- Import files/folders from Windows Explorer
128+
- Drag files out to other applications
129+
- Move files between folders within BluePLM
130+
- Cross-view drag between sidebar and main panel
131+
132+
- **Search & Filter**
133+
- Full-text search across file names
134+
- Filter by state, checkout status, or file type
135+
- Pinned items for quick access
136+
- Recent files list
137+
138+
- **Offline Mode**
139+
- Work locally when disconnected from the network
140+
- Changes sync automatically when connection restored
141+
- Local-only vault option for air-gapped environments
142+
143+
### Administration
144+
145+
- **User Management**
146+
- Invite users with organization code
147+
- Role-based access: Admin, Engineer, Viewer
148+
- Change roles or remove users
149+
- Auto-join via email domain matching
150+
151+
- **Organization Settings**
152+
- Company profile with logo and addresses
153+
- Vault creation and management
154+
- API configuration (local/external toggle)
155+
- Integration credentials (Google Drive, Odoo)
156+
157+
- **RFQ System**
158+
- Request for Quote management
159+
- Supplier database with contact info
160+
- Supplier portal for external access
40161

41162
## Quick Start
42163

@@ -93,12 +214,17 @@ Share your **Project URL** and **anon key** with team members. Users with matchi
93214

94215
Native SolidWorks integration with toolbar buttons and task pane.
95216

96-
**Features:** Check out/in from toolbar • File status in task pane • Auto read-only mode • Custom properties sync
217+
**Features:**
218+
- Check out/in directly from the SolidWorks toolbar
219+
- Task pane showing file status, version, and state
220+
- Automatic read-only mode for files not checked out by you
221+
- Custom properties sync with BluePLM metadata
222+
- Check-in dialog with version notes
97223

98224
**Installation:**
99225
1. Download `BluePLM.SolidWorks.dll` from [releases](https://github.com/bluerobotics/blue-plm/releases)
100226
2. Run as admin: `RegAsm.exe /codebase BluePLM.SolidWorks.dll`
101-
3. Enable in SolidWorks: Tools → Add-ins
227+
3. Restart SolidWorks and enable from Tools → Add-ins
102228

103229
See [SolidWorks Add-in README](solidworks-addin/README.md) for details.
104230

@@ -118,29 +244,43 @@ VITE_SUPABASE_URL=https://your-project.supabase.co
118244
VITE_SUPABASE_ANON_KEY=your-anon-key
119245
```
120246

247+
### Available Scripts
248+
249+
| Command | Description |
250+
|---------|-------------|
251+
| `npm run dev` | Start Electron app with hot reload |
252+
| `npm run build` | Build production app with electron-builder |
253+
| `npm run typecheck` | Run TypeScript type checking |
254+
| `npm run cli` | Run CLI commands (`node cli/blueplm.js`) |
255+
| `npm run api` | Start REST API server |
256+
| `npm run api:dev` | Start API server with hot reload |
257+
121258
## Roadmap
122259

123260
| Feature | Status | Description |
124261
|---------|--------|-------------|
125-
| Engineering Change Requests (ECRs) | 🔜 Planned | Track issues and change requests linked to files/ECOs |
126-
| ECO Schedule | 🔜 Planned | Timeline view of milestones, deadlines, and release dates |
127-
| ECO Dashboard (GSD) | 🔜 Planned | Progress tracking, blockers, and attention items |
128-
| ECO Process Editor | 🔜 Planned | Define stages, gates, approvers, and automation rules |
129-
| Product Catalog | 🔜 Planned | Manage product info, lifecycle, and configurations |
130-
| Tab Navigation | 🔜 Planned | Multi-tab browsing with pinning and split views |
131-
| Item Number Database | 🔜 Planned | Serialization settings, revision tracking, navigation |
132-
| Offline Conflict Resolution | 🔜 Planned | Smart merge when coming back online |
133-
| Folder History | 🔜 Planned | Version history for entire folders |
134-
| Undo Check-in | 🔜 Planned | Restore previous version from history panel |
135-
| SolidWorks Configurations | 🔜 Planned | Configuration management and metadata sync |
262+
| Engineering Change Requests (ECRs) | 🔜 Planned | Track issues and change requests linked to files and ECOs with full traceability |
263+
| ECO Schedule | 🔜 Planned | Timeline/calendar view of ECO milestones, deadlines, and release dates |
264+
| ECO Dashboard (GSD) | 🔜 Planned | "Getting Stuff Done" dashboard with progress tracking, blockers, and attention items |
265+
| ECO Process Editor | 🔜 Planned | Define ECO stages, approval gates, assignees, and automation rules |
266+
| Product Catalog | 🔜 Planned | Manage product information, lifecycle stages, and BOM configurations |
267+
| Tab Navigation | 🔜 Planned | Multi-tab file browsing with pinning, split views, and drag between panes |
268+
| Item Number Database | 🔜 Planned | Part number serialization, revision tracking with badges, and cross-reference navigation |
269+
| Offline Conflict Resolution | 🔜 Planned | Smart merge UI when reconnecting after offline edits to the same file |
270+
| Folder History | 🔜 Planned | View version history for entire folders, not just individual files |
271+
| Undo Check-in | 🔜 Planned | Revert a check-in from history panel (restores previous version, keeps newer locally) |
272+
| SolidWorks Configurations | 🔜 Planned | Manage SolidWorks configurations as metadata, sync between files |
136273

137274
## Tech Stack
138275

139-
**Desktop App:** Electron 34 • React 19 • TypeScript • Tailwind CSS • Zustand • Supabase
140-
141-
**SolidWorks Add-in:** C# • .NET Framework 4.8 • SolidWorks API
142-
143-
**API Server:** Fastify • TypeScript • Docker
276+
| Component | Technologies |
277+
|-----------|--------------|
278+
| Desktop App | Electron 34, React 19, TypeScript, Tailwind CSS, Zustand, Supabase |
279+
| SolidWorks Add-in | C#, .NET Framework 4.8, SolidWorks API, Windows Forms |
280+
| API Server | Fastify, TypeScript, Docker, Swagger/OpenAPI |
281+
| Database | PostgreSQL (via Supabase), Row Level Security |
282+
| Storage | Supabase Storage, Restic for backups |
283+
| Auth | Supabase Auth, Google OAuth 2.0 |
144284

145285
## License
146286

0 commit comments

Comments
 (0)