Notion Electron is an unofficial desktop application for Notion, built using Electron. This project aims to provide a seamless and native-like experience for Notion users on desktop Linux (tested on Fedora 43). Fully functional clients for Notion Calendar and Notion Mail included as dedicated tabs.
Note
🎉 Thank you all for your amazing support! I'm excited to share that we’ve reached 10,000 Monthly Active Users! If you enjoy using Notion Electron, please consider leaving a ⭐ on the repository. It really motivates to continue the work and means a lot!
- Any Distribution
.AppImage - Ubuntu / Debian
.debpackage - Fedora / CentOS / OpenSUSE
.rpmpackage
You could also build an application from source files manually.
Dependencies:
- Node.js (v22 or higher)
- npm (v10 or higher)
Steps:
- Clone the repository:
git clone https://github.com/anechunaev/notion-electron.git /usr/share/notion-electron
- Install dependencies:
npm install
- Build the application:
npm run make
- Install the application:
npm run install-desktop-file
Run program with this flags to enable features:
--hide-on-startup– This flag allows the application to start without opening the main window. It is useful when you add the client to your autostart programs list, since it will launch minimized to the tray.--disable-spellcheck– Disables OS-defined spellcheck.--disable-update-functionality– Disables all update functionality (automatic checks, downloads, and installs). Recommended for sandboxed package formats like nix, where updates are managed by the package manager, regardless of the in-app setting.
Sometimes, for a non-system language, spellcheck may appear not to work correctly because the application is shipped with the default English dictionary only.
This behavior can be adjusted by updating Electron preferences at ~/.config/notion-electron/Preferences. Since Electron cannot reliably download dictionaries in sandboxed environments, you may need to install them manually.
Example of the relevant section in Preferences:
"spellcheck":{"dictionaries":["es-MX"],"dictionary":"es-MX"}Dictionary files should be placed in ~/.config/notion-electron/Dictionaries.
.bdic files can be obtained from the Chromium Hunspell dictionaries repository.
Note that:
- Not all languages/locales are available (e.g.
es-MXmay not be present) - File naming includes version suffixes (e.g.
es-ES-3-0.bdic) - You may need to rename the file to match the expected locale (e.g.
es-ES.bdic)
After downloading a dictionary file (e.g. es-ES-3-0.bdic), place it in the Dictionaries directory and rename it if necessary (e.g. es-ES.bdic).
After installing dictionaries, restart Notion Electron:
pkill -f notion-electronThis is not a complete feature list, but here are some of the key highlights of the application:
- Integrated Notion Tools — Fully functional dedicated tabs for Notion Calendar and Notion Mail within the same application. This approach saves system memory by reusing a single Electron process compared to running separate clients.
- Cross-Distribution Support — Distributed as a universal AppImage, allowing the app to run seamlessly on any Linux distribution, with automatic updates built in.
- Simple Manual Builds — Predefined scripts make it easy to build manually, even on uncommon architectures.
- Ready Out of the Box — Works immediately after installation without the need for extra flags or configuration. At the same time, it remains flexible enough to integrate into custom workflows.
- Quality Assurance — Each release is manually tested on the latest Fedora OS, ensuring higher quality and stability compared to automated repacks.
- Regular Maintenance — Monthly security updates keep all dependent libraries and modules up to date.
- Theme Support — Switch effortlessly between light and dark UI themes.
- Google Login Support — Fully functional Google social login integration.
- Performance Tweaks — Optimized to reduce startup time for faster access.
- Browser-Like Tabs — Tabs behave just like in a web browser: each has its own history, can be reordered, pinned, or even dragged from Notion Electron to your browser.
- Native Notifications — Uses the system’s native notification system for better desktop integration (Notifications for Calendar and Mail are coming).
Contributions are welcome! Please read CONTRIBUTING.md for development setup, architecture rules, code style, and the pull-request process. If you use AI tools to contribute, also read the AI usage policy.
This project is licensed under the MIT License.
Trademark Notice: “Notion” is a trademark owned by its respective rights holder. Notion Electron is an independent, community-driven, open-source application and is not affiliated with, endorsed by, sponsored by, or in any way officially connected to Notion or any related entities.
Project Independence: Notion Electron is an unofficial desktop wrapper designed solely to provide an alternative interface for accessing the Notion web service. It does not modify or redistribute any portion of Notion’s proprietary code or content.
No Warranty, No Liability: This project is provided “as is,” without any warranties, express or implied. Use of Notion Electron is at your own risk. Users remain fully responsible for complying with Notion’s terms of service and all applicable laws.
Non-commercial Use: Notion Electron is free and open source, developed for educational and personal-use purposes. No commercial association or revenue is generated from the use of Notion’s service.