The Fishcake🐶🐾 on Nostr: My 2024 review and high-level report. Let's start with some stats for the ...
My 2024 review and high-level report. Let's start with some stats for the nostr.build:
- 720 Million media requests served
- 650 TiB of bandwidth consumed
- 8 Million unique visitors
- 85% average cache hit rate
- Improved median CPU time per request from 200 down to 2 milliseconds per request
- 20 requests per second are served on average
- 99.994% uptime for the hosted media
- 98% uptime for the website and uploading servers
- 2.5K daily free uploads on average
Some improvements for the free uploads:
- Increased free upload size from 10MiB to 50MiB
- Increased image resolution from 1980px to 3840px
- Increased per server RAM from 1GiB to 4GiB
- Added full mirror of all uploaded media to the additional vendor (backup)
- Implemented moderation headers (can be used to hide NSFW content if desired)
Now some of the stats of my dev work for the nostr.build:
- 1,333 git commits
- 42 repositories with my contributions
- 10k+ lines of code written, or changed
Some features and completed projects:
- Rewritten nostr.build account page (AI, stats, nostr share, drag-n-drop, variaty of sizes, poster for video, etc.)
- Added AI Studio, onboarded multiple models from SD and Flux.
- Added media statistics
- Rewritten media serving front-end (dropping CPU utilization by 100x) and improving TTFB as well as cache hit rate (from 50%+ to 85%+ on average)
- Implemented variaty of the spam, and other illegal media upload prevention mechanisms (automated AI media scanner, PhotoDNA scanner, etc.)
- Implemented AI Moderation API that is shareable with other nostr media hosts (e.g., nostrcheck.me)
- Implemented upload of pdf, zip, etc., with full virus scanning.
- Various improvements to the PHP code, bug fixes and optimizations.
- Implemented e.nostr.build to allow easy embedding and sharing of the video/audio files for the account holders
- Referal links and account credits
- Onboarded more nostr clients for uploads (e.g., YakiHonne)
Some of the prototyping I've done for nostr.build:
- Semantic search of the media (ML based), multilingual
- Basic search for media using AI Vision
- Video transcoding using serverless and server-based setups
- Video transcoding to DASH/HLS (CMAF)
- Multi-party audio/video chat
Some of the in-flight projects that I'll have to complete in 2025:
- Seamless implementation of the Blossom protocol (70% done)
- Rewrite of the post-upload scanning to utilize workflows (50% done)
- New video upload and transcoding experience, HLS, DASH, VBR video/audio (10% done)
- New NoSQL based data-plane backend with the new API (50% done)
- Full rewrite of the Accounts page (5% done, blocked by new API and data-plane)
- Additional models for the AI Studio (90% done)
- <Secret projects with new experiences and features> (25% done)
I am sure I am forgetting a bunch, and this is only done from my memory.
Published at
2024-12-31 04:12:31Event JSON
{
"id": "f7f74909b27b651f060b8d6392358e291bf1b609ad59cc829f68ee9ad562479d",
"pubkey": "8fb140b4e8ddef97ce4b821d247278a1a4353362623f64021484b372f948000c",
"created_at": 1735618351,
"kind": 1,
"tags": [],
"content": "My 2024 review and high-level report. Let's start with some stats for the nostr.build:\n- 720 Million media requests served\n- 650 TiB of bandwidth consumed\n- 8 Million unique visitors\n- 85% average cache hit rate\n- Improved median CPU time per request from 200 down to 2 milliseconds per request\n- 20 requests per second are served on average\n- 99.994% uptime for the hosted media\n- 98% uptime for the website and uploading servers\n- 2.5K daily free uploads on average\n\nSome improvements for the free uploads:\n- Increased free upload size from 10MiB to 50MiB\n- Increased image resolution from 1980px to 3840px\n- Increased per server RAM from 1GiB to 4GiB\n- Added full mirror of all uploaded media to the additional vendor (backup)\n- Implemented moderation headers (can be used to hide NSFW content if desired)\n\nNow some of the stats of my dev work for the nostr.build:\n- 1,333 git commits\n- 42 repositories with my contributions\n- 10k+ lines of code written, or changed\n\nSome features and completed projects:\n- Rewritten nostr.build account page (AI, stats, nostr share, drag-n-drop, variaty of sizes, poster for video, etc.)\n- Added AI Studio, onboarded multiple models from SD and Flux.\n- Added media statistics\n- Rewritten media serving front-end (dropping CPU utilization by 100x) and improving TTFB as well as cache hit rate (from 50%+ to 85%+ on average)\n- Implemented variaty of the spam, and other illegal media upload prevention mechanisms (automated AI media scanner, PhotoDNA scanner, etc.)\n- Implemented AI Moderation API that is shareable with other nostr media hosts (e.g., nostrcheck.me)\n- Implemented upload of pdf, zip, etc., with full virus scanning.\n- Various improvements to the PHP code, bug fixes and optimizations.\n- Implemented e.nostr.build to allow easy embedding and sharing of the video/audio files for the account holders\n- Referal links and account credits\n- Onboarded more nostr clients for uploads (e.g., YakiHonne)\n\nSome of the prototyping I've done for nostr.build:\n- Semantic search of the media (ML based), multilingual\n- Basic search for media using AI Vision\n- Video transcoding using serverless and server-based setups\n- Video transcoding to DASH/HLS (CMAF)\n- Multi-party audio/video chat\n\nSome of the in-flight projects that I'll have to complete in 2025:\n- Seamless implementation of the Blossom protocol (70% done)\n- Rewrite of the post-upload scanning to utilize workflows (50% done)\n- New video upload and transcoding experience, HLS, DASH, VBR video/audio (10% done)\n- New NoSQL based data-plane backend with the new API (50% done)\n- Full rewrite of the Accounts page (5% done, blocked by new API and data-plane)\n- Additional models for the AI Studio (90% done)\n- \u003cSecret projects with new experiences and features\u003e (25% done)\n\nI am sure I am forgetting a bunch, and this is only done from my memory.",
"sig": "dfa0b9b4d9df4530e267e551cd5ffc7ba39c7e039d59e5bc2363d9e2ee42e15678aae0b834f0f64929fff5525d48362d8061dbf856aec0f5ac7272e9b189e816"
}