Encrypt your posts & chats on You-Know-Where. Allow only your friends to decrypt.
For general introductions, see Maskbook.com.
/_ I thought what I'd do was, I'd pretend I was one of those deaf-mutes. _/
- Maskbook on Chrome Web Store
- Maskbook on Firefox Addon Store (Works on Firefox for Android too!)
- (Beta!) Maskbook for iOS
- (Beta!) Maskbook for Android
Help us by donating us:
- Bitcoin:
3PRrXj1HTXDc4j9SCQZ6hovpa74iimqtgX - Ethereum:
0xD71c7150962fd484a4291a193c85426Df9EaABbB - Gitcoin (All erc20): Maskbook
- License: GNU AGPL v3
- Code Style: Use prettier
- Git flow enabled,
masteras the latest branch,releasedas the stable branch - Use Conventional Commits since 1.4.0
- Crypto: We're using Elliptic Curve Cryptography (ECC) of the SECP256-k1 parameters for secret sharing and AES-GCM for encryption
- Data transfer between users: We're using gun.js
yarn install
yarn start:firefoxruns extension in a new firefox session.yarn start:androidruns extension in a usb connected android device.yarn startruns extension in other browsers, manually loading required. This plugin may help you to reload extension quicker.yarn storybookto start StoryBook. Used for UI only developing.yarn buildbuild a production version. Output files in./build/
- If branch name contains
full, CI will build for all targets - If branch name contains
ios, CI will build for targetiOS - If branch name contains
androidorgecko, CI will build for targetfirefoxgecko - For any other branches, CI will build for target
basechromiumfirefox
@holoflows/kit- A toolkit for extension developinganchorme- Use it to detect links in the textelliptic- A crypto library, we use it to encrypt and decryptgun- A decentralized graph database we use it to sync user's shared crypto keypvtsutilsandtiny-secp256k1- A crypto library, we use it to zip and unzip SECP256k1 keys but not using it to encrypt/decryptwebcrypto-liner- A wrapper library, it wrapellipticinto WebCrypto API
- ./public - Resource file
- ./src/components - UI Components
- ./src/crypto - Crypto related (Note, in "alpha" version, the bigger number means the older version, our first payload version is alpha-42, and the latest version in July 1 2019 is alpha-40)
- ./src/database - How we store data.
- ./type.ts - Type definition for Identifier (used everywhere!)
- ./{avatar,group,people,post}.ts - How we store these data in database
- ./helpers - Helper methods for Services to use database easier
- ./migrate - Migrate old database to new one.
- ./src/utils - Utils
- ./components - Some general React Components
- ./hooks - Some general React hooks
- ./jss - (this folder is MIT Licensed) Custom Renderer that let JSS render styles into ShadowRoot
- ./type-transform - Transform data types between each other
- ./src/extension
- ./background-script - Scripts that running in the background page as a service
- ./content-script - Script that be injected into the web page
- ./injected-script - Script that will run in the main frame of the injected web page
- ./tests - Some tests for Crypto algorithms
- ./stories - Folder for StoryBook
- ./protocols - Some standard definitions of protocols that used in Maskbook
- ./network - How does Maskbook exchange information between users
- ./social-network/ - Maskbook's multiple network support
- ./social-network-provider/ - Maskbook's multiple network support