# πŸ“± aka-browser ### _A side browser for PC β€” always on top, always within reach._ **Your companion browser for Netflix, Twitter(X), and everything in between.** aka-browser screenshot [![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](https://opensource.org/licenses/MIT) [![Electron](https://img.shields.io/badge/Electron-Castlabs-47848F.svg)](https://github.com/castlabs/electron-releases) [![TypeScript](https://img.shields.io/badge/TypeScript-5.0-3178C6.svg)](https://www.typescriptlang.org/) [![React](https://img.shields.io/badge/React-18-61DAFB.svg)](https://reactjs.org/) [Features](#-key-features) β€’ [Installation](#-installation--development) β€’ [Building](#building-for-production) β€’ [DRM Support](#-drm-content-playback)
--- ## 🎯 Why aka-browser? **aka-browser** isn't here to replace your main browserβ€”it's designed to work **alongside it**. Think of it as your **always-on-top companion** for those moments when you need a second screen but don't have one. Watch Netflix with subtitles (PiP doesn't show them!), keep Twitter open while working, monitor a live stream, or follow a tutorialβ€”all in a beautiful, compact window that stays right where you need it. ### Perfect For - 🍿 **Watching Netflix with subtitles** β†’ PiP mode loses subtitles, aka-browser keeps them - 🐦 **Following Twitter/X** β†’ Keep your timeline visible while working - πŸ“Ί **Monitoring streams** β†’ Twitch, YouTube Live always in view - πŸ“– **Following tutorials** β†’ Step-by-step guides alongside your code - πŸ’¬ **Chat windows** β†’ Discord, Slack, or any web chat always accessible - 🎡 **Music controls** β†’ Spotify, YouTube Music at your fingertips ### Why Not Just Use Your Main Browser? - πŸͺŸ **Always on top** β†’ Never gets buried under other windows - πŸ“± **Compact & elegant** β†’ Beautiful iPhone frame that doesn't clutter your screen - 🎯 **Purpose-built** β†’ Lightweight, fast, and distraction-free - 🎬 **DRM-ready** β†’ Full Widevine support for streaming services - ⚑ **Instant access** β†’ Lives in your menu bar, launches immediately ## ✨ Key Features
### πŸ–₯️ **Browser Essentials** - πŸ“‘ **Multi-tab browsing** with visual switcher - πŸ–ΌοΈ **Tab previews** via auto-screenshots - πŸ‘† **Trackpad gestures** for navigation - 🎨 **Dynamic theme colors** with LRU cache - πŸ€– **Smart user agent** switching (mobile/desktop) ### 🎬 **DRM Content Ready** - 🍿 **Netflix, Disney+, Prime Video** support - πŸ” **Widevine CDM** integration - ✍️ **Castlabs EVS** signed for production - πŸ“¦ **Packaged builds** for DRM validation
### 🎨 **Beautiful Interface** - πŸ“± **iPhone 15 Pro frame** with Dynamic Island - βš›οΈ **React 18** + Vite + TailwindCSS - πŸŒ“ **System theme** detection (light/dark) - ✨ **Smooth animations** with optimized rendering ### πŸ› οΈ **Developer Tools** - πŸ” **Chrome DevTools** (Cmd+Option+I) - 🎯 **Element inspector** via right-click - πŸ”— **URL bar** with title/domain display - πŸ–₯️ **System tray** with always-on-top
## πŸš€ Quick Start ```bash # Clone the repository git clone https://github.com/hmmhmmhm/aka-browser.git cd aka-browser # Install dependencies pnpm install # Run in development mode pnpm run dev ``` That's it! The browser will launch with a beautiful iPhone 15 Pro frame ready for testing. ## πŸ—οΈ Technical Stack ``` β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ Electron (Castlabs + Widevine CDM) β”‚ ← DRM-ready browser engine β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ β”‚ React 18 + TypeScript β”‚ ← Modern UI framework β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ β”‚ Vite + TailwindCSS β”‚ ← Fast builds, beautiful styles β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ β”‚ electron-builder + EVS signing β”‚ ← Production packaging β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ ``` ## πŸ“¦ Installation & Development ### Prerequisites | Requirement | Version | Purpose | | ---------------- | ------- | --------------------------------- | | **Node.js** | 18+ | Runtime environment | | **pnpm** | Latest | Package management (recommended) | | **Python 3** | 3.8+ | EVS signing for DRM builds | | **Castlabs EVS** | - | Production DRM signing (optional) | ### Building for Production Want to watch Netflix? You'll need a production build: ```bash # 1️⃣ Setup EVS signing (first time only) pnpm run evs:setup # 2️⃣ Verify your configuration pnpm run evs:verify # 3️⃣ Build the packaged app pnpm run package ``` > **⚠️ Important**: Netflix and other streaming services **reject development mode** signatures. You **must** use a packaged build for DRM content. ## 🎬 DRM Content Playback aka-browser supports **Widevine DRM** out of the box: ``` Development Mode β†’ ❌ Netflix won't work Production Build β†’ βœ… Full DRM support (L3 level, software-based without TEE) ``` ### How It Works 1. **Widevine CDM** auto-downloads on first run (via Electron Component Updater) 2. **Castlabs EVS** signs the app for production-grade DRM validation 3. **Streaming services** verify the signature and allow playback ### Supported Services | Service | Status | Notes | | --------------------- | ------ | ----------------------------- | | 🍿 **Netflix** | βœ… | Requires production build | | 🏰 **Disney+** | βœ… | Requires production build | | πŸ“¦ **Prime Video** | βœ… | Requires production build | | 🎡 **Spotify** | βœ… | Works in dev mode | | 🎬 **Other Widevine** | βœ… | Most require production build | ## 🎯 Who Is This For? Perfect for **anyone** who: - βœ… Wants to **watch Netflix with subtitles** while working (PiP doesn't show them!) - βœ… Needs a **second screen** but only has one monitor - βœ… Likes to **keep Twitter/social media visible** without tab-switching - βœ… Follows **live streams or tutorials** while multitasking - βœ… Values a **clean, elegant interface** over browser clutter - βœ… Wants **always-on-top** functionality with a beautiful design **Bonus for developers:** - πŸ› οΈ Built-in **Chrome DevTools** for testing mobile sites - πŸ“± **Lightweight alternative** to heavy iOS simulators - 🎨 Perfect for **responsive design** previews ## πŸ› οΈ Design Philosophy This project prioritizes **simplicity and elegance**: - 🎯 **Companion, not replacement** β†’ Works alongside your main browser - ⚑ **Lightweight & fast** β†’ Instant startup, minimal resource usage - 🎨 **Beautiful by default** β†’ iPhone 15 Pro frame with attention to detail - πŸͺŸ **Always accessible** β†’ Menu bar integration, always-on-top support - 🧩 **Just enough features** β†’ What you need, nothing you don't ## πŸ“„ License MIT License - feel free to use, modify, and distribute. ## πŸ‘¨β€πŸ’» Author **hmmhmmhm** ---
**⭐ Star this repo if you find it useful!** Made with ❀️ for everyone who needs a better way to multitask