Replies (76)

I tried to investigate it when I was choosing one for my first projects (went with Codeberg for now). It was confusing to figure out which git-over-Nostr projects were which and which I should choose, there wasn't much documentation yet, and I wasn't sure where to start. I found enough to follow a few people so I could learn more as I go. I was also considering self-hosting something, and might in the future. It would still be great to set it up at some point, at least as a backup. Always more to learn!
Biggest reason for me is that I already have my agent using GitHub and everything is there. I like to keep it all in one place and I don’t need to do any additional work. That and nostr relays are unstable af
I run my own git server and mirror to GitHub. I also suspect ngit is still buggy as hell but no one mentions it. I'm not going to waste my time with Nostr devs' work anymore.
greenart7c3's avatar
greenart7c3 1 month ago
Not related to ngit but related to gitworkshop.dev Don't know if it's possible but it would be nice to be able to search for the contents of the repo files in the web ui. Sometimes I want to search the code of a repository but I don't know in which file it is
My main problem is the absence of ci/cd pipelines. I'm not sure how this can be solved over nostr. Instances should certainly be paid for.
I have poured the last 3 years of my life into hand-crafting ngit. There are many intergration tests. I have embraced AI in my development flow in the last 8 months so it depends what you mean by vibed. We are still early when it comes to adoption, but the more usage and bug reports I get the more stable it will become.
My apologies. I just assume the worst about anything I see on Nostr these days. I'm glad to hear you've stuck to it for so long. Lots of projects seemingly went off the rails when vibe coding hit, and became more and more a pain to use no matter how many features they add. By vibing I mean letting go of parts of your codebase to let an LLM manage, and losing a detailed understanding of what the actual code is doing. When a project does that, it usually degrades the user experience significantly. Because once the hype wears off, the little bugs you have to deal with every day afterwards grinds you down, and those little bugs are usually the hardest to fix because the developer no longer understands the code that causes them. I have very little faith left, but I'll try out ngit and mirror a few of my repos over.
Thanks, There maybe something we could do on the grasp side for this. You have been using ngit alongside github for a while now for Amber which is great to see! People submit Issues and PRs on both but mainly on Github. You create 100s of PRs for Amber on Github. Why not ngit?
greenart7c3's avatar
greenart7c3 1 month ago
It's just because I was using the claude web interface and didn't configure it to use ngit
I tried using ngit before but had difficulty with relays. One would go down and another was unstable. I don’t want to rely on some little guy rely 😂 not referring to you specifically obviously but generally speaking. I actually want a stable company in charge of infrastructure
There was time when I was running the only 2 grasp serrvers on 2 under-resouced VPSs with bad uptime. As adoption grows I think more professional operators and the redundancy that grasp offers will make it a more solid option than relying on a single centralised entity.
Currently this is not supported but people have raised this as need. Many project that are intended to be open-sourced start out on a private repo until its mature enough to be announced. I do have a plan for this, that involves orivate grasp-endpoints per group using NIP-42 auth, but I want to gauge the demand and how much this is really a blocker for adoption.
Because I use other apps to produce the events and have my own git server. I do use GitWorkshop to peruse my issues and PRs, but I hardly ever get any.
I guess if I had to sum it up, ngit doesn’t really solve anything for me that GitHub doesn’t do well already, and it lacks the established credibility needed for a total switch. Reliability is important but so is ease of use, clarity in who would be responsible in helping should something go down that might result in data loss. This is where I see big corp having an advantage. And for me personally decentralization is not that big of a concern here. Just my honest 2 sats
That's useful feedback. I figured this was one of the main blockers for people but you're the only one to mention it in this thread. solutions to this (self-hosted and paid) are coming pretty soon. I'm using it right now.
I only use github to download apps, and none of the apps I've downloaded had their download links on ngit. I also don't see a point of it other than to grift. Everything I hear about it sounds centralized, like github but on nostr. I'm trying to help us get an actual decentralized github alternative, based on radicle.
Relying on specific project management tools from Github, trying to find alternatives but it's hard to make them priority. Also as stupid as it may sound Github stars are an important adoption metric for a product, but I know one can publish to both. I love the ngit idea and will start using it. (Using Zapstore by the way is a bit different story because it's another output and doesn't modify the day to day workflow)
no worries I just thought there was one. however it might be cool to be able to view local repos, and publish them via a local UI, alongside remote ones. indeed nixos desktop is annoying, don't go down the rabbit hole just for my case :)
Here is a quote from "While a peer-to-peer network without seed nodes is feasible, it is impractical. This is because regular “user” nodes go online and offline all the time, so finding a user from which to download a certain piece of content can be challenging, or even impossible if all users with that content are offline. Therefore, a healthy peer-to-peer network necessitates at least some highly available nodes that participate in the network like regular peers, but seldom go offline. These are called seed nodes."
Btw, I'll apologize for my condescension if you apologize for trying to conflate "I made a project that uses git and git has always been decentralized" with "I made a decentralized github alternative"
Radicle isn't really p2p, that's what cradicle is meant to fix. See Bittorrent and Bitcoin for examples of actual p2p networks, where "seed nodes" are still actual peers.
@DanConwayDev fair point, i have seen a few writers version their long form in git and never look back. onboarding software projects first makes sense, that is where the muscle memory already lives.
I saw your bounties implementation, but I felt it was too tightly-bound to LNURL and gives too much credence to the code creator vs the reviewer, when the biggest costs are in the review. What do you think about ideas in this thread? ie. leaving the payment out of band?
as it stands you can use any git server and not use the nip34 'state' event, but it sort of feels like ngit supports too many different ways of doing things which prevents it from being simple.
the only things holding me back were 1) i realized i needed my own git server ✅(installed self hosted gitlab) and 2) i realized i needed a special relay for GRASP ✅(now supporting pyramid) and 3) now i have them im wondering what exactly will using ngit give me.. (eg. i have not spent the time to figure out why or how users would use it to do things like, submit an issue or patch).
Those requirements were from earlier days of ngit. You dont have to self-host anything as there are public grasp servers you can use or self-host your own. With ngit you have the freedom to switch from self-hosted to hosted and back again with no user disruption. If you have a repo on your self hosted gitlab, a collaborator needs to create an account on your instance - that's friction whereas with ngit, their nostr account can be used.
Nice, yeah that's what I want because I don't have accounts or signups on the gitlab, I just want nostr to be able to comment tag a bot, or .. Somehow use this stuff more professionally to collab Etc. Can you point me at a no nonsense guide for these final steps maybe that will get me there.. When I'm back in action (on vacation rn)
Because I don't know of any great value they would give me. I don't fully trust nostr identity. Not at all sure I want relatively transparent Nostr tracking of all repo interaction either. I run self-hosted forgejo.
Sourcehut as preferred forge. Forgejo for when we have less technical collaborators.
Never came into my software selection these two you mention. But I guess nothing beats sourcehut. Sourcehut is what the Linux Kernel group uses.. Its oriented to email and mailing lisrs.. It does not have pul requests (who needs a pull request? I don't!). I don't leave the terminal (the CLI), and I'm a vim alien... Most highly technical folks have the same habits or similar habits. A browser is a nuisance. And a GUI click click click is a waste of time.... Not sure why the forge would matter... Sourcehut solved it and it is perfect... These transactional systems for collaboration can't solve the problem of low quality collaborators...
c08r4d0r's avatar
c08r4d0r 1 month ago
On shared projects it's often the network effects. My collaborators & I all need to opt out of github at the same time. I want to use ngit more. I am thinking of replicating all my github PRs & issues in ngit so that I can link to the ngit version on github. Ngit was my primary tool for a long time, but now my Clanker takes care of everything and my Clanker tends to push to github despite the fact that I regularly tell it to primarily use ngit. My Clanker has its own laptop without any secrets in it, but amber barely works, so my Clanker bypasses it by creating its own nsec for ngit, which it promptly commits to the repository and publishes along with everything else. Happy to send set my Clanker onto issues/PRs to address these pain points if you want to scope out tasks for others to execute.
I think you misunderstood the flow. You want to 1.make sure it has been really paid, 2. make sure the solution really IS a solution and that can only be said by the owner which you, yes trust here. If its helpful a withdraw-link is generated for the PR-Creator. In the below flow you risk paying non-solutions/bs, cashu or not doesnt mind. image
Also Id love to see it rather being sort of a tipjar than a fixed faucet withdraw link, so that others can chime in on the bounty amount.. 😉 that would be great!
Hey Dan, so I got a grasp server up ... whoop! Small problem though. I am trying to avoid DNS and trying to move to TOR and FIPS, so subdomains are permissioned and problematic. I'm trying to get rid of them. Unfortunately it looks like gitworkshop.dev won't let you add a grasp server like which is my grasp server. Is this just a front end issue, or is there something deeper? From my agent: The issue is that GitWorkshop.dev expects GRASP servers to be at the root of a domain, not at a subpath like /grasp/. The domain validation regex in grasp.ts:26 only accepts plain hostnames: /^([a-z0-9.-]+\.[a-z]{2,})(?::(\d{1,5}))?$/ When you enter https://laantungir.net/grasp, it fails because: The https:// protocol prefix is not matched The /grasp path is not matched