Things I’m building,
learning & curious about.

An open notebook from Sanu. Side projects, new topics I’m digging into, and notes from the build, written as I go. Some of it ships, some of it doesn’t; all of it gets shared.

  1. device_integrity_pluginOpen-source Flutter plugin for device integrity

    A Flutter plugin on pub.dev that reports separate, explainable integrity signals on Android and iOS and creates Play Integrity and App Attest proofs that a backend can verify.

    Root and jailbreak, emulators, attached debuggers, hooking frameworks like Frida, app tampering, proxies and VPNs are each reported as their own finding with a reason code. There is deliberately no single isSafe flag: the app gathers observations and the backend decides policy. A check that fails reports an error instead of quietly passing.

    For sensitive actions like payments, it requests a Play Integrity token on Android or an App Attest assertion on iOS, bound to a single-use backend challenge and a hash of the request so a proof can’t be replayed for a different transaction.

    Native checks are written in Kotlin and Swift behind a Dart API. The plugin sends nothing off the device on its own, and it also covers sensitive screens: blocking screenshots on Android and detecting screen capture on iOS.

    View on pub.dev Source on GitHub
  2. AI Systems for CompaniesRAG, vector databases & AI automation

    Learning how to build AI systems that work on a company’s own knowledge and automate the repetitive work around it, not just a chatbot bolted onto a website.

    RAG (retrieval-augmented generation) is the core idea: instead of hoping a model already knows the answer, you fetch the right documents first and let it answer from those. Policies, product docs, tickets and contracts become something a team can actually ask questions of.

    That makes the retrieval layer the real engineering problem: how documents are chunked, which embedding model turns them into vectors, how the vector database indexes and filters them, and how you check that the answers are grounded in the sources.

    The other half is automation: connecting models to the tools a company already uses so routine workflows like triaging requests, drafting replies, extracting data from documents and keeping systems in sync run on their own, with a person reviewing what matters.

    I’ll share what I build and learn here as it takes shape.

  3. P2PCOMServerless 1:1 voice & video calls

    Cross-platform one-to-one calling for Android, iOS and the web, built with Flutter and WebRTC, with no accounts and no signaling server.

    Callers connect by exchanging call codes through the messengers they already use, or by scanning a QR code. Once the handshake is done, media flows peer-to-peer.

    Calls are DTLS-SRTP encrypted end to end, with in-call controls, a fingerprint-based safety code to verify the other side, and an adaptive data saver for weak connections.

    Try the live demo

More on the way. New experiments land here first.