Skip to content

zakisheriff/One-Browser

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

One Browser

A Privacy-First, Minimalist Web Browser Built with Electron

Electron React Tailwind License


"Browse the web, distraction-free."

One Browser is a clean, minimalist web browser designed with privacy and simplicity at its core. Built with Electron and React, featuring a pure black/white aesthetic and intuitive bottom-toolbar design.


🌟 Vision

One Browser aims to be:

  • Privacy-first — No tracking, no telemetry, just browsing
  • Minimalist — Clean monochrome UI with zero distractions
  • Intuitive — Bottom toolbar for comfortable one-handed use
  • Fast — Optimized for performance with React memoization

✨ Features

  • Tabbed Browsing
    Drag-and-drop reorderable tabs with smooth animations.

  • Smart Omnibox
    Google autocomplete suggestions as you type.

  • Safari-Style Panels
    Compact popover panels for Bookmarks, History, Downloads, and AI Assistant.

  • macOS Traffic Lights
    Native-style window controls for close, minimize, and fullscreen.

  • Right-Click Context Menu
    Back, Forward, Reload, View Source, and Inspect Element.

  • Dark/Light Theme
    Pure black and white theme toggle for day and night browsing.


🎨 Design Philosophy

  • Monochrome Aesthetic
    Pure black (#000000) and pure white (#FFFFFF) only.

  • Bottom Toolbar
    Navigation and controls at the bottom for ergonomic access.

  • Rounded Corners
    Content area and tabs feature soft, modern rounded edges.

  • No Emojis, No Gradients
    Icons only — clean, professional, distraction-free.


📁 Project Structure

One-Browser/
├── main/
│   └── main.js              # Electron Main Process
├── preload/
│   └── preload.js           # Context Bridge for IPC
├── renderer/
│   ├── src/
│   │   ├── App.jsx          # Main React Application
│   │   ├── components/      # UI Components
│   │   │   ├── Titlebar.jsx     # Window Controls
│   │   │   ├── TabBar.jsx       # Tab Management
│   │   │   ├── Toolbar.jsx      # Navigation & Omnibox
│   │   │   ├── WebViewContainer.jsx  # Web Content
│   │   │   ├── NewTabPage.jsx   # New Tab Experience
│   │   │   └── Sidebar.jsx      # Panel Components
│   │   └── context/         # React Context Providers
│   │       ├── ThemeContext.jsx
│   │       └── TabContext.jsx
│   ├── index.html           # HTML Entry Point
│   └── vite.config.js       # Vite Configuration
└── package.json             # Dependencies & Scripts

🚀 Quick Start

Prerequisites

  • Node.js (v18+)
  • NPM or Yarn

1. Clone the Repository

git clone https://github.com/zakisheriff/One-Browser.git
cd One-Browser

2. Install Dependencies

npm install
cd renderer && npm install && cd ..

3. Run the Application

npm run dev

This will start both the Vite dev server and Electron concurrently.


🔧 Tech Stack

Core

  • Electron — Cross-platform desktop app framework
  • React 18 — Modern UI library with hooks
  • Vite — Next-generation frontend build tool

Styling

  • Tailwind CSS — Utility-first CSS framework
  • Lucide React — Beautiful, consistent icons

State Management

  • React Context — Built-in state management
  • useCallback/useMemo — Performance optimization

📦 Building for Production

# Build the renderer
cd renderer && npm run build && cd ..

# Package with electron-builder (coming soon)
npm run package

🗺️ Roadmap

  • Bookmark persistence (electron-store)
  • Download manager
  • Extension support
  • Developer tools integration
  • Cross-platform packaging (macOS, Windows, Linux)

🤝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.


📄 License

MIT License — 100% Free and Open Source


Made by Zaki Sheriff

Browse Simple. Browse Free.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages