-
@ Kieran
2024-04-24 14:52:50Project Status'
Snort
Full commit history: 754 Commits, +35,843, -19,639
Versioned releases: - v0.1.19 (2023-10-02) - v0.1.20 (2023-10-11) - Iris migrates to Snort codebase - v0.1.21 (2023-10-18) - v0.1.22 (2023-10-21) - v0.1.23 (2023-11-23) - v0.1.24 (2023-12-14)
git-fame --since 2023-09-31 --branch 7b72f9f7750aaec9d6ba40373ff3ca66125588b5 --cost hour -M -C
| Author | hrs | loc | coms | fils | distribution | |:-----------------|------:|------:|-------:|-------:|:----------------| | Kieran | 73 | 49669 | 373 | 463 | 65.0/49.4/50.5 | | Martti Malmi | 98 | 25982 | 359 | 410 | 34.0/47.5/44.7 | | Fernando Porazzi | 2 | 416 | 5 | 13 | 0.5/ 0.7/ 1.4 | | mmalmi | 2 | 294 | 6 | 21 | 0.4/ 0.8/ 2.3 | | w3irdrobot | 2 | 37 | 1 | 2 | 0.0/ 0.1/ 0.2 | | James McGauran | 2 | 20 | 5 | 2 | 0.0/ 0.7/ 0.2 | | fiatjaf | 2 | 12 | 2 | 2 | 0.0/ 0.3/ 0.2 | | Kamal Raj Sekar | 2 | 10 | 2 | 2 | 0.0/ 0.3/ 0.2 | | benthecarman | 2 | 2 | 1 | 1 | 0.0/ 0.1/ 0.1 | | vivganes | 2 | 1 | 1 | 1 | 0.0/ 0.1/ 0.1 |
Snort API
Along with the public UI code there is a private repo containing the backend api which handles auxiliary services for snort.social like fetching link previews and handling donations and NIP-5 services.
The API docs are publicly accessible https://api.snort.social/swagger
I am also in the process of moving some of these functions to a public repo, they are listed below under NostrServices
git-fame --since 2023-09-31 --branch b669a92f6f1ddfba8af0be9afee22ced90a0cf9c --cost hour
| Author | hrs | loc | coms | fils | distribution | |:---------|------:|------:|-------:|-------:|:-----------------| | Kieran | 18 | 3560 | 68 | 56 | 100.0/ 100/100.0 |
zap.stream
zap.stream does not yet follow a versioned release scheme, instead I have listed the major changes over this timeframe.
- Stream summary page (Example)
- Gives an overview of previous streams with top chatters and top zappers
- Stream activity timeline graph
- Tailwind CSS upgrade
- Streamlines CSS inside zap.stream
- Custom player overlay
- Select stream quality (720p/480p/Auto)
- UI themes (Primary colour only)
- Stream dashboard https://zap.stream/dashboard
- Gives the streamer an overview of their stream allowing them to see a dedicated zaps feed
- Chat moderation operations (Mute) shortcuts for unique
- Stream raids feature
- Allows hosts to redirect their viewers to another stream
- This is a feature which twitch.tv has and helps to retain viewers by redirecting them to another streamer on the site who is still live. This is usually performed at the end of the stream.
- Stream forwarding feature
- Supported by the zap.stream hosting solution, you can forward your stream automatically to other platforms directly.
- This is identical to restream.io platform, it's provided for free as part of the hosted streams.
- Direct support for entering stream keys for YouTube/Twitch.tv/Facebook/Kick/Trovo
- Custom RTMP destinations also supported.
- Clips feature
- Supported by the zap.stream hosting solution, allows users to create a stream clip (mp4) from the previous 60s
- Stream clips are posted in chat for everybody to see and can be shared anywhere on nostr.
- Surfacing clips on profiles and other places is yet to be implemented.
- Push Notifications
- Supported by the zap.stream hosting solution, allows viewers to subscribe to notifications for a given streamer (Bell Icon)
- Viewers will receive push notifications when this streamer goes live.
git-fame --since 2023-09-31 --branch 039d2d15513cacab99b0ae8abe587d0e0bef0ddc --cost hour -M -C
| Author | hrs | loc | coms | fils | distribution | |:---------|------:|------:|-------:|-------:|:----------------| | Kieran | 13 | 22594 | 97 | 162 | 99.9/98.0/99.4 | | florian | 2 | 32 | 2 | 1 | 0.1/ 2.0/ 0.6 |
zap.stream backend
Along with the the public UI codebase there is also another private repo which contains the code for the backend hosted streaming solution.
git-fame --since 2023-09-31 --branch 5b5f011df0c0c2f7105a25be1cef7fd74db96ce6 --cost hour -M -C
| Author | hrs | loc | coms | fils | distribution | |:---------|------:|------:|-------:|-------:|:-----------------| | Kieran | 5 | 3105 | 18 | 41 | 100.0/ 100/100.0 |
DTAN.xyz
I had an idea for another app one day and i decided to make it, this site allows people to list torrents on nostr, it appears to be well received.
The repository is here: https://git.v0l.io/Kieran/dtan
The name itself is an acronym for Distributed Torrent Archive on Nostr nostrudel.ninja has also added support for this event kind (2003) There is no NIP for this kind. The kind number comes from the founding date of the thepriatebay.org (2003)
Commit History
git-fame --cost hour
| Author | hrs | loc | coms | fils | distribution | |:---------|------:|------:|-------:|-------:|:----------------| | Kieran | 9 | 8242 | 22 | 56 | 91.7/78.6/74.7 | | florian | 3 | 745 | 6 | 19 | 8.3/21.4/25.3 |
void.cat
Another service I provide is https://void.cat this service is a public anon file upload sharing site, during this quarter I have added support for the recently merged NIP-96
The repository is here: https://git.v0l.io/Kieran/void.cat
git-fame --since 2023-09-31 --branch ce7c3613a844dc11eee8a1078e433c30f2c0216c --cost hour -M -C
| Author | hrs | loc | coms | fils | distribution | |:---------|------:|------:|-------:|-------:|:-----------------| | Kieran | 9 | 28326 | 26 | 145 | 100.0/ 100/100.0 |
NostrServices
I have began to migrate some of the useful functions from Snort API into a public repo, this is a C# repo which contains multiple packages and services which anybody can run.
The goal of this repo is to provide a few Docker images for caching API's and custom relays.
The repository is here: https://git.v0l.io/Kieran/NostrServices
Public API: https://nostr.api.v0l.io/swagger
All the commits to this repo are out of scope as they started on 2024-01-10, lookout for the commit history in the next report!
Outlook
Snort
The current plan for snort.social is to optimise performance and the onboarding experience / community building, we're currently building a full nostr relay in the browser that we will interact with as a WebWorker, early tests look promising and should pave the way for more advanced features like P2P note sharing and in-client algorithms, as well as improving overall performance.
On the community building front, I have created a "Community Leaders" programme that will help local community leaders build their Nostr community and get more users on board. It will also create communication channels for these communities to help inform Snort developers about issues or features that these communities want. This programme is partially rolled out and there is a landing page here https://community.snort.social/
Hopefully more Nostr clients will implement a similar programme, giving community leaders a stronger presence and reward for their efforts.
Another side project is to improve the documentation for Snorts' internal libs which are available for all developers to use via npm:
@snort/system
@snort/system-react
@snort/system-web
@snort/shared
@snort/system-wasm
A documentation site has been created to help developers to use the library and more examples and documentation will be created over time.
zap.stream
Growing
A very important part of growing zap.stream is getting more content creators on board, part of that is creating a familiar experience, but also making it very easy for streamers to multi-stream, so I created the re-stream feature, streamers can easily stream to zap.stream plus twitch.tv or youtube.com without any cost or effort.
Linking content between platforms can also be a great way to showcase the power of zap.stream. A lot of work has gone into making sure that the OpenGraph tagging and overall SEO of zap.stream and snort.social is optimal.
I believe that zap.stream already provides a good live streaming experience and that getting more content is the primary focus for zap.stream right now.
It would also be wise to have exposure in both app stores and I plan to do that.
Refining
While zap.stream offers a good feature set, there is always room for improvement, the recently added raid and dashboard features still need some work.
Clips for example do not appear anywhere outside of the live stream chat, it is not yet possible to share these clips, these are immediate areas that need improvement, I plan to make clips appear on profiles similar to twitch.tv and also make them shareable and of course make sure they are tagged correctly for link previews on all legacy social platforms.
- Stream summary page (Example)