• Stars
    star
    8,579
  • Rank 4,089 (Top 0.09 %)
  • Language
    Go
  • License
    BSD 3-Clause "New...
  • Created over 9 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

Keybase Go Library, Client, Service, OS X, iOS, Android, Electron

Keybase Build Status Build status

Hi, and welcome to the Keybase client repo. All our client apps (macOS, Windows, Linux, iOS, and Android) are being actively developed in this repository. Please, dig around.

Warnings

We'd love you to read our source code.

But - some of the things in this repo are explorations, and the app you build from source just might not do what it says it's doing. So, if you just want to install Keybase on your computer, you should monitor our releases for macOS, Linux, or Windows.

If you're interested in our Docker image releases, please check out the Docker README.

Sharing

Code Layout

  • go: Core crypto libraries; the Keybase service; the command line client. Learn More
  • shared/{android,ios}: Android and iOS apps developed with React Native.
  • shared/desktop: Desktop application for macOS, Linux, and Windows, made with the Electron framework, sharing React code with react-native.
  • packaging: Scripts for releasing packages across the various platforms.
  • protocol: Defines the protocol for communication for clients to the Keybase services. Uses Avro. Learn More
  • media: Icons, graphics, media for Keybase apps.
  • osx: The macOS Keybase.app, development parallel to an Electron-based application above. Learn More

Problems?

Report any issues with client software on this GitHub issue tracker. Internally, we track our progress using Jira, but all PRs come through GitHub for your review!

If you're having problems with the command line keybase client, take a look at the troubleshooting doc.

If you're having problems with our Website, try the keybase-issues issue tracker.

We check and update both frequently.

License

Most code is released under the New BSD (3 Clause) License. If subdirectories include a different license, that license applies instead.

Development Guidelines

We check all git commits with pre-commit hooks generated via pre-commit.com pre-commit hooks. To enable use of these pre-commit hooks:

  • Install the pre-commit utility. For some common cases:
    • pip install pre-commit
    • brew install pre-commit
  • Remove any existing pre-commit hooks via rm .git/hooks/pre-commit
  • Configure via pre-commit install

Then proceed as normal.

External Contributors

If you forked this repository on GitHub and made a PR, then it'll show up as having failed Jenkins CI. We do not build external PRs because it's a security risk to do so without a review first. If your PR is successfully reviewed by a member of the Keybase team, then we will merge your commits to a branch on our primary fork and build from there.

Cryptography Notice

This distribution includes cryptographic software. The country in which you currently reside may have restrictions on the import, possession, use, and/or re-export to another country, of encryption software. BEFORE using any encryption software, please check your country's laws, regulations and policies concerning the import, possession, or use, and re-export of encryption software, to see if this is permitted. See http://www.wassenaar.org/ for more information.

The U.S. Government Department of Commerce, Bureau of Industry and Security (BIS), has classified this software as Export Commodity Control Number (ECCN) 5D002.C.1, which includes information security software using or performing cryptographic functions with asymmetric algorithms. The form and manner of this distribution makes it eligible for export under the License Exception ENC Technology Software Unrestricted (TSU) exception (see the BIS Export Administration Regulations, Section 740.13) for both object code and source code.

More Repositories

1

kbfs

Keybase Filesystem (KBFS)
Go
1,209
star
2

saltpack

a modern crypto messaging format
Go
980
star
3

keybase-issues

A single repo for managing publicly recognized issues with the keybase client, installer, and website.
902
star
4

go-keychain

Golang keychain package for iOS and macOS
Go
540
star
5

kbpgp

OpenPGP (RFC4880) Implementation in IcedCoffeeScript
JavaScript
530
star
6

triplesec

Triple Security for the browser and Node.js
JavaScript
398
star
7

node-client

CLI for keybase.io written in/for Node.js
CoffeeScript
299
star
8

keybase-bot

exploration with the keybase chat API
TypeScript
262
star
9

bot-sshca

A chat bot that can manage your team's SSH accounts
Go
222
star
10

warpwallet

A brain wallet generator that uses scrypt.
HTML
186
star
11

book-content

Jinja
167
star
12

managed-bots

Keybase managed bots
Go
129
star
13

node-installer

An installer/updater for the node client.
CoffeeScript
117
star
14

pykeybasebot

Python Keybase Bot Library
Python
114
star
15

go-keybase-chat-bot

Official Go Keybase chat bot SDK
Go
109
star
16

proofs

Public Keybase Proof System
CoffeeScript
108
star
17

saltpack-python

A Python implementation of saltpack, mainly for testing. Only partial support for V2.
Python
103
star
18

go-merkle-tree

Go language to build and check keybase's sitewide merkle tree.
Go
101
star
19

go-updater

Update framework (golang)
Go
84
star
20

python-triplesec

A Python port of the triplesec library.
Python
80
star
21

slackbot

Slackbot for Keybase
Go
61
star
22

go-notifier

go-notifier: Cross platform system notifications in go (golang)
Go
56
star
23

go-triplesec

A fork of Fillipo's TripleSec
Go
49
star
24

more-entropy

entropy collection in JavaScript for your node and/or browser apps
CoffeeScript
42
star
25

node-merkle-tree

A JS Merkle Tree implementation
CoffeeScript
40
star
26

python-salsa20

Bindings for the NaCL implementation of Salsa20 and XSalsa20 by D. J. Bernstein
C
31
star
27

pgp-utils

Various crypto utilities for dealing with MACs, Signatures, and PGP message formats.
CoffeeScript
30
star
28

gpg-wrapper

A wrapper around the GPG CLI.
CoffeeScript
23
star
29

python-twofish

Bindings for the Twofish implementation by Niels Ferguson
C
22
star
30

node-nacl

NaCl wrapper; uses `sodium` for the server-side and `tweetnacl-js` for the client
JavaScript
22
star
31

node-saltpack

our standard saltpack implementation in JS
JavaScript
21
star
32

pipeliner

A simplified pipline library, for parallel requests with bounded parallelism
Go
19
star
33

django-keybase-proofs

Reference implementation and drop in library for keybase proof integration
Python
19
star
34

go-kext

A library for accessing kernel extensions on OS X.
Go
18
star
35

dokan-go

Go
18
star
36

libweb

A library for building Web clients for keybase, either in the browser or for testing in node.
CoffeeScript
15
star
37

kbfs-beta

Go
13
star
38

messenger

Description and code for a keybase-powered messenger
CoffeeScript
13
star
39

release

Release tool
Go
11
star
40

hubot-keybase

A Hubot adapter for Keybase bot development
JavaScript
11
star
41

merkle-stellar

Library to read the Keybase Merkle root out of the Stellar blockchain
TypeScript
11
star
42

search

Encrypted search of Keybase data (WIP)
Go
10
star
43

stellarnet

Go
10
star
44

libkeybase-js

An library for processing keybase's signature tree.
CoffeeScript
9
star
45

prove_keybase

ruby on rails gemified plugin for implementing our open proof protocol
Ruby
9
star
46

keybase-bot-serverless

JavaScript
9
star
47

node-lru

Simple JS LRU
TypeScript
8
star
48

node-login

A demo login system
CoffeeScript
8
star
49

node-bitcoyne

Bitcoin library built atop kbpgp
CoffeeScript
8
star
50

blockchain

Read a user's Keybase sigchain out of the Bitcoin Blockchain
JavaScript
7
star
51

keybase.github.io

Blog and announcements
HTML
7
star
52

node-forge-sigchain

A node library to sync and process user sigchains
CoffeeScript
7
star
53

blockchain-tools

A tool to insert our Merkle root into the bitcoin blockchain.
CoffeeScript
6
star
54

jenkins-helpers

Helpers for running Jenkins pipeline scripts
Groovy
6
star
55

ruby-client

CLI for keybase.io written for/in Ruby
Ruby
6
star
56

node-bitcoin

A bitcoin library that's browserify-able, forked from bitcoinaddress.org
JavaScript
6
star
57

go-flip

A way to flip coins with your friends
Go
6
star
58

codesign

directory contents summarizer - will be used for code signing feature
CoffeeScript
6
star
59

colorbase

Example proof service in Clojure - colors for everyone!
Clojure
6
star
60

loopback

A loopback filesystem using bazil.org/fuse
Go
6
star
61

KBShellExt

Windows explorer extension for overlaying sync status icons
C++
6
star
62

node-avdl-compiler

AVDL to Go compiler written in IcedCoffeeScript (node)
CoffeeScript
6
star
63

msgpackzip

A compressed for msgpack data that you can configure to not leak secrets
Go
6
star
64

messenger-inbox-server

Inbox Server for the new messaging protocol
CoffeeScript
5
star
65

node-spotty

Get the TTY device (e.g., /dev/pts/3) of the current node process
CoffeeScript
4
star
66

github-ci-status

Check the current CI status of a repo using GitHub's Statuses API
JavaScript
4
star
67

node-armor-x

A base-X-encoding library suitable for stream processing
CoffeeScript
4
star
68

go-libcmdline

A small library for handing command line flags
Go
3
star
69

homebrew-beta

Ruby
3
star
70

keybase-test-vectors

Go
3
star
71

nullFunctionModule

A module that exports a function that returns an empty object
JavaScript
3
star
72

messenger-core

Shared libraries between the client and servers; constants, etc.
CoffeeScript
3
star
73

node-chunk-stream

base class for chunked node streams
JavaScript
2
star
74

node-acache

CoffeeScript
2
star
75

kbfs-binary-windows

Binaries required for building kbfs on windows
2
star
76

bot-jira

TypeScript
2
star
77

node-base64-finder

Find and match base64 blobs
Makefile
2
star
78

logmux

A simple log muxing service
Go
2
star
79

badnode

Report if the node version we're using is bad.
CoffeeScript
2
star
80

clj-keybase-proofs

Helper Clojure library for integrating Keybase proofs
Clojure
2
star
81

vcr

Go
2
star
82

rsp2json

A small command-line utility to convert a NIST-issued RSP file to JSON.
2
star
83

player

Standalone sigchain player in TypeScript
TypeScript
2
star
84

signencrypt.rs

a Rust test implementation of the Go sign+encrypt attachment format
Rust
2
star
85

react-native-v8

Holder for react-native-v8 aars
2
star
86

debatebot

a bot that hooks people up for interesting discussions
TypeScript
2
star
87

nullModule

A null node module
JavaScript
2
star
88

node-http-server

HTTP Server Base classes for servers, build on express and Node.js
CoffeeScript
2
star
89

node-avdl2json

A nodeJS AVDL-to-JSON compiler
CoffeeScript
2
star
90

p2es

A P2ES implementation over Curve25519 using TweetNaCl
C
2
star
91

js-vendor-desktop

Vendored dependencies for Keybase desktop client
1
star
92

bn

JS Bigint Import
JavaScript
1
star
93

kb-styles

colors and styles for keybase
SCSS
1
star
94

node-bjson-express

Express body parsers for BJSON support
CoffeeScript
1
star
95

node-bzip-deflate

A simple bzip deflator
JavaScript
1
star
96

proofs-test

Proofs for testing and development.
CoffeeScript
1
star
97

webpack-example

webpack example
JavaScript
1
star
98

keybase-git

AUR keybase-git PKGBUILD
Shell
1
star
99

node-path

Getting home can be hard sometimes.
CoffeeScript
1
star
100

go-vendor-test

Go
1
star