About
Vio is a modern desktop web browser written with Electron. It uses the Chromium engine to render the web and Node.js to talk to your operating system, and it wraps both in a small, clean interface that stays out of your way.
The goal is simple: a browser that opens fast, looks calm and does not bury the page you are reading under toolbars and clutter.
Fast and light
A minimal interface built for smooth, responsive browsing.
Full navigation control
Tabs, back and forward history, and a proper address bar.
Windows
Built for Windows through Electron.
Minimalist design
No clutter, so your attention stays on the content.
Open source
MIT licensed. Read it, fork it, change it.
Localization-ready
The repository includes translation audit files for interface strings.
For users
Download
Prebuilt installers will be published on the Releases page as soon as the first packaged version is ready.
Download for Windows All releases
Until then you can run Vio from source in a couple of minutes. You only need two free tools:
| Tool | What it is for | Download |
|---|---|---|
| Node.js (LTS) | Runs and installs the app | nodejs.org/en/download |
| Git | Downloads the source code | git-scm.com/downloads |
Run Vio from source
git clone https://github.com/Schnnitter/Vio-browser.git cd Vio-browser npm install npm start
That is all. The first npm install downloads Electron, so it can take a little while.
You can also skip Git and download the code as a ZIP: Download ZIP. Unpack it, open a terminal in the folder and run the last two commands.
Supported system
Vio runs on Windows. The exact list of supported versions is maintained by the Electron team, see Electron platform support.
Troubleshooting
npm install fails while building a native module. Vio uses better-sqlite3, which is a native module. If no prebuilt binary matches your system, npm compiles it locally and needs a C++ toolchain.
| System | What to install |
|---|---|
| Windows | Visual Studio Build Tools with the C++ workload, and Python |
The window does not open. Run npm start from a terminal and read the output. Error messages there are the fastest way to find the cause, and they are exactly what we need in a bug report.
Found a bug or have an idea? Open an issue and describe what happened, what you expected and your operating system.
For developers
Prerequisites
| Requirement | Notes | Link |
|---|---|---|
| Node.js | Current LTS release recommended | nodejs.org |
| npm | Ships with Node.js | npmjs.com |
| Git | Any recent version | git-scm.com |
| C++ toolchain | Only if a native module has to be compiled | see Troubleshooting above |
| Editor | Any editor works, Visual Studio Code is a good default | code.visualstudio.com |
Quick start
git clone https://github.com/Schnnitter/Vio-browser.git cd Vio-browser npm install npm start
Scripts
| Command | What it does |
|---|---|
npm start | Launches the browser through scripts/launch.js |
npm run check | Runs the project checks in tools/check.js |
npm run icon | Regenerates the application icon through tools/make-icon.js |
Project structure
Vio-browser/ ├── main.js Electron main process: windows, app lifecycle, system access ├── preload.js Secure bridge between the main process and the interface ├── index.html Browser interface markup ├── styles.css Browser interface styling ├── scripts/ Launcher and helper scripts ├── i18n-*.json Translation audit reports for interface strings ├── package.json Dependencies and npm scripts └── LICENSE MIT license
How it fits together
Like every Electron app, Vio is split into processes that talk to each other through well-defined channels.
Main process · Node.js ↔ IPC preload.js
Preload bridge ↔ contextBridge index.html + styles.css
Interface · Chromium
local data · interface → renders Web pages
Chromium engine
If you are new to the model, the official guides explain it well: Process Model, Context Isolation and Inter-Process Communication.
Tech stack
What Vio is built on and what it ships with.
Runtime dependencies from package.json
| Package | What it is | Link |
|---|---|---|
| electron | Desktop shell: Chromium plus Node.js in one runtime | electronjs.org |
| better-sqlite3 | Fast synchronous SQLite driver for local storage | GitHub |
| @mozilla/readability | The article extraction library behind Firefox Reader View | GitHub |
| @xenova/transformers | Run machine learning models directly in JavaScript | GitHub |
| @heyputer/puter.js | Client library for the Puter cloud platform | GitHub |
Building installers
Packaging is not configured in the repository yet. When you are ready to ship installers, the two common options are:
| Tool | Best for | Link |
|---|---|---|
| electron-builder | Quick setup, installers and auto-update | electron.build |
| Electron Forge | Official all-in-one toolchain from the Electron team | electronforge.io |
Remember that native modules such as better-sqlite3 must be built against Electron's own Node.js version, not the one installed on your machine. Both tools above can handle this step for you.
Useful Electron links
Contributing
Contributions of every size are welcome, from a typo in the interface to a new feature.
git checkout -b my-changenpm run check.For larger changes, please open an issue first so we can talk about the idea before you spend time on it.
Acknowledgements
Vio stands on the shoulders of excellent open source projects: Electron, Chromium, Node.js, Readability, Transformers.js, better-sqlite3 and Puter. Thank you to everyone who builds and maintains them.
License
Vio Browser is released under the MIT License.