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 by:
- Bitcoin:
3PRrXj1HTXDc4j9SCQZ6hovpa74iimqtgX
- Ethereum:
0xD71c7150962fd484a4291a193c85426Df9EaABbB
- License: GNU AGPL v3
- Code Style: Use prettier
- Git flow enabled,
master
as the latest branch,released
as 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:firefox
runs extension in a new firefox session.yarn start:android
runs extension in a usb connected android device.yarn start
runs extension in other browsers, manually loading required. This plugin may help you to reload extension quicker.yarn storybook
to start StoryBook. Used for UI only developing.yarn build
build 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
android
orgecko
, CI will build for targetfirefox
gecko
- For any other branches, CI will build for target
base
chromium
firefox
@holoflows/kit
- A toolkit for extension developinganchorme
- Use it to detect links in the textconstruct-style-sheets-polyfill
- A polyfill for a web apielliptic
- A crypto library, we use it to encrypt and decryptgun
- A decentralized graph database we use it to sync user's shared crypto keypvtsutils
andtiny-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 wrapelliptic
into 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