Ecosyste.ms: OpenCollective

An open API service for software projects hosted on Open Collective.

Arbor Chat

Building a sustainable, high-context, user-respecting chat platform.
Collective - Host: opensource - https://opencollective.com/arbor-chat - Website: https://arbor.chat - Code: https://github.com/arborchat

Create LICENSE

github.com/arborchat/muscadine - 8660a2f6f00df5ba379b0d8a8d415acf1303e9e0 authored almost 6 years ago by Christopher Waldon <[email protected]>
Add username flag

github.com/arborchat/muscadine - 379b722ef78908889d2e6d0a060500c0065db3fa authored almost 6 years ago by Chris Waldon <[email protected]>
Use Composer for all message writing

github.com/arborchat/muscadine - 0b280611f7acf2f6e132c9880379ab7d041ca715 authored almost 6 years ago by Chris Waldon <[email protected]>
Introduce composer to write messages

Any code that has to actually write the protocol messages feels like
it should be centralized so...

github.com/arborchat/muscadine - a545842433f712f30da7c62b96b18a99bbc329bd authored almost 6 years ago by Chris Waldon <[email protected]>
Add ESC keybinding to cancel reply

github.com/arborchat/muscadine - c114e30f7e4b339e267a4021e8d1d0113c23e0ff authored almost 6 years ago by Chris Waldon <[email protected]>
Implement ancestry highlighting

This commit highlights each ancestor of the selected message. This exposes
the chat tree in a hi...

github.com/arborchat/muscadine - 2dd27e402ee667a7f89a038225dfd12dab125b39 authored almost 6 years ago by Chris Waldon <[email protected]>
Separate RenderMessage into pure function

Having `RenderMessage` use the internal state of the HistoryState was starting to
feel really gr...

github.com/arborchat/muscadine - b2d4b7199fe33722017435492cbda745aee72828 authored almost 6 years ago by Chris Waldon <[email protected]>
Return to custom hardwrap implementation

This reverts commit e1055cba6b043974043d8e44deb51d965fc4f930.

This was the only way I could fin...

github.com/arborchat/muscadine - 13714651f0b99674469a8b7128af239113ba1a1d authored almost 6 years ago by Chris Waldon <[email protected]>
Stable sort and lengthen history

I noticed that messages sent at nearly the same time would randomly
swap places in the message h...

github.com/arborchat/muscadine - a65ef28c6ecdf32b8fce6d31fd511677be8b75eb authored almost 6 years ago by Chris Waldon <[email protected]>
Enable cursor in composeMode

github.com/arborchat/muscadine - 27d54ca332713285a71fbff05e4d47872b2cf3cc authored almost 6 years ago by Chris Waldon <[email protected]>
Isolate TUI state transition logic

github.com/arborchat/muscadine - 8d50dc71f96d2cc4cf5892dbceb482d1a109c6a6 authored almost 6 years ago by Chris Waldon <[email protected]>
Implement scrolling the message history

It certainly isn't the most intuitive possible design, but I've added the ability to scroll the ...

github.com/arborchat/muscadine - 7023c13658b1264b2f51c886dbe1b771070843b0 authored almost 6 years ago by Chris Waldon <[email protected]>
Refactor keybinding registration

github.com/arborchat/muscadine - 3fedd2dbf5138e4997a02e7ea3df3fd541f63a49 authored almost 6 years ago by Chris Waldon <[email protected]>
Simplify render logic

Previously, I'd written my own line-wrapping algorithm that took
unicode width into account. Tha...

github.com/arborchat/muscadine - e1055cba6b043974043d8e44deb51d965fc4f930 authored almost 6 years ago by Chris Waldon <[email protected]>
Implement sending messages

github.com/arborchat/muscadine - 35692d1f640d63b09bbf48e0f68d90dc725038c6 authored almost 6 years ago by Chris Waldon <[email protected]>
Add edit window when replying

github.com/arborchat/muscadine - e24d0ba42047af4dd720d3614640e70caa87514b authored almost 6 years ago by Chris Waldon <[email protected]>
Prepare for sending replies

I added a boolean to the TUI to track whether we're in "editing mode"
and was gearing up for add...

github.com/arborchat/muscadine - d732572b297d3ce51636d025f961fcc90584fca9 authored almost 6 years ago by Chris Waldon <[email protected]>
Improve default root message

github.com/arborchat/server - f26f7aac1df4335c8bee122607bfa87736856602 authored almost 6 years ago by Chris Waldon <[email protected]>
Fetch recent message history from server automatically

When you join a server, now we automatically query for the root
message and all recent messages....

github.com/arborchat/muscadine - 788006c8501c61fcfb2b4bb9b30e4d668fd7f710 authored almost 6 years ago by Chris Waldon <[email protected]>
Ensure that messages are rendered in time order

github.com/arborchat/muscadine - ff2351eaf74cc02ff674ac256109961a83833b8a authored almost 6 years ago by Chris Waldon <[email protected]>
Implement scrolling up

github.com/arborchat/muscadine - d139a46542955b8d3be51d8099b6847b68a7ea38 authored almost 6 years ago by Chris Waldon <[email protected]>
Add tests for scrolling up

github.com/arborchat/muscadine - d0100836ad5918b529f89dde4f840ba01a8ec0fe authored almost 6 years ago by Chris Waldon <[email protected]>
Implement scrolling down

github.com/arborchat/muscadine - a074fb2d2858fed4d467f31c9904ea2f0fa7b301 authored almost 6 years ago by Chris Waldon <[email protected]>
Improve tui package linting results

github.com/arborchat/muscadine - b99deac0fb4609fc625fb1a2b4029e204fbc7500 authored almost 6 years ago by Chris Waldon <[email protected]>
Improve test code structure

github.com/arborchat/muscadine - 174a4458aa3fd4f4d41da51cf88de0cc9028971b authored almost 6 years ago by Chris Waldon <[email protected]>
Fix logic error in test

The test wasn't attempting to render the correct message when checking
that non-current messages...

github.com/arborchat/muscadine - 3a512b46f5ef61b0994f8e82bb4049f3a242a3a6 authored almost 6 years ago by Chris Waldon <[email protected]>
Ensure that MakeMessageWriter terminates on error

github.com/arborchat/arbor-go - e9bf88af99368d56e46fa6ed68d5529574fc9caf authored almost 6 years ago by Chris Waldon <[email protected]>
Lock dependency versions

github.com/arborchat/arbor-go - eccb6c8c9d32aca494820d90abcf4091474f100f authored almost 6 years ago by Chris Waldon <[email protected]>
Test and fix subtle render problems

In my attempt to highlight the current message correctly, I discovered
that you can crash the re...

github.com/arborchat/muscadine - 6d4464bffe912499f2265b1ddee371f6ef133b8e authored almost 6 years ago by Chris Waldon <[email protected]>
Add failing test for coloring current message

This test checks that the message marked as current is rendered in ANSI
color while any other me...

github.com/arborchat/muscadine - 9b8ac89583351ad5ce8b35f54440ea70a79d047f authored almost 6 years ago by Chris Waldon <[email protected]>
Add failing test for current message

The `HistoryState` will keep track of a current message for use when
the user is scrolling, filt...

github.com/arborchat/muscadine - 1f3928251541d1c2f803185768c86fa93d758493 authored almost 6 years ago by Chris Waldon <[email protected]>
Use right interface on connection

github.com/arborchat/muscadine - ab5ffd64bebe11b64c8d3c4e768492819e9154f3 authored almost 6 years ago by Chris Waldon <[email protected]>
Simplify tests to satisfy the linter.

github.com/arborchat/arbor-go - bc04db555e2991de92dd9337e8c9e000a44db731 authored almost 6 years ago by Chris Waldon <[email protected]>
Hang up when sent invalid JSON

Previously, I was considering discarding invalid bytes, but that's
expensive computationally and...

github.com/arborchat/arbor-go - 52501729bacbf98972f20b8c6f10b82ad5e3db92 authored almost 6 years ago by Chris Waldon <[email protected]>
Prepare tests for bad JSON input

In order to mitigate the DOS possibilities of sending malformed JSON,
I've started building more...

github.com/arborchat/arbor-go - 41184dd69c449b16846b045b55ba92a87ca37ee7 authored almost 6 years ago by Chris Waldon <[email protected]>
Implement proper message rendering with line wrapping

It would be better if the wrapping didn't break up words, but we can work
on that later.

github.com/arborchat/muscadine - b06e7108f07fd903b9197b0fa5999bfc119cecd1 authored almost 6 years ago by Chris Waldon <[email protected]>
Fix line wrapping tests

Accidentally wrote an infinite loop in the original. Also, I didn't handle checking for
trailing...

github.com/arborchat/muscadine - 6c3d3139a48b2b63d6210bca53de40e9ae993bd8 authored almost 6 years ago by Chris Waldon <[email protected]>
Prepare message render tests

`RenderMessage` will handle all of the display properties of showing a message
on the screen. Ri...

github.com/arborchat/muscadine - de18cc40e83a8fbbcfe5d80579a08bc75af2b8db authored almost 6 years ago by Chris Waldon <[email protected]>
Implement HistoryState message height limits on render

Now the `HistoryState` will not attempt to render more messages than the
available number of ter...

github.com/arborchat/muscadine - 49f2e7aeeec2e430e418a20f5f4ea7f923edcba4 authored almost 6 years ago by Chris Waldon <[email protected]>
Tests for HistoryState render dimension awareness

`HistoryState` needs to know the dimensions of the render area in order
to correctly display mes...

github.com/arborchat/muscadine - 8eb86ac6bf198e73ee1c528cdd46d725b4b73ec6 authored almost 6 years ago by Chris Waldon <[email protected]>
Add TravisCI

github.com/arborchat/muscadine - 99baeaeb498da904d8fc47d463fcca9264cba7cd authored almost 6 years ago by Chris Waldon <[email protected]>
Implement HistoryState behavior

Now the `HistoryState` is responsible for how the UI is rendered, though it
currently renders ex...

github.com/arborchat/muscadine - 92770dd6ea6c81cf95cdd789645f7fedf3a7441c authored almost 6 years ago by Chris Waldon <[email protected]>
Add failing tests for HistoryState

I decided to introduce a thing called a `HistoryState` that is responsible
for managing the actu...

github.com/arborchat/muscadine - 642110f0fd09a529a6ac8e0643e114286ca037d6 authored almost 6 years ago by Chris Waldon <[email protected]>
Simple readonly fullscreen client

This implements a single vertical slice of functionality: we can receive
messages from the serve...

github.com/arborchat/muscadine - 7eb03f9e57fee252b07998d0ff42ff23978fae2f authored almost 6 years ago by Chris Waldon <[email protected]>
Take some recommendations from the linter

github.com/arborchat/arbor-go - 879bc2fe3bfcc891f1613b4d050c9f0faac29309 authored almost 6 years ago by Chris Waldon <[email protected]>
Ensure dependencies installed during build

github.com/arborchat/arbor-go - c84577adf5812d0ed747aa5877f0d64db88e886b authored almost 6 years ago by Chris Waldon <[email protected]>
Lint code as well as test

github.com/arborchat/arbor-go - f2b95fc2612abdfecb55e828389ad530f672f300 authored almost 6 years ago by Chris Waldon <[email protected]>
Test ProtocolMessage behavior

github.com/arborchat/arbor-go - 24f340547e7d96f9ac8abb7b51606c1bd7ff17aa authored almost 6 years ago by Chris Waldon <[email protected]>
Update kudzu to library API changes

github.com/arborchat/kudzu - f920a0228611b07c4faaa13197f828d5031c3ac1 authored almost 6 years ago by Chris Waldon <[email protected]>
Update pergola to library API changes

github.com/arborchat/pergola - 3f356ce8147b11d560723a2717d0d16fb2f4d1d1 authored almost 6 years ago by Chris Waldon <[email protected]>
Update server to library API changes

github.com/arborchat/server - 16418b6fe8edee69a6fcc594e71fa70edb2c98b8 authored almost 6 years ago by Chris Waldon <[email protected]>
Ensure JSON has minimum fields for each message type

github.com/arborchat/arbor-go - 95198b028c22d9859f1cf119f0c000dde7becb82 authored almost 6 years ago by Chris Waldon <[email protected]>
Test Get and Add operations on Store

github.com/arborchat/arbor-go - 996f200a7f887233083cdf0be09c85776c3ae7be authored almost 6 years ago by Chris Waldon <[email protected]>
Test NewStore

github.com/arborchat/arbor-go - 1fdec5037702e38786f48e23c5321cb1fd6fdac3 authored almost 6 years ago by Chris Waldon <[email protected]>
Test Reply method

github.com/arborchat/arbor-go - 12440a9cb8d9800da621356b94d9c585f7da2ad2 authored almost 6 years ago by Chris Waldon <[email protected]>
Test AssignID

github.com/arborchat/arbor-go - 2858801693a47d301b4ead7f8aa056d378d6a11f authored almost 6 years ago by Chris Waldon <[email protected]>
Add test for valid calls to TestNewChatMessage

github.com/arborchat/arbor-go - 5a83790c41115cbb3212ec592fcafa8e59f1078d authored almost 6 years ago by Chris Waldon <[email protected]>
Add goreportcard

github.com/arborchat/arbor-go - d5cf0ec15687c4c6123f2afccec49f5e589d81cf authored almost 6 years ago by Chris Waldon <[email protected]>
Fix doc typo

github.com/arborchat/arbor-go - 14cbd6862b8a02dff38e03ed3761e3c3a0fe3b6f authored almost 6 years ago by Chris Waldon <[email protected]>
Rename to clarify Chat vs Protocol Messages

github.com/arborchat/arbor-go - cb9ea5b87d6b5cfbc098a7564f57a5fad1f52d6f authored almost 6 years ago by Chris Waldon <[email protected]>
Update README with build status

github.com/arborchat/arbor-go - bf5582aebc1014a9286e6878e55f2b6abaecebc5 authored almost 6 years ago by Chris Waldon <[email protected]>
Add basic travis config

github.com/arborchat/arbor-go - fbc9053e8fc44620f6ddd1b336378f9ace42e04c authored almost 6 years ago by Chris Waldon <[email protected]>
Document I/O Helpers

github.com/arborchat/arbor-go - dcb336dd3a1f677c8b113082d57b2eb32682b079 authored almost 6 years ago by Chris Waldon <[email protected]>
Document Message struct and functions

github.com/arborchat/arbor-go - de329b4e2058bf3a63ae941e0ef49dd6ff396ea2 authored almost 6 years ago by Chris Waldon <[email protected]>
Document Store

github.com/arborchat/arbor-go - d56f210fd10dbfc9883620fed93528fe88aeeb18 authored almost 6 years ago by Chris Waldon <[email protected]>
Document ArborMessage type and rename constants

github.com/arborchat/arbor-go - cd615d29afbbce4dc8cee311573073d98a4706fd authored almost 6 years ago by Chris Waldon <[email protected]>
Log to a file by default instead of stderr

Noticed an issue where the UI doesn't always redraw when a new message
is recieved. At least, th...

github.com/arborchat/pergola - e9d2043e0895b716213d1ae0ad301585675d4b6f authored almost 6 years ago by Chris Waldon <[email protected]>
Update pergola readme to better describe the client

github.com/arborchat/pergola - ed764a23e5053f4358b89edf66067cee1eb04984 authored almost 6 years ago by Chris Waldon <[email protected]>
Separate pergola into new repo

github.com/arborchat/pergola - dc9d5ea3cd48c534a14916ad06af4342140295fa authored almost 6 years ago by Chris Waldon <[email protected]>
Separate kudzu into its own repo

github.com/arborchat/kudzu - d4cb23c164897a4fdf2f21df2b405e5288749297 authored almost 6 years ago by Chris Waldon <[email protected]>
Separate server into own repo

github.com/arborchat/server - 66ecbdfa782c990213d6f43a2f4d82a8da6c52b0 authored almost 6 years ago by Chris Waldon <[email protected]>
Isolate library code into separate repo

github.com/arborchat/arbor-go - 7005c325ffc7145d50f13177822c1af0e7df74dc authored almost 6 years ago by Chris Waldon <[email protected]>
Merge pull request #1 from arborchat/split-repo

Update README to clarify purpose of this repo

github.com/arborchat/protocol - 57f504084479b50319c139d1e8f9d013c2372a97 authored almost 6 years ago by Christopher Waldon <[email protected]>
Update README to clarify purpose of this repo

github.com/arborchat/protocol - 1c1c75b91afd5213d551942f7a0dfbd7b9de5018 authored almost 6 years ago by Chris Waldon <[email protected]>
Merge pull request #1 from arborchat/docs-update

Update README with correct status and usage

github.com/arborchat/yggdrasil - 043c1d83272ee074b98c2d04702dc0c9e31b2edb authored about 6 years ago by Christopher Waldon <[email protected]>
Merge branch 'master' into docs-update

github.com/arborchat/yggdrasil - aae0beec6aa5d7b01b45c2095701fa50fa3f70fa authored about 6 years ago by Christopher Waldon <[email protected]>
Merge pull request #2 from arborchat/enable-travis

Add basic travis yaml

github.com/arborchat/yggdrasil - 176c74a8d513f2d5e96b2c04349af46a53edb0c5 authored about 6 years ago by Christopher Waldon <[email protected]>
Add basic travis yaml

github.com/arborchat/yggdrasil - a37a30ce121181ecbba31c451dc721014bd78d13 authored about 6 years ago by Chris Waldon <[email protected]>
Update README with correct status and usage

github.com/arborchat/yggdrasil - 67d482611d475491f0341251b5f96692e42f4c69 authored about 6 years ago by Chris Waldon <[email protected]>
Fix buffering problem

Previously, the message handler wouldn't process all of the messages
that we received over the T...

github.com/arborchat/yggdrasil - 09dae2989dfb720d83b2ae0b6167f0094517c1f8 authored about 6 years ago by Christopher Waldon <[email protected]>
Query for recent messages at start

github.com/arborchat/yggdrasil - 084b53a14e39960518a874ed5b349329f4d3ff27 authored about 6 years ago by Christopher Waldon <[email protected]>
Fix reply parsing

github.com/arborchat/yggdrasil - 7ca1c8d7220683bcaec7acaf9d1ea633a61337e5 authored about 6 years ago by Christopher Waldon <[email protected]>
Update README with info on the new dependency

github.com/arborchat/yggdrasil - eb28c4824e3c55aca89650b10be64a30b46c0b60 authored about 6 years ago by Christopher Waldon <[email protected]>
Attempt to label replies; slightly broken

github.com/arborchat/yggdrasil - 28ef71f6a015741b93ce7c3ebca32279dbd75e6b authored about 6 years ago by Christopher Waldon <[email protected]>
Incorporate hashmap implementation

github.com/arborchat/yggdrasil - 128e79cec207db6b8dd28fd1a5da72a1dd90e760 authored about 6 years ago by Christopher Waldon <[email protected]>
Merge commit '4b2d6460205d7a13587780e5a93ce06e1c0331e2' as 'c_hashmap'

github.com/arborchat/yggdrasil - a1586dfb44945bccfb9b32c0c4f5cd956fc4a9bf authored about 6 years ago by Christopher Waldon <[email protected]>
Squashed 'c_hashmap/' content from commit d545811

git-subtree-dir: c_hashmap
git-subtree-split: d545811a739f38a9871b9cd891c31ce48c0002c6

github.com/arborchat/yggdrasil - 4b2d6460205d7a13587780e5a93ce06e1c0331e2 authored about 6 years ago by Christopher Waldon <[email protected]>
Specify server hostname and port as arguments

github.com/arborchat/yggdrasil - 2d178b48d267bbbc911aad37d01ab421f65efb68 authored about 6 years ago by Christopher Waldon <[email protected]>
Allow specifying the listen address to the server

github.com/arborchat/server - 4c220de595e8d0363cfa7675259e9b3e9f7875e1 authored about 6 years ago by Christopher Waldon <[email protected]>
Refactor client

github.com/arborchat/yggdrasil - 2af966a24b3d9df7b47b0ec406599b24b73d95bc authored about 6 years ago by Christopher Waldon <[email protected]>
Reorganize main file

github.com/arborchat/yggdrasil - c27edd72b41d8c9ba6e6b6308e5d4f040b14a3fb authored about 6 years ago by Christopher Waldon <[email protected]>
Let users choose which message to reply to

github.com/arborchat/yggdrasil - 34051c9dc196151c3ceca72f6296b17231fb7aba authored about 6 years ago by Christopher Waldon <[email protected]>
Incorporate history into application

github.com/arborchat/yggdrasil - 37bf8a6fb69ed297ff231fec3e5d3bbe1dd43ff0 authored about 6 years ago by Christopher Waldon <[email protected]>
Begin work on message history

github.com/arborchat/yggdrasil - cbb745c1d3004b2c1d8d1078d005de84ab88f053 authored about 6 years ago by Christopher Waldon <[email protected]>
Implement QUERY serialization

github.com/arborchat/yggdrasil - cf9067e47b518a1e5c0317dd5af2c4fe45be147d authored about 6 years ago by Christopher Waldon <[email protected]>
Add failing tests for marshaling QUERY messages

github.com/arborchat/yggdrasil - 586a859c34546ea430b199ba67909c08d1d53ff5 authored about 6 years ago by Christopher Waldon <[email protected]>
Add new dependency to README

github.com/arborchat/yggdrasil - 93aa19b50a2c482a7a157c61f52a77ce8408d8fa authored about 6 years ago by Christopher Waldon <[email protected]>
Enable sending messages

github.com/arborchat/yggdrasil - 0d98a7902182fbbc9727949f9f823e14104d4027 authored about 6 years ago by Christopher Waldon <[email protected]>
Ensure required fields are present when marshaling

github.com/arborchat/yggdrasil - 4ec96d52b81bea0cbf20c7e3b568809065b10d06 authored about 6 years ago by Christopher Waldon <[email protected]>
Add failing test for NULL required fields

github.com/arborchat/yggdrasil - f75406e0bd92a601fba0da0ab15fd71e57828091 authored about 6 years ago by Christopher Waldon <[email protected]>