An AI-powered LinkedIn automation system that records conversations, analyzes them with AI, and automatically manages LinkedIn connections and messaging.
- π± PWA Mobile App: Record conversations via QR code scanning
- π€ AI Processing: Transcribe and analyze conversations using OpenAI Whisper + GPT-4
- π LinkedIn Integration: Chrome extension for automated connection requests and messaging
- β‘ Auto-Pilot Mode: AI automatically responds to LinkedIn messages based on conversation context
- π Real-time Sync: Live synchronization between mobile app and Chrome extension
- PWA Mobile App - Record and manage conversations
- Supabase Backend - Database, auth, storage, and AI processing
- Chrome Extension - LinkedIn automation and contact management
- Frontend: React 18+ with TypeScript, Vite, Tailwind CSS
- Backend: Supabase (PostgreSQL + Auth + Storage + Edge Functions)
- AI: OpenAI Whisper API (transcription) + GPT-4 (analysis/responses)
- Chrome Extension: Manifest v3 with content scripts and service worker
yc_hackathon/
βββ docs/ # Documentation and build logs
βββ shared/ # Shared TypeScript types
βββ supabase/ # Backend database and functions
β βββ functions/ # Edge Functions for AI processing
β β βββ process-audio/ # Audio transcription and analysis
β β βββ generate-response/ # AI message generation
β β βββ send-connection-request/ # LinkedIn connection automation
β βββ migrations/ # Database schema
βββ pwa-app/ # Progressive Web App
β βββ src/
β β βββ components/ # React components
β β βββ hooks/ # Custom React hooks
β β βββ lib/ # Utilities and Supabase client
β βββ public/ # PWA manifest and icons
βββ chrome-extension/ # Chrome Extension
βββ src/
β βββ sidebar/ # React popup/sidebar app
β βββ content/ # LinkedIn DOM monitoring
β βββ background/ # Service worker coordination
βββ public/ # Extension manifest and icons
- Node.js 18+
- Supabase account
- OpenAI API key
- Chrome browser (for extension development)
- Create a new Supabase project at supabase.com
- Run the database migration:
-- Copy and run the contents of supabase/migrations/20250101000000_initial_schema.sql - Set up Supabase Edge Functions environment variables:
OPENAI_API_KEY: Your OpenAI API keySUPABASE_SERVICE_ROLE_KEY: Your Supabase service role key
cd pwa-app
npm install
# Configure environment variables
cp .env.local.example .env.local
# Edit .env.local with your Supabase URL and anon key
# Development
npm run dev
# Build for production
npm run buildcd chrome-extension
npm install
# Configure environment variables
cp .env.local.example .env.local
# Edit .env.local with your Supabase URL and anon key
# Development
npm run dev
# Build for production
npm run buildTo install the extension:
- Open Chrome and go to
chrome://extensions/ - Enable "Developer mode"
- Click "Load unpacked" and select the
chrome-extension/distfolder
# Install Supabase CLI
npm install -g supabase
# Link to your project
supabase link --project-ref YOUR_PROJECT_REF
# Deploy functions
supabase functions deploy process-audio
supabase functions deploy generate-response
supabase functions deploy send-connection-request- Open the PWA mobile app
- Sign in with email/password
- Tap "Scan QR Code"
- Scan your contact's LinkedIn QR code
- Start recording your conversation
- Stop recording when done
- AI will process and analyze the conversation
- Install and configure the Chrome extension
- Open LinkedIn in Chrome
- The extension sidebar shows your contacts
- Enable "Auto-Pilot" for specific contacts
- AI will automatically:
- Send personalized connection requests
- Respond to incoming messages based on conversation context
PWA App & Chrome Extension (.env.local):
VITE_SUPABASE_URL=https://your-project.supabase.co
VITE_SUPABASE_ANON_KEY=your-anon-keySupabase Edge Functions:
OPENAI_API_KEY=sk-...
SUPABASE_SERVICE_ROLE_KEY=your-service-role-keyThe system uses 4 main tables:
contacts- LinkedIn contact informationconversations- Recorded conversation data and AI analysisai_actions- Log of automated LinkedIn actionslinkedin_messages- Message history between user and contacts
- Transcription: OpenAI Whisper converts audio to text
- Summarization: GPT-4 creates concise conversation summaries
- Topic Extraction: Identifies key discussion points
- Sentiment Analysis: Determines conversation tone
- Action Items: Suggests follow-up actions
- Context-Aware: Uses conversation history and relationship type
- Personalized: Incorporates custom instructions per contact
- Professional: Maintains appropriate tone and style
- Real-time: Responds automatically when auto-pilot is enabled
- Row Level Security: Database access restricted to authenticated users
- Client-side Audio: Audio processing happens in secure Edge Functions
- Encrypted Storage: All data encrypted at rest in Supabase
- Permission-based: Chrome extension only accesses LinkedIn when needed
PWA App:
npm run dev # Start development server
npm run build # Build for production
npm run preview # Preview production build
npm run lint # Run ESLint
npm run typecheck # TypeScript type checkingChrome Extension:
npm run dev # Start development with hot reload
npm run build # Build extension for production
npm run lint # Run ESLint
npm run typecheck # TypeScript type checking- PWA: Test on mobile devices using the development server URL
- Chrome Extension: Load unpacked extension in Chrome for testing
- LinkedIn Integration: Test on linkedin.com messaging
- Audio Recording Fails: Check microphone permissions in browser
- QR Scanner Not Working: Ensure camera permissions are granted
- Extension Not Loading: Verify manifest.json and permissions
- AI Processing Slow: Check OpenAI API key and rate limits
- Database Errors: Verify Supabase connection and RLS policies
- PWA: Use browser DevTools console
- Chrome Extension: Use
chrome://extensions/developer tools - Edge Functions: Check Supabase function logs
- Database: Use Supabase dashboard SQL editor
Deploy to any static hosting service (Vercel, Netlify, etc.):
npm run build
# Deploy the dist/ folder- Build the extension:
npm run build - Package the
dist/folder as a .zip file - Upload to Chrome Web Store Developer Dashboard
Deploy using Supabase CLI:
supabase functions deploy --project-ref YOUR_PROJECT_REF- Fork the repository
- Create a feature branch:
git checkout -b feature/amazing-feature - Commit changes:
git commit -m 'Add amazing feature' - Push to branch:
git push origin feature/amazing-feature - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- OpenAI for Whisper and GPT-4 APIs
- Supabase for backend infrastructure
- LinkedIn for the professional networking platform
- React and TypeScript communities for excellent tooling
Built with β€οΈ for automating professional networking