Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/cabal-club/cabal-desktop
Desktop client for Cabal, the p2p/decentralized/local-first chat platform.
https://github.com/cabal-club/cabal-desktop
chat desktop distributed instant-messaging p2p slack
Last synced: about 11 hours ago
JSON representation
Desktop client for Cabal, the p2p/decentralized/local-first chat platform.
- Host: GitHub
- URL: https://github.com/cabal-club/cabal-desktop
- Owner: cabal-club
- License: agpl-3.0
- Created: 2018-05-16T17:06:14.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2024-02-21T22:18:12.000Z (11 months ago)
- Last Synced: 2024-10-29T18:47:56.579Z (2 months ago)
- Topics: chat, desktop, distributed, instant-messaging, p2p, slack
- Language: JavaScript
- Homepage: https://cabal.chat
- Size: 25.4 MB
- Stars: 849
- Watchers: 35
- Forks: 78
- Open Issues: 72
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
- awesome-starred - cabal-club/cabal-desktop - Desktop client for Cabal, the p2p/decentralized/local-first chat platform. (p2p)
README
# Cabal Desktop
> Desktop client for cabal, the p2p/decentralized/offline-first chat platform.
## 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](https://gist.github.com/cryptix/9dc8806fe44f266d47f550b23b703ff8) 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](https://www.electron.build/multi-platform-build#docker):
```
$ ./bin/build-multi
```## How to Contribute
### Formatting Rules
This repository is formatted with [StandardJS](https://standardjs.com/) (there is a [vscode](https://marketplace.visualstudio.com/items?itemName=chenxsan.vscode-standardjs) plugin).