{
  "version": "v1.0.0",
  "entity": {
    "type": "organisation",
    "role": "owner",
    "name": "Batin",
    "email": "hello@bat1n.com",
    "description": "Batin is a Norwegian ideell forening (non-profit association) that builds free, privacy-respecting software for everyone. No ads, no telemetry, no tracking, and nothing sent to any server without the user's consent. Core protections run locally on the device. The association holds the code, trademarks, and domains, is funded by donations rather than advertising, and its bylaws require that on dissolution everything passes to another non-profit so the work stays free.",
    "webpageUrl": {
      "url": "https://bat1n.com",
      "wellKnown": "https://bat1n.com/.well-known/funding-manifest-urls"
    }
  },
  "projects": [
    {
      "guid": "mdf",
      "name": "Batin .mdf (Motion Document Format)",
      "description": "An open document format, with a reference implementation in Rust, that puts a whole document (text, media, declared interaction, and a built-in accessibility structure) in one portable file that works fully offline and sends nothing to any server. Every file can be integrity-checked with SHA-256, digitally signed with Ed25519, and encrypted with AES-256-GCM, so a recipient can verify it is authentic and unaltered without a cloud, an account, or an internet connection. Interactivity is declared as data; the file runs no script. The same tagged structure serves both screen readers and machine or AI extraction. The project publishes a versioned specification, a conformance test suite, and a canonical JSON Schema so anyone can build a compatible, verifiable reader.",
      "webpageUrl": {
        "url": "https://mdf.bat1n.com",
        "wellKnown": "https://mdf.bat1n.com/.well-known/funding-manifest-urls"
      },
      "repositoryUrl": {
        "url": "https://github.com/Batin-Association/mdf"
      },
      "licenses": ["spdx:Apache-2.0"],
      "tags": ["documents", "file-format", "accessibility", "privacy", "offline", "rust", "digital-signatures", "encryption"]
    }
  ],
  "funding": {
    "channels": [
      {
        "guid": "batin-transfer",
        "type": "other",
        "description": "Direct grant or bank transfer to the Batin non-profit. Bank details are provided on request; the association's organisation number is under registration in the Norwegian Enhetsregisteret."
      }
    ],
    "plans": [
      {
        "guid": "mdf-v1",
        "status": "active",
        "name": "Ship .mdf v1: specification, reference implementation, conformance suite",
        "description": "Fund focused Rust developer time to take .mdf from working prototype to a published, independently implementable v1: a versioned specification, a complete reference implementation (viewer, editor, CLI), a conformance test suite and sample corpus, an accessibility pass, and an external security review of the signing and encryption.",
        "amount": 55000,
        "currency": "USD",
        "frequency": "one-time",
        "channels": ["batin-transfer"]
      },
      {
        "guid": "maintenance",
        "status": "active",
        "name": "Ongoing maintenance and community support",
        "description": "Recurring support for maintaining the format, the reference tools, the conformance suite, and community contributions after v1.",
        "amount": 0,
        "currency": "USD",
        "frequency": "monthly",
        "channels": ["batin-transfer"]
      }
    ],
    "history": [
      {
        "year": 2026,
        "currency": "USD",
        "income": 0,
        "expenses": 0,
        "taxes": 0,
        "description": "Founding year. The association is under registration and has not yet received or disbursed funds."
      }
    ]
  }
}
