Skip to content

Privitty/privitty-desktop

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7,310 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

code style: prettier

Privitty Desktop

Desktop application for Privitty — take control of your shared data with guaranteed encryption and revocable access.

Editions

Electron :electron: Tauri Browser 🦊🧭🏐
Default application. Based on Electron. Used for production builds and distribution. WIP client using Tauri (modern alternative to Electron: less disk/RAM, better performance). Experimental version with webserver and web UI. For developers and automated testing.
Project Folder
Build & Release
Project Folder Project Folder

Documentation Links

For Users

For Developers

Table of Contents

Click to expand

Install

Installers and builds are produced via CI or locally; see PRIVITTY_BUILD.md for build and release instructions. Platform-specific notes are below.

Linux

  • From source: See From Source and PRIVITTY_BUILD.md.
  • Distribution packages (Flatpak, AUR, etc.) may be available separately; check Privitty documentation or releases.

macOS

  • DMG: Use the .dmg from releases (or your build output). Open and drag Privitty to Applications.
  • Homebrew: If a cask is published, brew install --cask privitty-chat.

Windows

  • Installers are built via GitHub Actions or locally; see PRIVITTY_BUILD.md. Download the installer from releases when available.

From Source

⚠ Primarily for development. This does not install Privitty system-wide. For end users, prefer official installers when available.

# Clone the repository
git clone https://github.com/Privitty/privitty-desktop.git
cd privitty-desktop

# Install pnpm (if not already installed)
npm i -g pnpm

# Install dependencies
pnpm install

# Build the Electron app (first time or after code changes)
pnpm -w build:electron

# Run the application
pnpm -w start:electron

The -w flag runs the command at the workspace root; you can run it from any folder in the repo.

For details on building installers (DMG, Windows, Linux) and signing, see PRIVITTY_BUILD.md. For working with a local core/RPC server, see docs/UPDATE_CORE.md.

Troubleshooting

  • The app is built on top of a messaging core and the Privitty security layer. Dependencies and setup are described in PRIVITTY_BUILD.md and docs/UPDATE_CORE.md.
  • Use Node.js 20.0.0 or newer.
  • If you hit build or runtime errors, check the docs above or open an issue in this repository.

Configuration and Databases

Configuration and account databases use application-config's default paths. Each account is represented by a SQLite database file.

How to Contribute

Logging

Open the log folder and current log file from View → Developer in the app. For how logging works, see docs/LOGGING.md.

License

Licensed under GPL-3.0-or-later. See the LICENSE file for details.

Copyright © Privitty contributors.

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.

Building for Production Vs Development:

At time we might need both Production and Development build to run in parallel, unless we segregate their data, else we might break one another. Therefore for production it create Privitty data directory where as for development it creates Privitty-test, this can be achieved using runtime option.

For Production:

pnpm -w dev:electron

For Development

pnpm -w build:electron && pnpm --filter=@deltachat-desktop/target-electron exec electron . --disable-http-cache

Build DMG for macOS

cd /Users/milinddeore/PROJECTS/delta/privitty-desktop
pnpm -w build:electron
cd /Users/milinddeore/PROJECTS/delta/privitty-desktop/packages/target-electron
export CSC_IDENTITY_AUTO_DISCOVERY=false
pnpm pack:generate_config
pnpm pack:patch-node-modules
rm -rf dist
# arm64
electron-builder --config ./electron-builder.json5 --mac dmg --arm64 --publish never
# OR x86_64
electron-builder --config ./electron-builder.json5 --mac dmg --x64 --publish never
# OR universal
electron-builder --config ./electron-builder.json5 --mac dmg --universal --publish never

About

Decentralized private messenger with chat-shared tools and games for Desktop

Resources

License

Contributing

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors