Skip to content

PrivacySafe/privacysafe-platform-electron

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Client-side 3NWeb platform

This repository contains client-side 3NWeb platform. Platform's core talks 3NWeb protocols with servers, does all of crypto, keeps all user's keys, and provides an easy-to-use API for apps that run in 3NWeb platform.

This is a desktop implementation of 3NWeb platform, and it uses Electron. Platform's core runs as a main process, while apps run in renderer processes.

Platform setup notes

Some of the used packages may need local recompilation, like node-fuse-bindings for mounting storage's file systems into native OS, requiring some setup.

Linux

The following kitchen sink is apt-ed in Ubuntu, besides node and deno:

apt-get install -y make gcc gcc-multilib g++ g++-multilib pkg-config build-essential libfuse-dev fuse

Windows

Install:

  • node, minimum version 18.x. In GUI installer check option that installs chocolatery with the whole kitchen sink that also pulls in Visual Studio libraries.
  • git with included MINGW that has bash and other things for reuse of scripts on Windows.
  • deno should be placed into bin folder in Git installation. Then bash from MINGW will see it.
  • Dokany to give FUSE on Windows. Ensure to check installation of files for development, else C headers won't be available.

Ensure that bash is accessible in path. Adding something like C:\Program Files\Git\bin to PATH environment variable will help. Adjust path in admin console with setx path /M ..., else you may have repeating entries, coupled with hard 1024 char limit.

Mac

Usage

To use this repo, you need Node.js, minimum version 18.x.

First run, in a folder for your os, linux, windows or mac:

npm ci

that will restore packages in accordance to package-lock, including development tools like TypeScript. Some post-install scripts are also present, beware on updates of dependencies and just rely on pair of remove-all and npm-ci.

Use npm scripts:

npm run

will show different available tasks.

When you update/change any npm dependencies, remove node_modules and run npm ci to have clean setup. Otherwise you may get non-obvious errors, changes may override patching done by npm's postinstall script(s).

License

Code is provided here under GNU General Public License, version 3.

All API's, available to apps that run in 3NWeb platform, are free for anyone to use, to implement, to do anything with them. We specifically do not subscribe to USA's court's concept that API is copyrightable.

Releases

No releases published

Packages

No packages published