• Stars
    star
    500
  • Rank 87,542 (Top 2 %)
  • Language
    TypeScript
  • License
    MIT License
  • Created almost 8 years ago
  • Updated about 1 year ago

Reviews

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

Repository Details

A browser extension for navigating burgeoning Twitter conversations

NOTE: Post-acquisition, Twitter started making life difficult for applications like Treeverse that access twitter data. Since I don’t have time to play cat-and-mouse games with a hostile platform, I'm retiring Treeverse. The codebase of Treeverse dates back to a bookmarklet I wrote in 2014. It’s been a pleasure to see something started as a curiosity project picked up by the OSINT and archivist communities. Thanks to everyone who shared their enthusiasm over the years.

NetflixOSS Lifecycle

Treeverse Icon Treeverse

Treeverse is a tool for visualizing and navigating Twitter conversation threads.

It is available as a browser extension for Chrome and Firefox.

Installation

Chrome Users:

Download Treeverse for Chrome

Firefox Users:

Download Treeverse for Firefox

Introduction

After installing Treeverse for your browser, open Twitter and click on the tweet that you would like to visualize the conversation of (or try this one.)

If you’re using Chrome, the icon for Treeverse should turn from grey to blue in your browser. Click it to enter Treeverse.

Opening Treeverse in Chrome

If you're using Firefox, the icon will be hidden until you open a tweet, and then it will appear in the address bar.

Opening Treeverse in Firefox

Exploring the Conversation

Screenshot of Treeverse.

Conversations are visualized as a tree. Each box is an individual tweet, and an line between two boxes indicates that the lower one is a reply to the upper one. The color of the line indicates the time duration between the two tweets (red is faster, blue is slower.)

As you hover over nodes, the reply-chain preceeding that tweet appears on the right-side pane. By clicking a node, you can freeze the UI on that tweet in order to interact with the right-side pane. By clicking anywhere in the tree window, you can un-freeze the tweet and return to the normal hover behavior.

Right pane in action.

Some tweets will appear with a red circle with white ellipses inside them, either overlayed on them or as a separate node. This means that there are more replies to that tweet that haven't been loaded. Double-clicking a node will load additional replies to that tweet.

More tweets indicator.

Privacy

Treeverse runs entirely in your browser. No data is collected or tracked by Treeverse directly when you use or install it. Browser extension installs may be tracked by Google and Mozilla, and the data requests made to Twitter may be tracked by Twitter.

When you create a sharable link, the data is sent to a server so that it can be made available to other users. Access to the shared link server may be tracked to prevent abuse.

Additionally, when Treeverse runs it loads a font hosted by Google Fonts (https://fonts.google.com/). Google may track this download.

Bugs & Contact

Tweet @paulgb or report on GitHub.

Credits

Icon created by Eli Schiff.

Treeverse would not be possible without the excellent d3.js. Styling is powered by Semantic UI.

More Repositories

1

BarbBlock

Chrome extension which blocks requests to sites which have used legal threats to remove themselves from other blacklists.
JavaScript
625
star
2

simplediff

Simple Diff Function implemented in Python, PHP, CoffeeScript, and JavaScript
Python
456
star
3

runipy

Run IPython notebooks as command-line scripts, generate HTML reports
Python
448
star
4

penkit

Tools for pen plotting in Python
Jupyter Notebook
132
star
5

subsample

Randomly sample lines from a csv, tsv, or other line-based data file
Python
121
star
6

gcmap

Draw great-circle maps from large sets of coordinate pairs
Python
73
star
7

wgsl-playground

Rust
55
star
8

crossword-composer

Constraint solver for word games.
Rust
42
star
9

tiny_id

Rust library for generating non-sequential, tightly-packed short IDs.
Rust
36
star
10

haskell_hadoop

Haskell module for streaming hadoop MapReduce jobs
Haskell
35
star
11

wdimtloap

Code accompanying the “what does it mean to listen on a port” blog post.
Python
20
star
12

PenPlots.jl

A simple Julia library for generating SVGs suitable for AxiDraw and similar pen plotters.
Julia
20
star
13

Python-Gale-Shapley

Python (toy) implementation of Gale-Shapley algorithm for the stable marriage problem
Python
18
star
14

nbgraph

Inline, interactive graphs inside jupyter/ipython notebooks
Python
16
star
15

tweetvis

Twitter conversation visualization
CoffeeScript
15
star
16

farevis

Visualization of flight prices
JavaScript
14
star
17

svelte-vis

Svelte
14
star
18

firestore-serde

A Rust serializer/deserializer for Google Cloud Firestore.
Rust
12
star
19

interactive_process

A tiny Rust library for interacting with a running process over `stdio`.
Rust
11
star
20

tube-plots

Code to accompany plotter videos on my YouTube channel
Julia
10
star
21

wgsl-cheat-sheet

Cheat sheet for WGSL syntax for developers coming from GLSL.
9
star
22

python-pattern-matching

Functional pattern matching module for python
Python
6
star
23

tiny-firestore-odm

Rust
5
star
24

vecdraw

Vectorized, GPU-accelerated drawing library in Rust. (experimental)
Rust
5
star
25

sec-data-parser

Rust parser for SEC EDGAR .nc submission container files.
Rust
5
star
26

rhythmless

Vertical Rhythm for LESS
5
star
27

styletransfer-midi

A Keras implementation of Neural Style Transfer with real-time weight updates from a MIDI control surface.
Python
5
star
28

are-we-google-cloud-yet

A listing of Rust crates for use with Google Cloud
4
star
29

bitaesthetics

source for bitaesthetics.com
Jupyter Notebook
3
star
30

flightdata

Tools for extracting flight schedules from various alliances (incomplete and unmaintained)
C
3
star
31

experiments

Rust
2
star
32

tilelife

Implementation of a tiled variant of Conway's Game of Life.
Python
2
star
33

crumb

Track arbitrary metrics across the git commits of a program
Python
2
star
34

webgl2-glyph-atlas

A Rust library for generating a glyph atlas on-the-fly for text rendering to a WebGL2 canvas context.
Rust
2
star
35

webFractal

Web-based fractal explorer (February 2007)
JavaScript
2
star
36

notebooks

Public Jupyter notebooks
Jupyter Notebook
2
star
37

gtfs-gexf

Convert a route map in GTFS (General Transit Feed Specification) to an undirected GEXF (Graph Exchange XML Format) graph
Python
2
star
38

d3class

HTML
1
star
39

sicp-excersises

Scheme
1
star
40

proofgame

Jupyter Notebook
1
star
41

birthmap

Python
1
star
42

jssec-demo

CoffeeScript
1
star
43

settings

Settings files (.vimrc, bash, etc.)
Vim Script
1
star
44

dinesafe-api

API server for dineviz
Python
1
star
45

webgl2-glyph

Rust
1
star
46

cs240

Python
1
star
47

cloudpush

Command-line tool for hosting static sites on Rackspace Cloud Files or other Open Stack Swift services
Python
1
star
48

yelp

Entry for Yelp Kaggle competition
Python
1
star
49

judicial-data

Cleaned dataset of judicial nominations from uscourts.gov.
HTML
1
star
50

between.io

Between is an HTTP debugger in your browser
JavaScript
1
star
51

cumc2010

Slides for my presentation at CUMC 2010
1
star