{
  "generatedAt": "2026-05-22T18:33:46.920Z",
  "site": "https://mikrosuite.com",
  "products": [
    {
      "id": "chat",
      "name": "MikroChat",
      "category": "Communication",
      "url": "https://mikrosuite.com/chat/",
      "path": "/chat/",
      "mode": "Self-hosted",
      "tagline": "Team chat you host yourself: channels, DMs, threads, files, and private ownership.",
      "description": "MikroChat packages a clean chat frontend and backend with channels, private channels, DMs, threaded replies, files, search, presence, encryption at rest, and flexible authentication.",
      "tags": [
        "Channels",
        "DMs",
        "Threads",
        "Encrypted storage"
      ],
      "features": [
        "Public and private channels with files, images, pins, quotes, and links",
        "Threaded replies, direct messages, search, mentions, unread badges, and presence",
        "Dev mode, magic links, passwords, OAuth 2.0, and admin operations",
        "Server-Sent Events for realtime updates and PWA cached read access"
      ],
      "repo": "https://github.com/mikaelvesavuori/mikrochat",
      "docs": "/chat/docs",
      "icon": "/assets/product-icons/mikrochat.svg"
    },
    {
      "id": "meet",
      "name": "MikroMeet",
      "category": "Communication",
      "url": "https://mikrosuite.com/meet/",
      "path": "/meet/",
      "onlineUrl": "https://meet.mikrosuite.com",
      "mode": "Self-hosted",
      "tagline": "Private WebRTC meetings with room links, chat, screen sharing, and no platform baggage.",
      "description": "MikroMeet uses WebRTC, lightweight signaling, scheduled rooms, calendar invites, chat, reactions, file transfer, screen sharing, local recording, and moderator controls.",
      "tags": [
        "WebRTC",
        "Meetings",
        "Scheduling",
        "Screen sharing"
      ],
      "features": [
        "P2P video and audio with configurable STUN/TURN",
        "Scheduled rooms, calendar invites, room locks, and waiting rooms",
        "Moderator controls, chat replies, reactions, hand raising, and local pinning",
        "File transfer, screen sharing, local browser recording, and reconnect feedback"
      ],
      "repo": "https://github.com/mikaelvesavuori/mikromeet",
      "docs": "/meet/docs",
      "icon": "/assets/product-icons/mikromeet.svg"
    },
    {
      "id": "analytics",
      "name": "MikroAnalytics",
      "category": "Developer",
      "url": "https://mikrosuite.com/analytics/",
      "path": "/analytics/",
      "mode": "Self-hostable",
      "tagline": "Cookie-free product analytics with useful trends, custom events, and no visitor timelines.",
      "description": "MikroAnalytics tracks pageviews, navigation, referrers, campaigns, devices, and custom events with no cookies, no local storage, no raw IP storage, and no visitor timelines.",
      "tags": [
        "Analytics",
        "No cookies",
        "SQLite",
        "GDPR-conscious"
      ],
      "features": [
        "Tiny tracker served from /m.js",
        "Automatic pageviews, SPA navigation, custom events, and markup events",
        "DNT and Global Privacy Control support by default",
        "MikroAuth dashboard sign-in, reporting API, OpenAPI, and retention cleanup"
      ],
      "repo": "https://github.com/mikaelvesavuori/mikroanalytics",
      "docs": "/analytics/docs",
      "icon": "/assets/product-icons/mikroanalytics.svg"
    },
    {
      "id": "apm",
      "name": "MikroAPM",
      "category": "Developer",
      "url": "https://mikrosuite.com/apm/",
      "path": "/apm/",
      "mode": "Self-hostable",
      "tagline": "Simple uptime checks, alerts, and status pages for services you run.",
      "description": "MikroAPM checks sites, records failures, sends webhook and optional email notifications, and serves a compact status dashboard from either Node or Cloudflare Workers.",
      "tags": [
        "Uptime",
        "Status page",
        "Workers",
        "Webhooks"
      ],
      "features": [
        "Health checks, storage, alerting, and dashboard in one package",
        "Flexible checks with method, headers, expected status, text matching, latency limits, retries, and timeouts",
        "Webhook and optional Brevo email alerts",
        "Admin API, current status records, maintenance windows, and OpenAPI"
      ],
      "repo": "https://github.com/mikaelvesavuori/mikroapm",
      "docs": "/apm/docs",
      "icon": "/assets/product-icons/mikroapm.svg"
    },
    {
      "id": "scope",
      "name": "MikroScope",
      "category": "Developer",
      "url": "https://mikrosuite.com/scope/",
      "path": "/scope/",
      "mode": "Self-hostable",
      "tagline": "Structured log ingestion and search for finding production issues fast.",
      "description": "MikroScope ingests NDJSON logs, indexes them into SQLite, exposes query and aggregation APIs, serves OpenAPI docs, and sends webhook alerts when operational patterns need attention.",
      "tags": [
        "Logs",
        "NDJSON",
        "SQLite",
        "OpenAPI"
      ],
      "features": [
        "HTTP ingest API for backend and frontend producers",
        "Query filters for producer, level, audit, fields, timestamps, and cursors",
        "Aggregate API for level, event, component, and correlation buckets",
        "Webhook alerts, retention, maintenance, and layered configuration"
      ],
      "repo": "https://github.com/mikaelvesavuori/mikroscope",
      "npm": "https://www.npmjs.com/package/mikroscope",
      "docs": "/scope/docs",
      "icon": "/assets/product-icons/mikroscope.svg"
    },
    {
      "id": "mikroauth",
      "name": "MikroAuth",
      "category": "Libraries",
      "url": "https://mikrosuite.com/libraries/mikroauth/",
      "path": "/libraries/mikroauth/",
      "mode": "NPM package",
      "tagline": "Dead-simple magic link authentication for small Node services.",
      "description": "MikroAuth provides lightweight email sign-in primitives for apps that need useful authentication without adopting a large identity platform.",
      "tags": [
        "Auth",
        "Magic links",
        "Email sign-in",
        "Node"
      ],
      "features": [
        "Magic-link authentication for email sign-in",
        "Small API surface for self-hosted apps",
        "Designed for clear server-side configuration",
        "Useful when auth should support the product, not dominate it"
      ],
      "repo": "https://github.com/mikaelvesavuori/mikroauth",
      "npm": "https://www.npmjs.com/package/mikroauth",
      "icon": "/assets/product-icons/mikrolibrary.svg"
    },
    {
      "id": "mikrocompare",
      "name": "MikroCompare",
      "category": "Libraries",
      "url": "https://mikrosuite.com/libraries/mikrocompare/",
      "path": "/libraries/mikrocompare/",
      "mode": "NPM package",
      "tagline": "Tiny JavaScript comparison helpers for simple equality work.",
      "description": "MikroCompare simplifies comparison logic in JavaScript so small apps can compare values without pulling in a larger utility toolkit.",
      "tags": [
        "Compare",
        "JavaScript",
        "Utility"
      ],
      "features": [
        "Comparison helpers for JavaScript values",
        "Small dependency surface",
        "Useful for app state, tests, and validation flows",
        "A focused library for one narrow job"
      ],
      "repo": "https://github.com/mikaelvesavuori/mikrocompare",
      "npm": "https://www.npmjs.com/package/mikrocompare",
      "icon": "/assets/product-icons/mikrolibrary.svg"
    },
    {
      "id": "mikroconf",
      "name": "MikroConf",
      "category": "Libraries",
      "url": "https://mikrosuite.com/libraries/mikroconf/",
      "path": "/libraries/mikroconf/",
      "mode": "NPM package",
      "tagline": "Type-safe configuration loading for small Node apps.",
      "description": "MikroConf handles layered configuration for apps that need defaults, config files, environment variables, and CLI flags without a heavy framework.",
      "tags": [
        "Config",
        "Type-safe",
        "Node",
        "Runtime"
      ],
      "features": [
        "Layered runtime configuration",
        "Useful defaults with explicit overrides",
        "Typed configuration surfaces",
        "Built for small self-hosted Node services"
      ],
      "repo": "https://github.com/mikaelvesavuori/mikroconf",
      "npm": "https://www.npmjs.com/package/mikroconf",
      "icon": "/assets/product-icons/mikrolibrary.svg"
    },
    {
      "id": "mikrodb",
      "name": "MikroDB",
      "category": "Libraries",
      "url": "https://mikrosuite.com/libraries/mikrodb/",
      "path": "/libraries/mikrodb/",
      "mode": "NPM package",
      "tagline": "A lightweight key-value database inspired by KV stores.",
      "description": "MikroDB is a compact key-value storage library for apps that need understandable persistence without operating a full external database.",
      "tags": [
        "KV",
        "Database",
        "Storage"
      ],
      "features": [
        "Key-value storage model",
        "Inspired by Cloudflare KV and DynamoDB patterns",
        "Simple persistence for small services",
        "Good fit for owned, inspectable app data"
      ],
      "repo": "https://github.com/mikaelvesavuori/mikrodb",
      "npm": "https://www.npmjs.com/package/mikrodb",
      "icon": "/assets/product-icons/mikrolibrary.svg"
    },
    {
      "id": "mikroformat",
      "name": "MikroFormat",
      "category": "Libraries",
      "url": "https://mikrosuite.com/libraries/mikroformat/",
      "path": "/libraries/mikroformat/",
      "mode": "NPM package",
      "tagline": "Small format conversion helpers for JavaScript projects.",
      "description": "MikroFormat helps convert and format values between common representations without turning formatting into a platform dependency.",
      "tags": [
        "Format",
        "Convert",
        "Utility"
      ],
      "features": [
        "Formatting and conversion helpers",
        "Narrow utility API",
        "Useful in CLIs, APIs, and app tooling",
        "Designed to stay small and easy to inspect"
      ],
      "repo": "https://github.com/mikaelvesavuori/mikroformat",
      "npm": "https://www.npmjs.com/package/mikroformat",
      "icon": "/assets/product-icons/mikrolibrary.svg"
    },
    {
      "id": "mikrohash",
      "name": "MikroHash",
      "category": "Libraries",
      "url": "https://mikrosuite.com/libraries/mikrohash/",
      "path": "/libraries/mikrohash/",
      "mode": "NPM package",
      "tagline": "Zero-dependency string hashing helpers.",
      "description": "MikroHash hashes string values to hex, base64, URL-safe base64, or binary output for apps that need direct cryptographic utility functions.",
      "tags": [
        "Hashing",
        "Crypto",
        "Zero dependencies"
      ],
      "features": [
        "Hash strings to hex, base64, URL-safe base64, or binary",
        "Zero runtime dependencies",
        "Small API for direct hashing needs",
        "Useful for tokens, signatures, checksums, and IDs"
      ],
      "repo": "https://github.com/mikaelvesavuori/mikrohash",
      "npm": "https://www.npmjs.com/package/mikrohash",
      "icon": "/assets/product-icons/mikrolibrary.svg"
    },
    {
      "id": "mikroid",
      "name": "MikroID",
      "category": "Libraries",
      "url": "https://mikrosuite.com/libraries/mikroid/",
      "path": "/libraries/mikroid/",
      "mode": "NPM package",
      "tagline": "Lightweight customizable ID generation.",
      "description": "MikroID creates compact unique IDs for apps that need predictable, dependency-light identifier generation.",
      "tags": [
        "IDs",
        "Generator",
        "Zero dependencies"
      ],
      "features": [
        "Generate compact unique IDs",
        "Customizable ID shape",
        "Zero-dependency runtime",
        "Useful for records, messages, files, and local app state"
      ],
      "repo": "https://github.com/mikaelvesavuori/mikroid",
      "npm": "https://www.npmjs.com/package/mikroid",
      "icon": "/assets/product-icons/mikrolibrary.svg"
    },
    {
      "id": "mikrolog",
      "name": "MikroLog",
      "category": "Libraries",
      "url": "https://mikrosuite.com/libraries/mikrolog/",
      "path": "/libraries/mikrolog/",
      "mode": "NPM package",
      "tagline": "JSON logging built for Lambda-style runtimes.",
      "description": "MikroLog emits structured JSON logs for serverless and Node services that should be readable by machines without adding a large logging stack.",
      "tags": [
        "Logging",
        "JSON",
        "Lambda",
        "Serverless"
      ],
      "features": [
        "Structured JSON log output",
        "Lambda-friendly runtime shape",
        "Small logger for serverless services",
        "Works well with log ingestion tools such as MikroScope"
      ],
      "repo": "https://github.com/mikaelvesavuori/mikrolog",
      "npm": "https://www.npmjs.com/package/mikrolog",
      "icon": "/assets/product-icons/mikrolibrary.svg"
    },
    {
      "id": "mikrometric",
      "name": "MikroMetric",
      "category": "Libraries",
      "url": "https://mikrosuite.com/libraries/mikrometric/",
      "path": "/libraries/mikrometric/",
      "mode": "NPM package",
      "tagline": "AWS Embedded Metric Format helpers for Lambda metrics.",
      "description": "MikroMetric helps Lambda services emit CloudWatch Embedded Metric Format-compatible metric logs without a large observability dependency.",
      "tags": [
        "Metrics",
        "AWS EMF",
        "Lambda",
        "Serverless"
      ],
      "features": [
        "Emit AWS EMF-compatible metric logs",
        "Lambda-oriented helper API",
        "Designed for lightweight serverless metrics",
        "Good fit for small operational signals"
      ],
      "repo": "https://github.com/mikaelvesavuori/mikrometric",
      "npm": "https://www.npmjs.com/package/mikrometric",
      "icon": "/assets/product-icons/mikrolibrary.svg"
    },
    {
      "id": "mikrosafe",
      "name": "MikroSafe",
      "category": "Libraries",
      "url": "https://mikrosuite.com/libraries/mikrosafe/",
      "path": "/libraries/mikrosafe/",
      "mode": "NPM package",
      "tagline": "Simple browser storage encryption helpers.",
      "description": "MikroSafe encrypts and decrypts local browser storage data for apps that need an extra protection layer around client-side values.",
      "tags": [
        "Encryption",
        "Web Crypto",
        "LocalStorage",
        "Browser"
      ],
      "features": [
        "Encrypt and decrypt local storage values",
        "Uses Web Crypto APIs",
        "Browser-focused helper library",
        "Useful for local-first apps with sensitive settings"
      ],
      "repo": "https://github.com/mikaelvesavuori/mikrosafe",
      "npm": "https://www.npmjs.com/package/mikrosafe",
      "icon": "/assets/product-icons/mikrolibrary.svg"
    },
    {
      "id": "mikroserve",
      "name": "MikroServe",
      "category": "Libraries",
      "url": "https://mikrosuite.com/libraries/mikroserve/",
      "path": "/libraries/mikroserve/",
      "mode": "NPM package",
      "tagline": "Minimal API server utilities built on Node primitives.",
      "description": "MikroServe provides a small ready-to-use API layer for Node services that should stay close to platform primitives.",
      "tags": [
        "API",
        "Server",
        "Node",
        "HTTPS"
      ],
      "features": [
        "Minimal Node API server surface",
        "HTTP and HTTPS-oriented primitives",
        "Useful for small self-hosted APIs",
        "Designed to remain understandable after installation"
      ],
      "repo": "https://github.com/mikaelvesavuori/mikroserve",
      "npm": "https://www.npmjs.com/package/mikroserve",
      "icon": "/assets/product-icons/mikrolibrary.svg"
    },
    {
      "id": "mikrosign",
      "name": "MikroSign",
      "category": "Libraries",
      "url": "https://mikrosuite.com/libraries/mikrosign/",
      "path": "/libraries/mikrosign/",
      "mode": "NPM package",
      "tagline": "Lightweight HMAC request signing.",
      "description": "MikroSign signs and verifies requests with HMAC primitives for services that need simple tamper-resistant request authentication.",
      "tags": [
        "HMAC",
        "Signing",
        "Security",
        "Webhooks"
      ],
      "features": [
        "HMAC request signing",
        "Zero-dependency runtime",
        "Useful for webhooks and service-to-service calls",
        "Small security helper for owned APIs"
      ],
      "repo": "https://github.com/mikaelvesavuori/mikrosign",
      "npm": "https://www.npmjs.com/package/mikrosign",
      "icon": "/assets/product-icons/mikrolibrary.svg"
    },
    {
      "id": "mikrotrace",
      "name": "MikroTrace",
      "category": "Libraries",
      "url": "https://mikrosuite.com/libraries/mikrotrace/",
      "path": "/libraries/mikrotrace/",
      "mode": "NPM package",
      "tagline": "JSON tracing helpers for serverless services.",
      "description": "MikroTrace emits structured JSON traces for services that need clearer request flow without adopting a full tracing platform.",
      "tags": [
        "Tracing",
        "JSON",
        "Lambda",
        "Honeycomb"
      ],
      "features": [
        "Structured JSON tracing",
        "Serverless-friendly runtime shape",
        "Useful for Lambda and Honeycomb-style workflows",
        "Small tracing helper for operational clarity"
      ],
      "repo": "https://github.com/mikaelvesavuori/mikrotrace",
      "npm": "https://www.npmjs.com/package/mikrotrace",
      "icon": "/assets/product-icons/mikrolibrary.svg"
    },
    {
      "id": "mikrovalid",
      "name": "MikroValid",
      "category": "Libraries",
      "url": "https://mikrosuite.com/libraries/mikrovalid/",
      "path": "/libraries/mikrovalid/",
      "mode": "NPM package",
      "tagline": "Small JSON validation for JavaScript objects.",
      "description": "MikroValid validates JSON-shaped data with a focused API for apps that need clear input checks without a sprawling schema framework.",
      "tags": [
        "Validation",
        "JSON",
        "Schema",
        "Objects"
      ],
      "features": [
        "Validate JSON-shaped objects",
        "Small schema validation surface",
        "Useful for APIs, CLIs, and config files",
        "Designed for direct, readable validation rules"
      ],
      "repo": "https://github.com/mikaelvesavuori/mikrovalid",
      "npm": "https://www.npmjs.com/package/mikrovalid",
      "icon": "/assets/product-icons/mikrolibrary.svg"
    },
    {
      "id": "canvas",
      "name": "MikroCanvas",
      "category": "Productivity",
      "url": "https://mikrosuite.com/canvas/",
      "path": "/canvas/",
      "onlineUrl": "https://canvas.mikrosuite.com",
      "mode": "Local-first",
      "tagline": "Fast local boards for diagrams, notes, sketches, and exportable visual thinking.",
      "description": "MikroCanvas is a lightweight local-first visual canvas for fast ad hoc thinking. It keeps boards in browser storage, exports portable JSON, SVG, and PNG files, and runs as a static web app.",
      "tags": [
        "Canvas",
        "Diagrams",
        "IndexedDB",
        "SVG export"
      ],
      "features": [
        "Infinite canvas with pan, zoom, dotted grid, and keyboard shortcuts",
        "Sticky notes, text, shapes, arrows, freehand drawing, and comment pins",
        "Selection, drag, resize, multi-select, duplicate, delete, bring-forward, and send-backward",
        "Board library with create, rename, duplicate, delete, import, export, undo, redo, SVG, and PNG export"
      ],
      "repo": "https://github.com/mikaelvesavuori/mikrocanvas",
      "docs": "/canvas/docs",
      "icon": "/assets/product-icons/mikrocanvas.svg"
    },
    {
      "id": "docs",
      "name": "MikroDocs",
      "category": "Productivity",
      "url": "https://mikrosuite.com/docs/",
      "path": "/docs/",
      "onlineUrl": "https://docs.mikrosuite.com",
      "mode": "Local-first",
      "tagline": "A calm Markdown workspace with local documents, search, backlinks, and export.",
      "description": "MikroDocs combines a fast editor, document library, outline, backlinks, local snapshots, and Markdown or DOCX file exchange without sending drafts to a hosted service.",
      "tags": [
        "Markdown",
        "DOCX",
        "IndexedDB",
        "Version history"
      ],
      "features": [
        "Focused Markdown editor with rendered overlay",
        "Document library, search, duplicate, delete, import, and backup flows",
        "Outline, backlinks, command palette, and find and replace",
        "Markdown and DOCX import/export"
      ],
      "repo": "https://github.com/mikaelvesavuori/mikrodocs",
      "docs": "/docs/docs",
      "icon": "/assets/product-icons/mikrodocs.svg"
    },
    {
      "id": "plan",
      "name": "MikroPlan",
      "category": "Productivity",
      "url": "https://mikrosuite.com/plan/",
      "path": "/plan/",
      "onlineUrl": "https://plan.mikrosuite.com",
      "mode": "Local-first or collaborative",
      "tagline": "Small Kanban boards with portable backups and optional sync when a team needs it.",
      "description": "MikroPlan starts with Do, Doing, and Done, then adds portable JSON backups, optional SQLite server mode, and live sync only when a shared board needs it.",
      "tags": [
        "Kanban",
        "IndexedDB",
        "SQLite option",
        "JSON export"
      ],
      "features": [
        "Draggable cards and columns",
        "Markdown-friendly notes, labels, dates, and checklists",
        "JSON import and export",
        "Optional magic-link auth and Server-Sent Events in API mode"
      ],
      "repo": null,
      "docs": "/plan/docs",
      "icon": "/assets/product-icons/mikroplan.svg"
    },
    {
      "id": "sheets",
      "name": "MikroSheets",
      "category": "Productivity",
      "url": "https://mikrosuite.com/sheets/",
      "path": "/sheets/",
      "onlineUrl": "https://sheets.mikrosuite.com",
      "mode": "Local-first",
      "tagline": "Local workbooks for grids, formulas, typed tables, saved views, and CSV/JSON exchange.",
      "description": "MikroSheets keeps workbook editing, formula work, typed tables, saved views, comments, and JSON or CSV exchange in a small local-first browser surface.",
      "tags": [
        "Spreadsheets",
        "Structured tables",
        "Formulas",
        "CSV"
      ],
      "features": [
        "Multi-sheet editing with freeform grids and structured tables",
        "Formula engine with references, errors, and cycle detection",
        "Typed fields, saved views, filters, grouping, sorting, and visibility",
        "Undo, redo, comments, revisions, CSV, and JSON import/export"
      ],
      "repo": "https://github.com/mikaelvesavuori/mikrosheets",
      "docs": "/sheets/docs",
      "icon": "/assets/product-icons/mikrosheets.svg"
    }
  ]
}
