This is the main repository for Project Nexus - a decentralized, privacy-preserving web browser built on Chromium.
nexus/
├── browser-core/ # Core browser integration (main app)
├── search-engine/ # Decentralized search implementation
├── shared/ # Shared libraries
│ ├── types/ # TypeScript type definitions
│ ├── utils/ # Common utilities
│ └── crypto/ # Cryptographic primitives
├── docs/ # Documentation
├── tests/ # Test suites
└── tools/ # Development and build tools
- Node.js 18+ (LTS recommended)
- Python 3.11+
- Rust (for native modules if needed)
- depot_tools (for Chromium development)
- Git
# Install dependencies for all packages
npm install
# Build all packages
npm run build
# Run type checking
npm run typecheck
# Run linting
npm run lint# Watch mode for browser-core
npm run dev -w browser-core
# Run tests for browser-core
npm run test -w browser-core- Create a feature branch from
main - Make your changes
- Run
npm run lintandnpm run typecheck - Ensure tests pass
- Submit PR with clear description
We follow Conventional Commits:
feat:new featurefix:bug fixdocs:documentation changesrefactor:code refactoringtest:test additions/modificationschore:build/CI changes
See docs/setup/chromium-fork.md for detailed instructions on setting up the Chromium development environment and applying Nexus patches.
The main browser application. Contains:
chromium-integration/- Custom Chromium patches and modificationsipfs-handler/- IPFS protocol handler using Heliasolid-integration/- Solid pod OIDC integrationhelium-connector/- Helium network API clientwallet-integration/- Ethereum wallet and dApp bridgeai-assistant/- Local LLM inference using WebGPUsocial-client/- ActivityPub clientcache-manager/- Unified caching layer (IndexedDB)event-bus/- Pub/sub event systemprotocol-router/- URL scheme routingui/- Browser UI components (address bar, tabs, etc.)
Decentralized search implementation:
chromadb/- Semantic search API (vector database)summa/- Full-text search integrationquery-engine/- Federated query distribution (Phase 2)indexer/- Background content indexing
Reusable libraries:
types/- TypeScript type definitionsutils/- Helper functions (crypto, encoding, etc.)crypto/- Cryptographic operations (key management, signing)
- Browser Engine: Chromium (fork)
- Languages: TypeScript (strict), C++ (Chromium patches), Rust (performance-critical)
- Build System: GN + Ninja (Chromium), npm workspaces (TypeScript)
- Blockchain: Ethereum (ethers.js)
- IPFS: Helia (in-browser)
- Solid: @inrupt/solid-client
- AI: WebGPU + GGUF models (WebLLM)
- Search: ChromaDB (vector), local full-text
MIT - see LICENSE for details.
See CONTRIBUTING.md for guidelines.
Status: Early Development (Phase 1 - Browser Prototype)