字
字节笔记本
2026年2月22日
Nook - macOS 侧边栏优先的开源浏览器
Nook 是一款专为 macOS 设计的开源浏览器,采用侧边栏优先的设计理念,提供垂直标签页导航,让浏览体验更加自然清爽。该项目由 nook-browser 组织开发维护,使用 Swift 语言编写,遵循 GPL-3.0 开源协议。
项目简介
Nook 是一个全新的 macOS 浏览器项目,其核心理念是"不被 Atlassian 拥有的浏览器"。项目致力于打造一个快速、极简的浏览工具,通过侧边栏优先的设计,让用户专注于内容本身而非浏览器界面。
截至目前,Nook 在 GitHub 上已获得 1.8k+ stars 和 66 forks,社区活跃度良好。
核心特性
- 侧边栏优先导航:采用垂直标签页设计,界面自然清爽,不拥挤
- 高性能:基于现代 macOS API 优化,速度快、内存占用低
- 极简现代 UI:专注于内容展示,减少界面元素干扰
- 隐私模式:支持无痕浏览,保护用户隐私
- 网站搜索:内置站点搜索功能,快速定位内容
- 分屏浏览:支持分屏查看多个标签页
- 快速预览:Peek 功能可快速预览链接内容
技术栈
- Swift:主要开发语言,充分利用 Swift 的现代特性
- SwiftUI:构建现代化的用户界面
- WebKit:底层网页渲染引擎
- Metal Shaders:用于 UI 特效渲染
- @Observable 宏:实现响应式数据流
系统要求
- macOS 15.5 或更高版本
- Xcode(如需从源码构建)
安装指南
方式一:直接下载
从 GitHub Releases 下载最新版本:
bash
# 下载 v1.0.2 版本
curl -L -o Nook-v1.0.2.dmg https://github.com/nook-browser/nook/releases/download/v1.0.2/Nook-v1.0.2.dmg下载完成后,打开 DMG 文件并将 Nook 拖入应用程序文件夹即可。
方式二:从源码构建
bash
# 克隆仓库
git clone https://github.com/nook-browser/Nook.git
# 进入项目目录
cd Nook
# 使用 Xcode 打开项目
open Nook.xcodeproj注意事项:
- 需要在 Signing 中设置个人开发团队才能本地构建
- 部分 Objective-C 库可能与 Intel Mac 存在兼容性问题
- macOS Tahoe (26.0) 以下版本需要删除部分代码
项目架构
Nook 采用基于 Manager 的架构设计:
text
Nook/
├── Nook/
│ ├── Managers/ # 核心业务逻辑和状态管理
│ │ ├── BrowserManager/ # 浏览器状态中央协调器
│ │ ├── TabManager/ # 标签页生命周期管理
│ │ ├── ProfileManager/ # 用户配置和数据隔离
│ │ ├── ExtensionManager/ # 浏览器扩展支持
│ │ ├── HistoryManager/ # 浏览历史记录
│ │ ├── DownloadManager/ # 文件下载处理
│ │ ├── CookieManager/ # Cookie 存储管理
│ │ ├── CacheManager/ # 网页缓存管理
│ │ ├── SettingsManager/ # 用户偏好设置
│ │ └── ...
│ │
│ ├── Models/ # 数据模型和业务实体
│ │ ├── Tab/ # 标签页模型
│ │ ├── Space/ # 工作区组织
│ │ ├── Profile/ # 用户配置数据
│ │ └── ...
│ │
│ ├── Components/ # SwiftUI 视图和 UI 组件
│ │ ├── Browser/ # 主浏览器窗口
│ │ ├── Sidebar/ # 侧边栏导航
│ │ ├── CommandPalette/ # 快捷操作界面
│ │ ├── Settings/ # 设置界面
│ │ └── ...
│ │
│ └── Utils/ # 工具函数和辅助类
│
└── assets/ # 静态资源和素材架构特点
- Managers:处理业务逻辑,协调应用各部分
- Models:使用 Swift 的
@Observable宏表示数据和状态 - Components:SwiftUI 视图,基于模型变化自动更新
- BrowserManager:作为中央协调器,连接所有管理器
使用场景
场景一:日常浏览
Nook 的侧边栏设计特别适合需要同时打开多个标签页的用户。垂直标签页可以显示更多标题文字,方便快速识别和切换。
场景二:开发者使用
对于开发者而言,Nook 的分屏功能可以同时查看文档和代码示例,提高工作效率。内置的开发者工具和扩展支持也满足了开发调试需求。
场景三:隐私浏览
Nook 提供隐私模式,不保存浏览历史、Cookie 和表单数据,适合在公共设备或需要保护隐私的场景使用。
开发参与
Nook 是一个开源项目,欢迎社区贡献:
- Discord 社区:https://discord.gg/J3XfPvg7Fs
- GitHub Issues:报告问题或提出功能建议
- Pull Requests:提交代码贡献
项目使用 Git Flow 工作流,main 分支为稳定版本,dev 分支为开发版本。
许可证
除 Nook/ThirdParty 目录下的第三方库外,所有代码均采用 GPL-3.0 License。第三方代码按各自文件夹中的许可证条款授权。
相关链接
- GitHub 仓库:https://github.com/nook-browser/Nook
- 下载页面:https://github.com/nook-browser/nook/releases
- DeepWiki 文档:https://deepwiki.com/nook-browser/Nook
- Discord 社区:https://discord.gg/J3XfPvg7Fs
分享: