Skip to content

WeMake-Labs/sociopath

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Sociopath Logo

Sociopath

The most minimal, NON-AI browser for macOS, built exclusively with WebKit for Apple Silicon.
Designed for consultants, designers, coders, knowledge-workers, and high-performers who need to get shit done.
No accounts required, no AI features, just uncompromising performance focused on your goals.
Data stays in the EU.

macOS 15.5+ Swift GPL-3.0 Open pull requests Open issues Contributors

Download for macOS

Features

  • Sidebar-first navigation – vertical tabs that feel natural and uncluttered.
  • Performance – optimized with modern macOS APIs for speed and low memory use.
  • Minimal, modern UI – focused on content, not chrome.
  • NON-AI browser – built exclusively with WebKit for Apple Silicon, no AI features or tracking.
  • Privacy-focused – no accounts required, data stays in the EU.

screenshot

Getting Started

Download

Download for macOS

Sociopath is a focused fork of Nook by the Nook team, reoriented toward a minimal, NON-AI macOS browser. Original repository: github.com/nook-browser/Nook.

or, Build from Source

Prerequisites

  • macOS 15.5+ (Apple Silicon recommended)
  • Xcode (to build from source)
git clone https://github.com/WeMake-Labs/sociopath.git
cd sociopath
open Nook.xcodeproj

Some obj-c libraries may not play nice with Intel Macs, though there should technically be full interoperability. You can use any number of resources to debug. For older versions of macOS than Tahoe (26.0), you may need to delete a couple lines of code. Sociopath is optimized for Apple Silicon and requires macOS 15.5+.

You’ll need to set your personal Development Team in Signing to build locally.

Join our Discord to help with development: https://discord.gg/J3XfPvg7Fs

Project Structure

sociopath/
├── Nook/
│   ├── Managers/              # Core business logic and state management
│   │   ├── BrowserManager/    # Central coordinator for browser state
│   │   ├── TabManager/        # Tab lifecycle and organization
│   │   ├── ProfileManager/    # User profile and data isolation
│   │   ├── ExtensionManager/  # Browser extension support
│   │   ├── HistoryManager/    # Browsing history tracking
│   │   ├── DownloadManager/   # File download handling
│   │   ├── CookieManager/     # Cookie storage and management
│   │   ├── CacheManager/      # Web cache management
│   │   ├── SettingsManager/   # User preferences
│   │   ├── DialogManager/     # System dialogs and alerts
│   │   ├── SearchManager/     # Search functionality
│   │   ├── SplitViewManager/  # Split-screen tab viewing
│   │   ├── PeekManager/       # Quick preview feature
│   │   ├── DragManager/       # Drag-and-drop operations
│   │   └── ...
│   │
│   ├── Models/                # Data models and business entities
│   │   ├── Tab/              # Tab model and state
│   │   ├── Space/            # Workspace organization
│   │   ├── Profile/          # User profile data model
│   │   ├── History/          # Browsing history entries
│   │   ├── Extension/        # Extension metadata
│   │   ├── Settings/         # Settings data structures
│   │   └── BrowserConfig/    # Browser configuration
│   │
│   ├── Components/            # SwiftUI views and UI components
│   │   ├── Browser/          # Main browser window UI
│   │   ├── Sidebar/          # Sidebar navigation UI
│   │   ├── CommandPalette/   # Quick action interface
│   │   ├── Settings/         # Settings screens
│   │   ├── Extensions/       # Extension management UI
│   │   ├── Peek/             # Preview overlay UI
│   │   ├── Dialog/           # Modal dialogs
│   │   ├── FindBar/          # In-page search
│   │   └── ...
│   │
│   ├── Utils/                # Utility functions and helpers
│   │   ├── WebKit/           # WebKit extensions
│   │   ├── Shaders/          # Metal shaders for UI effects
│   │   └── Debug/            # Development tools
│   │
│   ├── Protocols/            # Swift protocols and interfaces
│   ├── Adapters/             # External API adapters
│   ├── ThirdParty/           # Third-party dependencies
│   └── Supporting Files/     # App configuration and resources
│
├── Config/                   # Build and project configuration
└── assets/                   # Static assets and resources

Architecture Overview

Nook follows a manager-based architecture where:

  • Managers handle business logic and coordinate between different parts of the app
  • Models represent data and state using Swift's @Observable macro
  • Components are SwiftUI views that reactively update based on model changes
  • BrowserManager acts as the central coordinator, connecting all managers together

LICENSES

With the exception of third-party libraries in Sociopath/ThirdParty, all code is under the GPL 3.0 License. The relevant third-party code is licensed per-folder under a variety of free, open-source software licenses.

Sociopath is developed as a side project by WeMake-Labs in Germany, maintaining the same open-source licensing as the original Nook project.

About

A new browser, for Pro's. Without AI.

Topics

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Languages

  • Swift 99.4%
  • Other 0.6%