GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - berty/berty: Berty is a secure peer-to-peer messaging app that works with or without internet access, cellular data or trust in the network

BranchesTags
Open more actions menu

Latest commit

 

History

8,471 Commits
8,471 Commits

Folders and files

NameName
Last commit message
Last commit date
.github
.github
 
 
api
api
 
 
berty-bridge-expo
berty-bridge-expo
 
 
config
config
 
 
docs
docs
 
 
go
go
 
 
js
js
 
 
tool
tool
 
 
.codecov.yml
.codecov.yml
 
 
.crowdin.yml
.crowdin.yml
 
 
.dockerignore
.dockerignore
 
 
.editorconfig
.editorconfig
 
 
.gitattributes
.gitattributes
 
 
.gitignore
.gitignore
 
 
.tool-versions
.tool-versions
 
 
COPYRIGHT
COPYRIGHT
 
 
Dockerfile
Dockerfile
 
 
LICENSE-APACHE
LICENSE-APACHE
 
 
LICENSE-MIT
LICENSE-MIT
 
 
Makefile
Makefile
 
 
README.md
README.md
 
 
buf.gen.tag.yaml
buf.gen.tag.yaml
 
 
buf.gen.yaml
buf.gen.yaml
 
 
go.mod
go.mod
 
 
go.sum
go.sum
 
 

Repository files navigation

Berty

Berty is an open, secure, offline-first, peer-to-peer and zero trust messaging app

berty.tech discord github twitter

GoDoc GitHub release CodeFactor


TLDR : Install it!

Mobile

To use the latest released version, install it from Google Play or Apple App Store.

To compile and run the mobile application on your device, see berty-bridge-expo/mobile/README.md.

CLI

You can go run or go install the CLI tool located in go/cmd/berty. The two main command line utilities are:

  • berty mini: a CLI messaging app using the Wesh Protocol.
  • berty daemon: a full node manageable through the Wesh Protocol API.

Introduction

Warning: Berty is still under active development and should not yet be used to exchange sensitive data.

Berty is a privacy-first messaging application built on top of the Wesh Protocol.

  • Secure and private :
    • Messages are end-to-end encrypted by default
    • Metadata is kept to a minimum
    • No phone number or email address is required to create an account
    • Built to retain its properties even when used on adversarial networks
  • Censorship-resilient
    • Decentralized, distributed, peer-to-peer and serverless
    • No internet connection is required, thanks to BLE technology and mDNS.
  • Open :
    • Free forever and open-source

Berty is designed to be used as a communication tool when all other traditional messengers fail. Berty Messenger serves the following use cases:

  • When you need to share sensitive information over untrusted networks, for instance while traveling
  • If you want to communicate anonymously
  • If you want full control over your data and thus don't want to rely on third-party servers
  • In countries that actively monitor and temper with their network, restricting its use and censoring some of its contents
  • In areas with weak or no connection at all

Berty is currently developed by Berty Technologies, a French nonprofit organization.

Note: this project is led by a small team made of humans, who make mistakes. Please do not hesitate to point out bugs or missing features. See the contribute section below.

We cannot promise we will offer you the best application, but we dedicate ourselves to doing our best to create a great one.

The philosophy behind Berty

We want to contribute to a world where free and secure communications are common and fear of censorship or surveillance are not.

We believe that open-source is more secure, as anyone can examine the code and improve it: this is why we rely on and build open and free software.

As the founding team, our ultimate goal is to progressively relinquish control over Berty and to make it become a truly global community project.

More info on berty/community.

Development Status

The current Berty implementation is using the Wesh Protocol, which means the encryption technique is safe, and it works as a peer-to-peer app!

Alas, Berty has not yet been hardened, so please avoid using it on devices with weak sandboxes, such as unpatchable devices that use old Android versions.

The current Wesh Protocol is partially implemented.

The API will continue to evolve in the near future. As such, we cannot yet guarantee none-breaking changes, or any kind of API stability. Be prepared for a rough ride if you start rolling the Wesh Protocol in your application.

Subscribe to our newsletter if you wish to be notified about the latest features and releases.

Note: The repositories are being opened progressively, and there will be additional modifications and updates soon.

Under the hood

Berty Messenger High Level Architecture

Wesh Protocol

go.dev reference Code coverage

The Wesh Protocol comes with a generic, but full-featured SDK allowing developers to write peer-to-peer applications. You can just focus on high-level features for your app, we will take care of the rest (encryption, identities, network routing, group management, account management, device management, application lifecycle).

The main concept of the Wesh Protocol is called the "group", a virtual place where multiple devices can share messages and metadata using OrbitDB, which itself relies on the InterPlanetary File System (IPFS)

Get it:

git clone https://github.com/berty/berty

The Berty Messenger

Code coverage

The Berty Messenger, or simply Berty, is a messaging application written in React Native, that uses the Wesh Protocol through gomobile-ipfs, which, in turns, is using gomobile.

Main items in the repo

  • ./go: Where all the Golang code lies.
    • ./go/framework/bertybridge: The gomobile entrypoint.
    • ./go/cmd/berty: The main Berty CLI:
      • berty daemon: Runs the whole Wesh Protocol instance.
      • berty mini: Simple CLI messenger application using Wesh Protocol.
    • ./go/cmd/rdvp: A Rendez-Vous Point server.
    • ./go/cmd/welcomebot: An onboarding bot used during the early phase.
    • ./go/cmd/testbot: A bot used by integration tests and developers.
  • ./berty-bridge-expo: The Expo-based mobile app (Javascript/Typescript) and its native bridge — the current home of the Berty Messenger application.
  • ./js: Deprecated, superseded by ./berty-bridge-expo and to be removed soon. The original React Native Berty Messenger application.
  • ./docs: Mostly auto-generated documentation.

Contributing

Contribute to Berty

We welcome contributions! Your input is deeply appreciated and extremely valuable to us. We thank you in advance for it.

There is no small feat: everyone is encouraged to do what they can to help, based on their ability and interest.

There are plenty of ways to get involved and to help our community, which can roughly be divided in two distinct parts: everything that is related to the code and everything that is not.

To put it simply:

  • Code-related = GitHub
  • Not code-related = Open a task

Everything about contribution is summed up here: CONTRIBUTING.MD

Stargazers over time

Star History Chart

Other resources

  • Official website: https://berty.tech
  • Assets: https://assets.berty.tech/
  • Application assets & mockups: https://assets.berty.tech/categories/app__v2.4/

Contact

For a direct contact, see our contact page of our website. Alternatively, take a look at our community repository.

Licensing

© 2018-2023 Berty Technologies

Licensed under the Apache License, Version 2.0 (LICENSE-APACHE) or the MIT license (LICENSE-MIT), at your discretion. See the COPYRIGHT file for more details.

About

Berty is a secure peer-to-peer messaging app that works with or without internet access, cellular data or trust in the network

berty.tech

Topics

androidbertycensorshipcrdtcybersecurityencryptiongomobileiosipfslibp2pmessagingmobile-appmonorepooffline-firstorbitdbp2pprivacyreact-nativesurveillance

Resources

Readme

Contributing

Contributing
Activity
Custom properties

Stars

9.4k stars

Watchers

121 watching

Forks

514 forks
Report repository

Releases

Packages

Used by

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.