Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Arashi Browser

Arashi Browser is a Rust desktop application that combines Brave-style privacy decisions with a BrowserOS-inspired assistant workspace and a Servo runtime handoff path when a Servo binary is available.

If you plan to contribute, start with CONTRIBUTING.md. If you are preparing a public push or first GitHub publication, use docs/pushing-to-github.md as the release checklist. If you are publishing binaries on GitHub Releases, use docs/releasing.md.

This build is intentionally grounded in what can be compiled and shipped from this workspace today:

  • a Linux desktop GUI application built in Rust with a redesigned egui shell
  • a runtime switch between the local reader engine and an external Servo executable when configured
  • DuckDuckGo HTML as the default search surface`
  • OpenDNS-backed hostname resolution for reader-mode fetches
  • Brave-style shields powered by Rust adblock rules for blocked navigations and filtered links
  • a BrowserOS-style right-side assistant deck with chat, profile, memory, and tasks tabs
  • local profile capture for name, role, company, and description
  • BrowserOS-inspired core memory and daily notes stored as local markdown files
  • BrowserOS-inspired scheduled tasks with local run history and schedule suggestions
  • reader-style browsing with URL input, history, reload, and external-open support
  • local-first assistant actions for summaries, topics, links, privacy posture, and note saving
  • crypto-free defaults encoded in the Arashi manifest

Workspace Layout

repo-root/
├── Cargo.toml
arashibrowser/
├── Cargo.toml
├── crates/
│   ├── arashi-core/
│   │   └── src/
│   └── arashibrowser/
│       └── src/
└── README.md

Commands

From the repository root, these commands now work directly:

cargo run -p arashibrowser
cargo run -p arashibrowser -- launch --url https://example.com
cargo run -p arashibrowser -- describe
cargo run -p arashibrowser -- manifest --pretty
cargo run -p arashibrowser -- plan --goal "Research a page and save a note"
cargo test -p arashibrowser

From inside the arashibrowser/ folder, the original workspace commands still work:

cargo fmt
cargo test
cargo run -p arashibrowser
cargo run -p arashibrowser -- validate-example-workflow
cargo build --release -p arashibrowser
./scripts/package-binaries.sh

Release Binary

After running the release build, launch the Linux binary with:

./target/release/arashibrowser

The binary produced in this workspace is:

target/release/arashibrowser

Packaged binaries can be generated locally into:

bin/linux-x86_64/arashibrowser
bin/windows-x86_64/arashibrowser.exe

Those files are intentionally ignored in git. For public releases, publish binaries through GitHub Releases or another release channel instead of committing them to the repository.

The Windows artifact is produced with cargo xwin when that toolchain is available on the host.

License

This project is licensed under the MIT License. See LICENSE for the full text.

Product Decisions Encoded Here

  • Privacy-first defaults: local profile storage, local markdown memory and task storage, crypto-free feature policy, no rewards or wallet surface
  • Crypto removed: wallet, token, rewards, web3 onboarding, and similar monetization surface are explicitly disabled
  • Agent-native capabilities: navigation, readable page extraction, summarization, local note capture, profile-aware responses, local memory capture, and scheduled task planning
  • Local-first stance: the assistant and profile flows work locally by default without requiring a remote model provider
  • Search defaults: DuckDuckGo HTML is the default search target for freeform queries
  • DNS defaults: reader-mode requests resolve hosts through OpenDNS instead of the host resolver path
  • Shields defaults: Brave-style Rust adblock rules block known ad and tracker hosts before navigation and filter extracted links in reader mode
  • Servo stance: Arashi launches a configured external Servo binary through ARASHI_SERVO_BINARY, a bundled arashibrowser/bin/linux-x86_64/servo, or servo on PATH

Current UI

  • Brave-inspired dark theme with purple-gray backgrounds and orange accent
  • browser tab bar at the top with new-tab (+), close (×), and Arashi branding
  • compact navigation toolbar with icon buttons (←, →, ⟳, ⌂), address bar with lock icon, shield stats badge, runtime selector, and sidebar toggle
  • Brave-style new-tab dashboard with centered search bar, blocked tracker/link/shield/pages-visited stats cards, quick-access shortcuts, and privacy badges
  • toggleable right-side assistant panel with Chat/Agent mode toggle, provider selector, and tabbed sidebar (Chat, Details, Memory, Tasks)
  • full-width central reader-style page surface for readable text and extracted links
  • modern rounded card frames with subtle dark borders throughout
  • clickable inline links in document view instead of bulky link cards
  • tasks tab for BrowserOS-style scheduled tasks and local run history

Internal Reference Archive

Arashi carries an internal product reference summary at docs/upstream-reference.md so the design rationale survives even after the old Brave, BrowserOS, and Servo sibling folders are removed.

Next Implementation Steps

  1. Point ARASHI_SERVO_BINARY at a built Servo executable, or bundle one under arashibrowser/bin/linux-x86_64/servo, so the runtime switch can launch a real Servo browser process on this machine.
  2. Replace the external Servo handoff with a richer embedded surface when a stable integration path is available.
  3. Add real click and form automation for agent mode.
  4. Persist browsing sessions, tabs, and richer assistant memory.
  5. Expand the shields rule set and add stronger site permission controls in the runtime layer.

About

browser made or rust users privacy like brave with ai agent in it

Resources

Contributing

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages