How harsh9934-debug/ai_virtual_assistant works
J.A.R.V.I.S is a browser-based voice assistant with a Node/Express backend. The main workflow is a user speaking or entering a prompt in the UI, the server routing it to the assistant controller, and the controller either dispatching a matching command or returning a GROQ-generated response. Command modules cover system control, productivity, information, and wellness features. The README documents browser speech capabilities and JSON persistence; the sampled source confirms the server, dispatch, LLM, and selected command behavior. Some command-to-service and command-to-storage wiring is not shown, so those links are omitted.
Main entry points: commands Productivity commands · CommandRegistry.js Command registry · assistantController.js Assistant controller · main.ejs Assistant UI
Components 32
User interaction
- Assistant UI
views/main.ejs
Assistant core
- Express server
index.js - Assistant routes
routes/virtualRoute.js - Assistant controller
controllers/assistantController.js - Command registry
commands/CommandRegistry.js - GROQ response service
services/llmService.js
System control
- System commands
commands - Brightness control
commands/BrightnessCommand.js - Volume control
commands/VolumeCommand.js - Screenshot capture
commands/ScreenshotCommand.js - System monitoring
commands/SystemMonitorCommand.js - File operations
commands/FileOperationsCommand.js - File search
commands/FileSearchCommand.js
Productivity and wellness
- Productivity commands
commands - Notes management
commands/NotesCommand.js - Todo management
commands/TodoCommand.js - Notes store
data/notes.json - Todo store
data/todos.json - Timers and stopwatch
commands/TimerCommand.js - Health reminders
commands/HealthReminderCommand.js - Smart routines
commands/SmartRoutineCommand.js - Calculator
commands/CalculatorCommand.js - Date and time
commands/DateTimeCommand.js
Information services
- Information commands
commands - News command
commands/NewsCommand.js - News service
services/newsService.js - Web search
commands/WebCommand.js - Wikipedia service
services/wikipediaService.js
Other components
- User
- GROQ API
- NewsAPI
- Wikipedia
Connections 27
- User → Assistant UI: speaks or types
- Assistant UI → Express server: loads interface
- Express server → Assistant routes: mounts routes
- Assistant routes → Assistant controller: dispatches requests
- Assistant controller → Command registry: checks commands
- Command registry → System commands: dispatches matching command
- Command registry → Productivity commands: dispatches matching command
- Command registry → Information commands: dispatches matching command
- Assistant controller → GROQ response service: uses when unmatched
- GROQ response service → GROQ API: requests completion
- System commands → Brightness control: dispatches
- System commands → Volume control: dispatches
- System commands → Screenshot capture: dispatches
- System commands → System monitoring: dispatches
- System commands → File operations: dispatches
- System commands → File search: dispatches
- Productivity commands → Notes management: dispatches
- Productivity commands → Todo management: dispatches
- Productivity commands → Timers and stopwatch: dispatches
- Productivity commands → Health reminders: dispatches
- Productivity commands → Smart routines: dispatches
- Productivity commands → Calculator: dispatches
- Productivity commands → Date and time: dispatches
- Information commands → News command: dispatches
- Information commands → Web search: dispatches
- News service → NewsAPI: fetches headlines
- Wikipedia service → Wikipedia: searches and fetches