Skip to content

Conversation

@ghost
Copy link

@ghost ghost commented Nov 4, 2025

Resolves

Submitter Checklist:

  • I confirm that no security/privacy review is needed, or that I have requested one
  • There is a ticket for my issue
  • Used Github auto-closing keywords in the PR description above
  • Wrote a good PR/commit description
  • Added appropriate labels (QA/Yes or QA/No; release-notes/include or release-notes/exclude; OS/...) to the associated issue
  • Checked the PR locally: npm run test -- brave_browser_tests, npm run test -- brave_unit_tests, npm run lint, npm run gn_check, npm run tslint
  • Ran git rebase master (if needed)

Reviewer Checklist:

  • A security review is not needed, or a link to one is included in the PR description
  • New files have MPL-2.0 license header
  • Adequate test coverage exists to prevent regressions
  • Major classes, functions and non-trivial code blocks are well-commented
  • Changes in component dependencies are properly reflected in gn
  • Code follows the style guide
  • Test plan is specified in PR before merging

After-merge Checklist:

Test Plan:

jpugh7 and others added 5 commits November 3, 2025 01:31
This commit establishes the foundation for the Secretariat Browser project,
a privacy-focused browser with a revolutionary Discovery Engine built on
Brave Browser and Chromium.

## Changes Made

### Rebranding
- Updated package.json: Brave → Secretariat (v0.0.1)
- Updated README.md with Secretariat branding and quick start guide
- Created .nvmrc to specify Node.js v24 requirement

### Documentation Created
- SECRETARIAT_README.md: Complete project overview and vision
- SECRETARIAT_ROADMAP.md: Detailed development roadmap with 8 phases
- SETUP.md: Comprehensive development environment setup guide
- ARCHITECTURE.md: Technical architecture and component structure

### Key Features Planned
- Discovery Engine with customizable search profiles
- 5 Discovery Modes (Balanced, Deep Dive, Serendipity, Focused, Community)
- Search Archives for preserving discoveries
- RSS blog index for hobbyist content
- Source diversity and anti-SEO approach

### Project Structure
- Defined Discovery Engine component structure
- Planned WebUI integration for search interface
- Documented data structures and flows
- Outlined build system integration

### Development Phases
1. Foundation & Setup (Current)
2. Discovery Engine MVP
3. Address Bar Integration
4. Enhanced Discovery Features
5. Community & Sharing
6. Advanced Search Features
7. Polish & Optimization
8. Documentation & Release

## Technical Details

Based on:
- Brave Browser 1.86.34
- Chromium 142.0.7444.60
- License: MPL-2.0

## Credits

Built upon the excellent work of Brave Software and the Chromium project.
This commit completes the rebranding from Brave to Secretariat and adds
comprehensive project documentation with Linux-first focus.

## Rebranding Changes

### Updated Core Files
- scripts/init.js: Added Secretariat branding and notes
- lib/logging.js: Updated with Secretariat color scheme (mint green, deep brown, salmon)
- CONTRIBUTING.md: Complete rewrite for Secretariat project
- SECURITY.md: Complete rewrite with Secretariat security policies

### Copyright Updates
- Added "Copyright (c) 2025 The Secretariat Browser Authors"
- Maintained original Brave copyright attribution
- Added notes "Secretariat is derived from Brave Browser"

## New Documentation

### DESIGN.md - Visual Design & Color Scheme
- Complete color palette documentation
- Mint Green (#98D8C8) - Primary brand color
- Deep Brown (#3E2723) - Text and structure
- Cream (#FFF8E7) - Backgrounds (subtle use)
- Salmon (#FFA07A) - Warnings and CTAs (minimal use)
- Color usage guidelines for all components
- Dark mode specifications
- Accessibility (WCAG AA) compliance
- CSS variables for implementation

### CONTRIBUTING.md - Contribution Guidelines
- Linux-first development emphasis
- Discovery Engine development guide
- Coding standards (C++, JavaScript, Python)
- Testing requirements
- Pull request process
- Security best practices
- Community guidelines

### CODE_OF_CONDUCT.md - Community Standards
- Contributor Covenant v2.1
- Enforcement guidelines
- Secretariat-specific additions
- Inclusivity in tech
- Discovery Engine discussion guidelines

### SECURITY.md - Security Policy
- Vulnerability reporting process
- Severity levels and response times
- Discovery Engine security considerations
- Search privacy guarantees
- Secure coding examples
- Dependency management
- Disclosure policy

## Linux-First Focus

All documentation now emphasizes:
- Ubuntu/Debian as primary development platforms
- Linux-specific build instructions
- macOS/Windows deprioritized (Phase 2+)
- Linux command examples throughout

## Color Scheme Implementation

- Updated logging.js with brand colors
- Mint green for status messages
- Deep brown on salmon for warnings
- Ready for browser UI implementation

## Philosophy

Documentation reflects Secretariat's core values:
- Privacy first
- Discovery over SEO
- Serendipity and exploration
- Transparency
- Community-driven

## Credits

All documentation properly credits Brave Software and Chromium project
while establishing Secretariat as a distinct fork with unique vision.

---

Ready for Discovery Engine component creation (next phase).
This commit creates the foundational structure for the Secretariat Discovery
Engine, including C++ component templates, build configuration, and comprehensive
implementation guide.

## Discovery Engine Templates Created

### Core Component Files
- BUILD.gn: GN build configuration for Discovery Engine
- discovery_search_service.h/cc: Main service interface and implementation
- discovery_profile.h: Complete data structures for profiles and results

### Data Structures

**DiscoveryProfile:**
- Source mix percentages (Official, Hobbyist, Academic, etc.)
- Freshness preferences
- Language and geographic filters
- Blocked/favorite sites
- Discovery modes (Balanced, Deep Dive, Serendipity, Focused, Community)

**SearchResult:**
- URL, title, snippet
- Source classification
- Authority and authenticity scores
- Metadata (domain, language, date, word count)
- Backend tracking

### Architecture

**Main Components (to be implemented):**
1. discovery_profile/: Profile management system
2. search_backend/: Backend integrations (DuckDuckGo, SearXNG, custom index)
3. result_mixer/: Result mixing and ranking algorithm
4. search_archive/: Search history and archive system

### Implementation Guide

Created comprehensive IMPLEMENTATION_GUIDE.md with:
- Step-by-step implementation instructions
- Code examples for each component
- Database schemas for search archives
- Browser integration steps
- WebUI registration
- Address bar integration
- Testing strategies
- Performance targets
- Privacy checklist

### Build System

GN build configuration includes:
- Main discovery_search source set
- Unit test source set
- Browser test source set
- Dependencies on Chromium base libraries

### Key Features Supported

1. **Multiple Source Types**: Official, Popular, Hobbyist, Academic, Community, Video, Social
2. **Discovery Modes**: 5 preset modes for different search intents
3. **Profile System**: User-customizable source mixing
4. **Search Archives**: SQLite-based search history
5. **Backend Agnostic**: Support for multiple search backends
6. **Privacy First**: No tracking, local-only profiles

## Linux-First Implementation

All templates and guides focus on Linux development:
- Ubuntu/Debian as primary platform
- Linux-specific code examples
- Build instructions for Linux

## Next Steps

After `npm run init` completes:
1. Copy templates to src/brave/components/discovery_search/
2. Implement DiscoveryProfile serialization
3. Implement ProfileManager CRUD operations
4. Create default profiles (Balanced, Deep Dive, etc.)
5. Implement DuckDuckGo backend
6. Implement result mixer algorithm
7. Create WebUI interface
8. Integrate with address bar

## Technical Details

**Language**: C++ (Chromium style)
**Build System**: GN (Google's build tool)
**Dependencies**: Chromium base, network, SQL, prefs
**Testing**: GTest for unit tests, browser tests for integration

## Color Scheme Integration

Ready to use Secretariat color scheme:
- Mint Green (#98D8C8) for UI elements
- Deep Brown (#3E2723) for text
- Cream and Salmon for accents

---

This is the foundation for Secretariat's revolutionary Discovery Engine.
The templates are ready to be populated with actual implementation once
the brave-core codebase is initialized.
- package-lock.json: Updated after npm install
- init.log: Log of brave-core clone initialization (in progress)

Note: Build initialization (npm run init) is currently in progress.
The brave-core repository is being cloned from GitHub.
@ghost ghost self-requested a review as a code owner November 4, 2025 15:57
@ghost ghost closed this Nov 4, 2025
@ghost ghost deleted the claude/secretariat-browser-setup-011CUkVRjNiwJsS8wunEchAs branch November 4, 2025 16:03
This pull request was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant