Tangled, a Git collaboration platform built on atproto

mjbellantoni | 295 points

This is a really cool project and I’ve been following it for awhile. I’m also keen on breaking up the code forges monopolies.

I’ve been dipping my toes into this space mainly because I think code forges as they exist are trying to solve multiple problems at the same time. I think there’s value in splitting this functionality up into discrete services.

For example, most forges: host your git repo, web view, collab tool, ci/cd pipeline, and task management.

I don’t see why these necessarily need to be bundled together.

For example, as long as we are comfortable not having direct access to the git repo, we can have a purely static web viewer for git: https://pgit.pico.sh

For collab, as long as we are comfortable sharing patchsets and reviewing locally, we can have a collab server that doesn’t need a git repo in order to function: https://pr.pico.sh

Then self hosting your own bare git repo on a VPS is trivial.

Git is already decentralized, centralizing it because all the other services require it is the anti pattern

qudat | 17 hours ago

Hey HN, co-founder of Tangled here!

We recently shipped a change to switch out our OAuth library—which introduced a regression, preventing new users from being added to the default knot and spindle (the git hosting server & CI runner). We just discovered this and pushed a fix—please log out and log back in again and you should be able to create repositories!

Otherwise, happy to answer any questions!

icy | 12 hours ago

I'm increasingly becoming convinced that atproto is pointless. Federation is good, but this idea of implementing "take everything with you" at the protocol level is unnecessarily complicated and centralizing. With Bluesky it might make a little more sense, but with Git? So many better, easier options here. Archive your repo and a) learn how to the do the real decentralized thing OR b) make your own centralized thing OR c) just move to Gitlab or similar.

"Take everything with you" is just downstream from "find or be a trustworthy node."

jrm4 | 2 hours ago

Learned recently about their support for Jujutsu at JJ Con last week: https://blog.tangled.org/stacking

jolux | 20 hours ago

Github is no longer a trusted nor a reliable platform. Moving at least the oss stack to atproto (or any other open network) is an excellent way to safeguard it against Big Tech, Government censorship etc. Love to see this.

pm90 | 10 hours ago

I was in the first ~100 users to sign up for tangled after seeing that they were roadmapping stacked patch style pull request review and being generally impressed with how quickly they were building and shipping features all off the excitement from a budding community in the world of atproto. I am very excited to see where this goes and how they continue shipping.

There are a lot of opportunities here that could be levered to offer much better experiences and fundamental control and long term viability if they continue to execute this way.

rhgraysonii | 13 hours ago

I really like the idea of more decentralized git collaboration. What do people think are the biggest blockers to adoption in this space? Having to run a server or manage some kind of private keys? Is it purely network effect?

nickmonad | 21 hours ago

I'm reminded of Brett Victor and his tangle library (2013).

https://worrydream.com/Tangle/

childintime | an hour ago

I was pleased to see that this has CI pipeline support, but am saddened to see that it looks roughly GitHub-actions shaped.

I don't see the point in writing a sequence of serial steps in YAML. A bash script can already do that. YAML configuration for pipelines should be focused on expressing the dependencies of a DAG, not the serial execution of a program.

Buildkite got this right.

hamandcheese | 5 hours ago

New tomorrow: "Spaghetti", a no-code platform to run your business on, and "Lock-in", a vault to keep all your important data safe.

danpalmer | 11 hours ago

Why not improve upon https://radicle.xyz? It's been running for a while now with promising future. From my naive understanding of running a radicle node, it consumes around 40G of storage for the current network of 5k repos

udev4096 | 2 hours ago

I am obliged to use a public GitHub org for work. Is it “blessed path” to try do the CR part in tangled and sync back to GitHub? I would love to profit from my nice jj habits at the review stage!

scottgg | 13 hours ago

Is there any story for private/enterprise work here? the tangled stacked diff review flow looks very good for work stuff.

rtpg | 20 hours ago

Looks cool but I would really like to have this as a mirror of my local git repo server. If tangled goes down or my internet goes I won't be able to work.

npodbielski | 13 hours ago

since ATProto had a Merkle Tree of its own, I wonder if tangled utillize this internally to interop with git

est | 21 hours ago

Not receiving the signup code on email for tangled.org

rudderdev | 8 hours ago

For stacked diffs, check out https://gitpatch.com/

shayief | 17 hours ago

It doesn’t seem to address this, but I’m curious whether this could be used for trivially relocatable package identifiers.

binary132 | 19 hours ago

I don't really get it. What if anything gets stored in your PDS, versus somewhere else?

skybrian | 19 hours ago

i just hope, this is really a thin service and not again running with javascript and also works over tor..

deknos | 12 hours ago

This is interesting, what does it give that hosted git doesn't?

idiotsecant | 21 hours ago

I'm not touching anything related to atproto with a ten foot pole

Sincere6066 | 6 hours ago