Skip to content

KrishnaShettyDev/darkmode-ai

Repository files navigation

DarkMode AI

Real-time AI assistant for interviews, meetings, and presentations powered by OpenAI's Realtime API.

DarkMode AI License Platform

Features

  • Real-time AI Assistance - Get instant help during interviews, meetings, and presentations
  • Voice & Screen Analysis - Analyzes audio and screen content for contextual responses
  • Multiple Profiles - Interview, Sales Call, Business Meeting, Presentation, Negotiation
  • Document Upload - Upload resumes, notes, or reference materials for context
  • Transparent Overlay - Always-on-top window that can be positioned anywhere
  • Click-through Mode - Make window transparent to mouse clicks when needed
  • Session History - Review past sessions and responses
  • Analytics Dashboard - Track usage and session statistics

Quick Start

Prerequisites

  • Node.js 18+
  • OpenAI API key with Realtime API access
  • macOS, Windows, or Linux

Installation

# Clone the repository
git clone https://github.com/plutaslab-hq/darkmode-ai.git
cd darkmode-ai

# Install dependencies
npm install

# Start the app
npm start

First Run

  1. Launch the app
  2. Enter your OpenAI API key
  3. Select a profile (Interview, Meeting, etc.)
  4. Click "Start Session"
  5. Position the window where you need it

Keyboard Shortcuts

Shortcut Action
Ctrl/Cmd + Arrow Keys Move window
Ctrl/Cmd + M Toggle click-through mode
Ctrl/Cmd + \ Close window or go back
Enter Send message to AI

Audio Capture

Platform Method
macOS SystemAudioDump (included)
Windows Loopback audio capture
Linux Microphone input

Backend (Optional)

DarkMode AI can work standalone or with a backend for:

  • User authentication
  • Session sync across devices
  • Document cloud storage
  • Usage analytics

Self-hosted Backend

See darkmode-ai-server for backend setup.

Building for Distribution

# Package the app
npm run package

# Create distributable installers
npm run make

Output will be in the out/ directory.

Project Structure

darkmode-ai/
├── src/
│   ├── index.js           # Main process
│   ├── preload.js         # Preload script
│   ├── index.html         # Main window HTML
│   ├── storage.js         # Local storage
│   ├── components/        # UI components
│   │   ├── app/           # App shell components
│   │   └── views/         # View components
│   ├── utils/             # Utilities
│   │   ├── openai.js      # OpenAI integration
│   │   ├── apiClient.js   # Backend API client
│   │   └── ...
│   └── assets/            # Static assets
├── forge.config.js        # Electron Forge config
└── package.json

Environment Variables

Variable Description Default
API_URL Backend API URL https://darkmode-ai-server.onrender.com/api
OPENAI_API_KEY OpenAI API key -

Tech Stack

  • Framework: Electron
  • UI: Lit (Web Components)
  • AI: OpenAI Realtime API
  • Audio: WebRTC, SystemAudioDump (macOS)
  • Backend: Express.js, PostgreSQL, Prisma

License

This project is licensed under the GPL-3.0 License - see the LICENSE file for details.

Contributing

We welcome contributions! Please see our Contributing Guide for details.

Links

About

DarkMode AI - Real-time meeting assistant powered by OpenAI

Resources

License

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors