{"title": "BloomersTV", "logoImg": "bafkreicckhgcm5lzfeahlfpte2qjvfltcmsbwm6abk35k74t2t2gwg3k4q", "website": "https://bloomers.tv", "bannerImg": "bafkreidepxgjovvutgi3nhwvp644wu6onpnzgucu6pdpppxh7bo5kv3tn4", "createdAt": 1729588494163, "userGithub": "RathodDeven", "credentials": {"github": {"type": ["VerifiableCredential"], "proof": {"jws": "eyJhbGciOiJFZERTQSIsImNyaXQiOlsiYjY0Il0sImI2NCI6ZmFsc2V9..jJ9c4coWnZbAJO_aiFebObN_SHSa1_6jaH5hnWFgWdS3QrERzFn3OIqLszGHY1VqXqsJFzszgY_OytB66i4ACQ", "type": "Ed25519Signature2018", "created": "2024-10-22T09:14:33.446Z", "proofPurpose": "assertionMethod", "verificationMethod": "did:key:z6MkghvGHLobLEdj1bgRLhS4LPGJAvbMA1tn2zcRyqmYU5LC#z6MkghvGHLobLEdj1bgRLhS4LPGJAvbMA1tn2zcRyqmYU5LC"}, "issuer": "did:key:z6MkghvGHLobLEdj1bgRLhS4LPGJAvbMA1tn2zcRyqmYU5LC", "@context": ["https://www.w3.org/2018/credentials/v1"], "issuanceDate": "2024-10-22T09:14:33.446Z", "expirationDate": "2025-01-20T09:14:33.446Z", "credentialSubject": {"id": "did:pkh:eip155:1:0xC8D0E78379d96D0A436b8597835670b13445A6Db", "hash": "v0.0.0:6tJor+x/ZWIPjEs4HngECwzfWv+tnUW98/vMzY+bJFU=", "@context": [{"hash": "https://schema.org/Text", "provider": "https://schema.org/Text"}], "provider": "ClearTextGithubOrg#bloomerstv#69627223"}}, "twitter": {"type": ["VerifiableCredential"], "proof": {"jws": "eyJhbGciOiJFZERTQSIsImNyaXQiOlsiYjY0Il0sImI2NCI6ZmFsc2V9..5beNEJ51keE8t4hVu78Oi3VUfKtlStaMSZeI0Ym0bm-Cu_3B2G3sQ72lsd0wwOhAN3qqWx1fELXbIojy4NU8DA", "type": "Ed25519Signature2018", "created": "2024-10-22T09:14:23.804Z", "proofPurpose": "assertionMethod", "verificationMethod": "did:key:z6MkghvGHLobLEdj1bgRLhS4LPGJAvbMA1tn2zcRyqmYU5LC#z6MkghvGHLobLEdj1bgRLhS4LPGJAvbMA1tn2zcRyqmYU5LC"}, "issuer": "did:key:z6MkghvGHLobLEdj1bgRLhS4LPGJAvbMA1tn2zcRyqmYU5LC", "@context": ["https://www.w3.org/2018/credentials/v1"], "issuanceDate": "2024-10-22T09:14:23.804Z", "expirationDate": "2025-01-20T09:14:23.804Z", "credentialSubject": {"id": "did:pkh:eip155:1:0xC8D0E78379d96D0A436b8597835670b13445A6Db", "hash": "v0.0.0:1tG0zqhebDv1jDpukE7uwbf1BFVBj4j76aN2WQpbVmo=", "@context": [{"hash": "https://schema.org/Text", "provider": "https://schema.org/Text"}], "provider": "ClearTextTwitter#bloomerstv"}}}, "description": "# BloomersTV\n\nBloomersTV is an open-source live-streaming platform on Lens Protocol. \n\n## Features\n\n- **Live Chat**: You can view live comments under the Lens stream post from all other Lens clients in real-time and send instant live messages from BloomersTV.\n- **Real-Time Moderation**: Block and remove unwanted users from the live chat in real-time.\n- **Super Chat**: Support live streamers by sending super chats using dozens of available tokens.\n- **Clip & Share**: Take clips from live streams and post them as videos on Lens.\n- **Content Management**: Manage all stream replays and clips via the content management page after the streams end.\n- **Super Bloomers Plan**: Support BloomersTV and gain additional features, including:\n  - 28 days of VOD (instead of 7 days for the free plan)\n  - Super Bloomers Badge\n  - Zero percent revenue split on collect features (compared to 5% for free plan)\n- **Watch Modes**: Choose between two watch modes:\n  - **Low Latency**: Lower latency but might experience occasional lags.\n  - **Quality**: Smoother viewing experience but with higher latency.\n- **Web Push Notifications**: Get notified when your subscribed streamer goes live with web push notifications.\n- **Mobile Optimization & PWA Support**: Enjoy a fully optimized mobile experience on both Android and iOS devices, with PWA support for quick access.\n- **Streaming Options**: Stream using OBS for the best quality (recommended) or stream directly from the browser by sharing your camera or screen quickly.\n- **Playback Control**: Select playback speed and adjust the quality for stream replays.\n- **Offline Page**: Show your last public stream replay on your offline page when not live.\n- **Community Posting**: Post text, and image Lens posts, and engage with the community through a dedicated posts section.\n- **Stream Replay Visibility**: Set replay visibility to public, unlisted, or private based on your preference.\n- **Profile Page Frame**: A unique frame that works on both lens & farcaster, for your profile page \n\n\n## Technologies Used\n\n- **Frontend**: React, Next.js, Tailwind CSS\n- **Backend**: Node.js, Express, Apollo Client\n- **Blockchain & Web3**: Lens Protocol, Ethers.js, Wagmi, RainbowKit\n- **Database**: MongoDB\n- **Streaming**: Livepeer, HLS (HTTP Live Streaming)\n- **Package Manager**: pnpm\n- **File Storage**: IPFS (via 4everland STS Token)\n- **UI/UX**: MUI (Material-UI), Framer Motion\n- **State Management**: Zustand\n- **GraphQL**: GraphQL, Apollo Client, GraphQL Code Generator\n\n## Impact Goals:\n\nBloomersTV aims to transform live streaming by giving creators full control over their earnings and distributing streams across multiple platforms for greater reach. It fosters a creator-first ecosystem that encourages open participation and community-driven growth.", "logoImgData": {}, "bannerImgData": {}, "projectGithub": "bloomerstv", "projectTwitter": "bloomerstv"}