Inspiration
AgroCeans connects the things a community can do together: care for the environment, practice meditation and sport, play chess, and share the experience. Twitch brings a live audience and conversation to that ecosystem.
This is our single unified hackathon project. Pinche Chess is an integrated AgroCeans experience.
What it does
AgroCeans brings environmental reports and cleanups, meditation, sport, community participation, Pinche Chess, wallet access and Live into one mobile experience.
Live embeds the Twitch channel alejandrobarakat. Users connect their own Twitch account, authorize in the system browser and return automatically to Live on Android and iOS. One integrated chat composer sends messages as the authorized Twitch user. Verified Twitch EventSub messages populate the shared chat history.
The existing ecosystem has separate services for report rewards, chess rewards and STAMP transactions. A STAMP anchors a record commitment; it does not by itself establish that a real-world observation is true. Eligible report and chess rewards have confirmed transaction records. Watching or chatting alone does not trigger AGRO payments.
How we built it
The mobile shell uses Flutter and platform WebViews. Mastodon supplies the social identity and entry points; HumHub hosts environmental report workflows. Pinche Chess supplies the game experience.
The hackathon Twitch bridge uses Node.js, Twitch OAuth, the Twitch API and signature-verified EventSub webhooks. Individual user credentials remain in private server storage. Browser-bound authorization and one-time state connect the original app session to the authorized account.
Native iOS authentication uses ASWebAuthenticationSession. Android uses Auth Tab with a Custom Tabs fallback. Return messages contain a nonce and outcome, rather than Twitch credentials. Android camera/microphone support handles system permission requests for the embedded Live experience.
AgroCoin is an existing independent blockchain. It is not an ERC-20 token. Existing payout and STAMP services remain separate from the Twitch bridge.
How we used OpenAI Codex
Codex assisted implementation, debugging and verification of individual Twitch OAuth, private credential persistence, server-side chat sending, verified EventSub history, native mobile authentication return, Android camera/microphone permissions, automated tests, guarded deployment scripts and documentation.
The work was iterative: mobile tests exposed blocked embedded login, separate browser sessions, extra confirmation steps and duplicate chat inputs. We moved authorization into native browser authentication flows, retained the original app session and consolidated chat into one composer.
What is new for this hackathon
The environmental reporting, community, wallet, editorial and chess ecosystem existed before the event. The work presented here adds the integrated Twitch account/chat experience, shared verified message history, automatic mobile return and the associated tests and deployment work.
Validation and current limitations
189 server tests passed with mocked providers. Flutter analysis and three authentication-return tests passed. Signed Android APK/AAB builds and an iOS TestFlight build were produced. Manual Android and iPhone testing confirmed Twitch authorization, automatic return and sending chat messages. Android camera/microphone permission support was added; this alone does not establish a Chess-to-Twitch video publishing pipeline. Wallet persistence across updates and payout delivery to the currently selected wallet remain under investigation. Evaluate with a test wallet; do not deposit funds for this evaluation. The Twitch bridge does not authorize real payments. Existing ecosystem payout records are separate evidence. An iOS build is being actively tested through TestFlight. A judge-accessible invitation link has not yet been provided.
Try it — Android
Download and install the APK: https://agroland.theagrostore.com/agroceans-release.apk
Open AgroCeans and select Live. Select Connect Twitch and authorize your own Twitch account. Confirm that the app returns to Live. Send a chat message and verify it on the Twitch channel. Reopen Live to check the remembered connection.
Use your own accounts. Do not share wallet seeds, private keys or authorization tokens. Video availability depends on the broadcaster being online.
Source and setup
Public repository — mobile app installation instructions, Twitch bridge source, automated tests and server setup: https://github.com/alejandrobarakat-coder/agroceans-twitch-hackathon
What's next
Connect selected report capsules and chess stories to the editorial broadcast pipeline, strengthen wallet continuity and payout verification, and expand distribution after store review.
The required public demo video and the Codex session ID for the principal implementation thread still need to be added before final hackathon submission. A separate audit session ID is available: 01a19ba3-c202-79f0-9514-e7be445ffcd1.
Built With
- agrocoin
- dart
- flutter
- humhub
- javascript
- kotlin
- mastodon
- node.js
- openai-codex
- swift
- twitch
- twitch-eventsub

