Napture is a cross-platform web browser built with Electron and Chromium. Designed from the ground up for speed, visual clarity, and customization, Napture offers a responsive interface, built-in tracker protection, flexible theme customization, and an extensible architecture.
- Modern & Minimalist UI – Sleek, streamlined interface with customizable omnibar, sidebar widgets, and glassmorphism accents.
- Built-in Privacy & Content Blocking – Automatic blocking of third-party tracking scripts, ads, and telemetry requests.
- Custom Protocol Handlers – Internal scheme routing for
napture://(settings, history, downloads, bookmarks) andne://namespaces. - End-to-End Encrypted Sync – Secure synchronization of preferences, bookmarks, and pinned sites.
- Tab & Session Management – Multi-tab workspace with session restore, tab previews, and memory-saving hibernation.
- Cross-Platform Compatibility – Native packaging support for Linux (AppImage, Deb, Rpm, Flatpak, Snap), Windows (Installer & Portable), and macOS (Apple Silicon & Intel).
Before running or building Napture, make sure you have installed:
- Node.js: v18.x or higher (LTS recommended)
- npm: v9.x or higher (comes with Node.js)
- Git
git clone https://github.com/nebuff/napture.git
cd napturenpm installnpm startNapture includes a universal build script (build.sh on Linux/macOS or build.bat on Windows) as well as standard npm build scripts.
# Build standalone packages for your current operating system:
./build.sh
# Fast unpack build for testing (outputs directly to dist/ without compression):
./build.sh --dir
# Build for specific platforms:
./build.sh --linux # Generates .AppImage, .deb, .rpm, .tar.gz
./build.sh --win # Generates Windows NSIS installer & Portable exe
./build.sh --mac # Generates macOS .dmg & .zip bundles
./build.sh --all # Builds for all platforms
# Run the test suite:
./build.sh --test:: Build for current environment:
build.bat
:: Quick unpacked test build:
build.bat --dir| Command | Description |
|---|---|
npm start |
Launch the browser locally in development mode |
npm test |
Run the complete Jest test suite |
npm run pack |
Build unpacked application into dist/ |
npm run dist |
Build installers for current host platform |
npm run dist:linux |
Build Linux packages (.AppImage, .deb, .rpm, .tar.gz) |
npm run dist:win |
Build Windows executables (.exe installer & portable) |
npm run dist:mac |
Build macOS bundles (.dmg & .zip) |
npm run dist:all |
Build all platform targets |
All generated packages and binaries are output to the dist/ folder.
Napture includes a comprehensive Jest test suite covering UI components, database operations, protocol routing, and security policies:
npm testNapture/
├── napture/ # Core application source code
│ ├── main.js # Main process & window lifecycle manager
│ ├── preload.js # Secure IPC bridge for renderer contexts
│ ├── tab-preload.js # Webview tab isolation & content injection
│ ├── protocol-handler.js # Internal napture:// scheme routing
│ ├── settings-ui.js # Browser settings page controller
│ ├── history-ui.js # History management & search interface
│ ├── downloads-ui.js # Downloads manager & file shelf
│ ├── db/ # SQLite database (history, settings, sync)
│ ├── newebx/ # UI styling & chrome customizations
│ ├── renderer/ # Webview components, tab bar & omnibar
│ ├── src/ # Native bindings, components & telemetry
│ └── styles/ # Design system & theme stylesheets
├── scripts/ # Packaging and build automation scripts
├── tests/ # Jest automated test suites
├── build.sh # Universal build automation script
├── build.bat # Windows build script
├── package.json # Project dependencies & metadata
└── versions.json # Engine and browser version constants
Napture can be customized via environment variables. Copy .env.example to .env to override defaults:
cp .env.example .env| Variable | Description | Default |
|---|---|---|
NAPTURE_CHANNEL |
Release channel tag (stable, beta, nightly) |
stable |
TELEMETRY_ENDPOINT |
Custom telemetry ingestion endpoint | None |
SYNC_SERVER_URL |
Custom E2EE sync server URL | Default |
Distributed under the MIT License. See LICENSE for more information.