• Stars
    star
    839
  • Rank 54,313 (Top 2 %)
  • Language
    JavaScript
  • License
    GNU Affero Genera...
  • Created over 6 years ago
  • Updated 8 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Desktop client for Cabal, the p2p/decentralized/local-first chat platform.

Cabal Desktop

Desktop client for cabal, the p2p/decentralized/offline-first chat platform.

Screen Shot 2020-06-05 at 10 29 00 AM

Install

Download the latest release

https://github.com/cabal-club/cabal-desktop/releases/

Build from source

$ git clone https://github.com/cabal-club/cabal-desktop
$ cd cabal-desktop

$ yarn install             # install dependencies
$ yarn start               # start the application

Build under NixOS

This gist contains a nix-shell file for development purposes. It sidesteps the issue of packaging the full package tree as a release into nixpkgs.

Download from AUR

https://aur.archlinux.org/packages/cabal-desktop-git/

Updating MacOS DMG background image

tiffutil -cathidpicheck cabal-desktop-dmg-background.jpg [email protected] -out dmg-background.tiff

Distribute

TravisCI will automatically create and upload the appropriate release packages for you when you're ready to release. Here's the process for distributing production builds.

  1. Draft a new release. Set the “Tag version” to the value of version in your application package.json, and prefix it with v. “Release title” can be anything you want. For example, if your application package.json version is 1.0, your draft’s “Tag version” would be v1.0.

  2. Push some commits. Every CI build will update the artifacts attached to this draft.

  3. Once you are done, create the tag (e.g., git tag v6.0.0) and publish the release (git push --tags && npm publish). GitHub will tag the latest commit for you.

The benefit of this workflow is that it allows you to always have the latest artifacts, and the release can be published once it is ready.

Build for current platform:

$ yarn run dist

build for multiple platforms:

$ ./bin/build-multi

How to Contribute

Formatting Rules

This repository is formatted with StandardJS (there is a vscode plugin).

More Repositories

1

cabal-cli

Terminal client for Cabal, the p2p chat platform.
JavaScript
521
star
2

cabal-core

Core database and replication for cabal.
JavaScript
303
star
3

cabal-mobile

p2p chat in your phone [dev help wanted :)]
JavaScript
146
star
4

cabal-client

interface for writing peer-to-peer chat clients
JavaScript
93
star
5

cable

A lightweight peer-to-peer chat protocol.
60
star
6

message-land

chat on the web and with p2p friends via cabal!
JavaScript
29
star
7

cable.rs

rust implementation of the cable protocol
Rust
28
star
8

cabal-desktop-mini

[deprecated - please try `Cabal Desktop`] a minimalist desktop app for Cabal, the p2p/decentralized/local-first chat platform
JavaScript
25
star
9

cabin

a rustic command-line cabal client using the cable protocol
Rust
19
star
10

cabals

a list of public cabals
17
star
11

cabal-irc

Connect to Cabal using an IRC client.
JavaScript
16
star
12

commons

high level thoughts and issues for the future of cabal
14
star
13

cabal-headless

a simple headless client to make experimenting easier
JavaScript
13
star
14

cabal-bot

Create your own cabal bot
JavaScript
13
star
15

cable.js

library for reading & writing the cable wire format
JavaScript
11
star
16

cabal-club.github.io

cabal website
HTML
9
star
17

matrix-appservice-cabal

A (very) simple cabal-matrix bridge bot
JavaScript
9
star
18

cable-core.js

cable-core is a library powering cable peers in nodejs
JavaScript
8
star
19

cable-client.js

p2p chat client library for the cable wire protocol
JavaScript
8
star
20

cabal-web

a very much work in progress
8
star
21

cabal-ui

a library of React components for Cabal clients
JavaScript
8
star
22

cabal-irc-bridge

a simple message bridge between an irc channel and a cabal
JavaScript
7
star
23

cabal-client-files

Plugin for cabal clients for message file attachments shared via dat
JavaScript
6
star
24

cabal-tools

making debugging cabalsoft more fun
JavaScript
4
star
25

cabal-bot-example

simple example bot for cabal
JavaScript
4
star
26

cable-handshake.ts

TypeScript implementation of the Cable Handshake Protocol.
TypeScript
3
star
27

cabal-URI

spec for cabal URIs (aka cabal keys, or cabal://)
3
star
28

grants

grant applications for cabal
2
star
29

cable-docs

companion docs for understanding the peer-to-peer cable chat protocol
1
star