How locthinhnguyen/vone works
VOne is a responsive digital-office application. Employees sign in, use role-specific dashboards and functional workspaces, then create or process work, documents, and administrative requests; managers review approvals, while other features support communication, internal news, personal records, and reference material. The React app calls an authenticated API client; Express routes apply business rules and persist domain records in MongoDB. README-described capabilities are included even where their source was not sampled; those links reflect documented API usage, not inspected implementations.
Main entry points: client.js API client · server.js Express API server · tasks.js Task routes · services.js Service routes
Components 25
Web application
- Routes and access
frontend/src/app/App.jsx - Sign-in state
frontend/src/features/auth/AuthContext.jsx - Home dashboards
frontend/src/features/dashboard/pages/Home.jsx - API client
frontend/src/lib/api/client.js
Work management
- Task workspace
frontend/src/features/tasks/pages/CongViecCuaToi.jsx - Task API wrapper
frontend/src/features/tasks/data/tasksApi.js - Document workflow
frontend/src/features/documents/pages/TaoVanBan.jsx
Office services
- Chat and meetings
frontend/src/features/connect/pages/ConnectPage.jsx - Profile and payslips
frontend/src/features/profile/pages/MePage.jsx - Internal news
frontend/src/features/media/pages/MediaPage.jsx - Wiki and legal
frontend/src/features/wiki/pages/WikiPage.jsx - Admin requests
frontend/src/features/service/pages/ServicePage.jsx - Notifications
frontend/src/features/notifications/pages/NotificationsPage.jsx
API and domain
- Express API server
backend/server.js - Authentication routes
backend/routes/auth.js - Task routes
backend/routes/tasks.js - Document routes
backend/routes/documents.js - Service routes
backend/routes/services.js - Other domain routes
backend/routes - Notification helper
backend/utils/notify.js
Persistence
- Task records
backend/models/Task.js - Document records
backend/models/Document.js - Service request records
backend/models/ServiceRequest.js
Other components
- Employee or manager
- MongoDB
Connections 36
- Employee or manager → Routes and access: uses
- Routes and access → Sign-in state: checks session
- Sign-in state → API client: requests identity
- Employee or manager → Home dashboards: views
- Home dashboards → API client: loads stats
- Employee or manager → Task workspace: creates and tracks
- Task workspace → Task API wrapper: requests tasks
- Task API wrapper → API client: calls
- Employee or manager → Document workflow: drafts and routes
- Document workflow → API client: requests documents
- Employee or manager → Chat and meetings: communicates
- Chat and meetings → API client: requests chat and events
- Employee or manager → Profile and payslips: manages profile
- Profile and payslips → API client: requests user and payslips
- Employee or manager → Internal news: reads and posts
- Internal news → API client: requests articles
- Employee or manager → Wiki and legal: consults
- Wiki and legal → API client: requests reference material
- Employee or manager → Admin requests: submits or reviews
- Admin requests → API client: calls
- Employee or manager → Notifications: checks alerts
- Notifications → API client: requests notifications
- API client → Express API server: sends authenticated API requests
- Express API server → Authentication routes: dispatches
- Express API server → Task routes: dispatches
- Express API server → Document routes: dispatches
- Express API server → Service routes: dispatches
- Express API server → Other domain routes: dispatches
- Task routes → Task records: reads and writes
- Document routes → Document records: reads and writes
- Service routes → Service request records: reads and writes
- Service routes → Notification helper: notifies users
- Task routes → Notification helper: notifies users
- Task records → MongoDB: persists
- Document records → MongoDB: persists
- Service request records → MongoDB: persists