You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
It's been 3 months since Nostrocket was accepted into OpenSats, so it's time for an update and an explanation of how OpenSats is accelerating the development of Nostrocket and nostrocket's effect on the nostr ecosystem.
Current Status of Nostrocket
In my OpenSats grant proposal, I stated that, "Three months after funding, Nostrocket will be able to serve projects building with nostr". To do this I needed to build a browser-based client for Nostrocket, which is now live at nostrocket.org. In order to make nostrocket work in the browser, new innovations in state management were needed.
Previously, the Golang nostrocket client would validate events and update nostrocket state, and publish this validated state as an event, which could be used by the browser. With the new client, everything is browser first, the golang client is no longer needed. All validatation etc happens directly in the browser. This required changes to the architecture, and the introduction of different types of state: hard state and soft state. An explanation of these can be seen in the NIPs repo.
The following features have been added for projects to use:
problem tracker - so users can create issues that anyone can claim and solve to move a project forward
problem onboarding flow - create a process to help users logically break down their problem and express it so it is useful to everyone else
comments - so users can have discussions on nostrocket.org (or any other client) about projects and problems
rocket management - allows users to deploy a rocket (project) and edit it, connect it to a git repository, and connect it to the global problem tree
improved state management - makes the application 10x faster and more reliable
debugging tools - to increase development speed for myself
ability to add others to identity tree so they can use nostrocket too
Nostrocket Adoption
The goal I had in mind when applying for an OpenSats grant was to build an implementation that was immediately useful to people building things with nostr. Yondar is making use of this to drive its product toward more users and profit, which are the KPIs for a successful nostrocket project.
Yondar (a Google Maps replacement built with nostr, go.yondar.me) is the first major project to utilize nostrocket. Yondar has completely abandoned the GitHub issue tracker in favor of Nostrocket's problem tracker to track issues. Yondar has rapidly gained open source contributors who are interested in Yondar and like the idea that it is using Nostrocket which allows them to own the projects they contribute towards instead of it being owned soley by the founder. Since migrating to Nostrocket a little over a month ago, contributions have accelerated, with Contributors submitting PRs to create 6 major new features.
The Problem Tracker
The problem tracker has gone from zero to 70% complete in the first quarter of the 12 month grant.
The problem tracker is a foundational piece of the nostrocket unprotocol. It enables any nostrocket participant to log a problem that any particpant can then claim and solve.
Breaking problems down into smaller solvable problems is a precondition for the "hill-climbing" aspect of nostrocket, and the problem tracker helps users logically break down problems and express them in the appropriate place in the problem tree, nested somewhere under the root problem "humanity is not doing as well as it could be".
Problems support threaded conversations with kind 1 notes so anyone can discuss a problem with whatever client they usually use; it's like having GitHub issues posts show up on your social feed. There have been early signs of input and comments from non-nostrocket users who see nostrocket activity in their social client and decide to weigh in on a problem.
The state of a problem, its claim or completion status, and it's position in the broader problem tree have all been implemented as well but there are a number of ways this could improve. Overall, the problem tracker is currently functional enough for people with ample patience.
Having a large project like Yondar with other devs contributing to it has been very important in giving me feedback and helping me iterate nostrocket to in turn aid Yondar development through nostrocket's tools. It has been a very symbiotic relationship.
Sovereign Engineering
The OpenSats grant has also enabled me to participate in the Sovereign Engineering program in Madeira, which I believe will be written in the history books as a pivotal moment in the creation of a global bitcoin standard with nostr as the web of trust and communication layer.
NIPS
I have created a variety of NIPs to codify the Nostrocket implemention. These can be viewed at github.com/nostrocket/nips and are registered at the main nostr nips repo as external nips (a concept that Nostrocket introduced and is now used by other projects).
Next Steps
There's a lot of work to do - separation of business and state is a complex problem to solve and I don't have all the answers, but the next steps I plan to take are:
further improve the problem tracker, especially with regards to making it possible to integrate it with other nostr clients so that projects can use the problem tracker as a way to interface between the developers and the users of their app without using any external platforms.
validate the economic model by testing it with a project that creates something people will pay for.
I plan to use my time in Madeira at Sovereign Engineering to rapidly iterate over both of these aspects.
Use of funds
During this period, funds were mostly used for living expenses, with small amounts being used to pay for the nostrocket relay and and also to hire people to solve specific problems that are outside my domain of competence.
Note: this was written in December 2023.
The text was updated successfully, but these errors were encountered:
Nostrocket and OpenSats
It's been 3 months since Nostrocket was accepted into OpenSats, so it's time for an update and an explanation of how OpenSats is accelerating the development of Nostrocket and nostrocket's effect on the nostr ecosystem.
Current Status of Nostrocket
In my OpenSats grant proposal, I stated that, "Three months after funding, Nostrocket will be able to serve projects building with nostr". To do this I needed to build a browser-based client for Nostrocket, which is now live at nostrocket.org. In order to make nostrocket work in the browser, new innovations in state management were needed.
Previously, the Golang nostrocket client would validate events and update nostrocket state, and publish this validated state as an event, which could be used by the browser. With the new client, everything is browser first, the golang client is no longer needed. All validatation etc happens directly in the browser. This required changes to the architecture, and the introduction of different types of state: hard state and soft state. An explanation of these can be seen in the NIPs repo.
The following features have been added for projects to use:
Nostrocket Adoption
The goal I had in mind when applying for an OpenSats grant was to build an implementation that was immediately useful to people building things with nostr. Yondar is making use of this to drive its product toward more users and profit, which are the KPIs for a successful nostrocket project.
Yondar (a Google Maps replacement built with nostr, go.yondar.me) is the first major project to utilize nostrocket. Yondar has completely abandoned the GitHub issue tracker in favor of Nostrocket's problem tracker to track issues. Yondar has rapidly gained open source contributors who are interested in Yondar and like the idea that it is using Nostrocket which allows them to own the projects they contribute towards instead of it being owned soley by the founder. Since migrating to Nostrocket a little over a month ago, contributions have accelerated, with Contributors submitting PRs to create 6 major new features.
The Problem Tracker
The problem tracker has gone from zero to 70% complete in the first quarter of the 12 month grant.
The problem tracker is a foundational piece of the nostrocket unprotocol. It enables any nostrocket participant to log a problem that any particpant can then claim and solve.
Breaking problems down into smaller solvable problems is a precondition for the "hill-climbing" aspect of nostrocket, and the problem tracker helps users logically break down problems and express them in the appropriate place in the problem tree, nested somewhere under the root problem "humanity is not doing as well as it could be".
Problems support threaded conversations with kind 1 notes so anyone can discuss a problem with whatever client they usually use; it's like having GitHub issues posts show up on your social feed. There have been early signs of input and comments from non-nostrocket users who see nostrocket activity in their social client and decide to weigh in on a problem.
The state of a problem, its claim or completion status, and it's position in the broader problem tree have all been implemented as well but there are a number of ways this could improve. Overall, the problem tracker is currently functional enough for people with ample patience.
The problem tracker can be viewed at https://nostrocket.org/problems, with the source code at https://github.com/nostrocket/oxygen.
Having a large project like Yondar with other devs contributing to it has been very important in giving me feedback and helping me iterate nostrocket to in turn aid Yondar development through nostrocket's tools. It has been a very symbiotic relationship.
Sovereign Engineering
The OpenSats grant has also enabled me to participate in the Sovereign Engineering program in Madeira, which I believe will be written in the history books as a pivotal moment in the creation of a global bitcoin standard with nostr as the web of trust and communication layer.
NIPS
I have created a variety of NIPs to codify the Nostrocket implemention. These can be viewed at github.com/nostrocket/nips and are registered at the main nostr nips repo as external nips (a concept that Nostrocket introduced and is now used by other projects).
Next Steps
There's a lot of work to do - separation of business and state is a complex problem to solve and I don't have all the answers, but the next steps I plan to take are:
I plan to use my time in Madeira at Sovereign Engineering to rapidly iterate over both of these aspects.
Use of funds
During this period, funds were mostly used for living expenses, with small amounts being used to pay for the nostrocket relay and and also to hire people to solve specific problems that are outside my domain of competence.
Note: this was written in December 2023.
The text was updated successfully, but these errors were encountered: