Coswik.

Open-source альтернатива Notion для self-hosted: блочный редактор, Databases уровня Notion, real-time collaboration, compliance для РФ

Ключевые тезисы.

01Self-hosted с первого дня — не SaaS с private-cloud-опцией, а изначально продукт под полный контроль данных клиентом
02Databases Notion-уровня: 21 тип свойств (включая formulas с AST-парсером и rollups), 6 видов (Table/Board/Calendar/Gallery/Timeline/List), sub-items, linked databases
03Append-only audit-log с SHA-256 hash-chain, защищён DB-триггерами от подделок — соответствует 152-ФЗ, 187-ФЗ, требованиям ФСТЭК
04Real-time совместное редактирование через Hocuspocus + y.js — multi-cursor, conflict-free, отдельный микросервис в монорепо (@coswik/collab-server)
05Глубокие интеграции с РФ-экосистемой: 1С:УТ 12 (OData v3), Битрикс24 (REST+OAuth), VK Teams, Пачка, плюс двухпроходной Notion Import с 95%+ покрытием
06AI с выбором провайдера: OpenAI, Anthropic, Groq, Google, Mistral, локальные модели через Ollama, GigaChat для российских инсталляций — никакого vendor lock-in на AI
07Лицензия AGPL-3.0: любые модификации, включая развёртывание как сервиса, должны быть опубликованы под той же лицензией — гарантия долгоживания проекта

23+.

типов блоков редактора

21.

тип свойств databases

99+.

unit-тестов passing

Статус

Beta

Год

2025

Категория

Web App

Стек

Next.js 16React 19TypeScriptProseMirror + Tiptap v3Better AuthPrisma 6PostgreSQL 16pgvectorHocuspocus + y.jsBullMQ + RedisMeilisearchai-sdk v6Tailwind 4shadcn/uiNx + pnpm

Теги

Open SourceAGPL-3.0Self-hostedNotion AlternativeBlock EditorReal-time CollaborationDatabasesAudit LogCompliance1С Integration

Coswik — корпоративная open-source альтернатива Notion, спроектированная как self-hosted с первого дня. Не SaaS-сервис с private-cloud-опцией, а изначально продукт, который разворачивается на серверах клиента, держит данные внутри организации и хранит ключи шифрования локально. Создан под compliance-требования российского и международного рынков: банки (152-ФЗ, 187-ФЗ), госсектор, медицина (ФЗ-323), промышленные компании с гостайной. Лицензия AGPL-3.0 гарантирует, что любые модификации, включая развёртывание как сервиса, должны быть опубликованы под той же лицензией — никакого vendor lock-in.

Проблема и контекст

SaaS-Notion удобен, но недоступен для критичных сегментов рынка: санкции (после 2022 года множество российских организаций потеряли доступ), compliance-требования (хранение ПДн на территории РФ по 152-ФЗ, защита значимых объектов критической ИИ по 187-ФЗ, требования ФСТЭК к сертифицированным ОС), и стратегическое желание держать критичные данные на собственной инфраструктуре. Существующие self-hosted альтернативы (Outline, AppFlowy, Affine) или не дотягивают до уровня Databases Notion, или не имеют интеграций с экосистемой РФ. Coswik закрывает обе ниши: полноценный блочный редактор и databases уровня Notion плюс глубокие интеграции с 1С, Битрикс24, VK Teams и Пачкой.

Что построено

Полноценная замена Notion: блочный редактор на ProseMirror + Tiptap v3 с 23+ типов блоков (text, headings, lists, todos, code, callouts, embed, files, columns, dividers, и так далее), autosave каждые 500мс с flush-on-unmount, slash-меню, drag-handles. Databases Notion-уровня: 21 тип свойств (text, number, date, status, relations, formulas, rollups, multi-select, ...), 6 видов (Table, Board, Calendar, Gallery, Timeline, List), AST-парсер для формул, sub-items и связанные базы. Pages с ltree-иерархией (GIST-индекс для ancestor/descendant queries). Real-time совместное редактирование через Hocuspocus + y.js с multi-cursor. Полнотекстовый поиск через Meilisearch, семантический поиск через pgvector (RAG), AI с выбором провайдера (OpenAI, Anthropic, Groq, Google, Mistral, локальные модели через Ollama, GigaChat для российских инсталляций).

Архитектура: 2 apps + 15 packages

Монорепо на pnpm 10.23 workspaces + Nx 22.6 для оркестрации. Два приложения: `@coswik/app` (основное Next.js 16 веб-приложение на :3000 со всей логикой — auth, workspaces, pages CRUD, databases engine, API, UI shell, notifications, integrations) и `@coswik/collab-server` (отдельный Hocuspocus-сервер для real-time через y.js — отдельный микросервис, без него редактирование одиночное). Пятнадцать пакетов: `core` (ядро редактора, ProseMirror schema, Tiptap v3 extensions, y.js, 23+ блока — публикуется как npm), `react` (React-обёртка с hooks и компонентами), три альтернативных UI-набора (`shadcn`, `ariakit`, `mantine`), `code-block`, `multi-column`, `ai` и `ai-server`, экспортёры `pdf-export`, `docx-export`, `odt-export`, `email-export`, `server-util`, `dev-scripts`.

Стек

  • Frontend: Next.js 16, React 19, TypeScript 5.9, Tailwind 4.1 с fluid responsive scaling, shadcn/ui на Radix primitives, next-themes
  • Editor: ProseMirror + Tiptap v3 + Prosemirror-y (yjs), Hocuspocus client v2.13
  • Backend: Node.js 22, Better Auth 1.4 (email, magic-link, 2FA TOTP с recovery codes, SSO через SAML/OIDC, LDAP), Prisma 6.1, PostgreSQL 16 с pgvector + ltree + pg_trgm
  • Real-time: y.js 13.6, Hocuspocus server 2.13, WebSocket
  • Storage: AWS S3 SDK (или MinIO self-hosted), y-indexeddb для offline
  • Search & AI: Meilisearch (fulltext), pgvector (semantic / RAG), ai-sdk 6.0 (Anthropic, OpenAI, Groq, Google, Mistral, openai-compatible)
  • Queue: BullMQ 5.34 + Redis 5.4 для embed jobs, cleanup, sync, digest
  • Testing: Vitest 4.1 (unit, 99+ тестов), Playwright (e2e + component)
  • Observability: OpenTelemetry SDK, Sentry, Prometheus + Grafana
  • DevOps: Docker Compose (dev), Docker Alpine (prod), Dockerfile.astra (ФСТЭК), Helm chart для Kubernetes

Compliance и безопасность

Append-only audit-log с SHA-256 hash-chain: таблица `audit_events` защищена DB-триггерами от UPDATE/DELETE, каждая запись содержит хеш предыдущей — невозможно подделать. CLI `pnpm audit:verify <workspaceId>` проверяет целостность цепи. Соответствует 152-ФЗ (защита ПДн), 187-ФЗ (значимые объекты КИИ), требованиям ФСТЭК. RBAC и авторизация через CASL + Prisma. API-ключи с rate-limit per-key и истечением. Webhooks с HMAC-SHA256 подписью. SSO через Better Auth plugins (SAML 2.0, OIDC), LDAP sync для организационной структуры → workspace roles, 2FA TOTP с 5 одноразовыми recovery codes. Astra Linux SE 1.7 совместимость через dedicated Dockerfile.astra, SSRF-защита (CGNAT, IPv6-mapped, NAT64), отключение deprecated алгоритмов.

Интеграции с экосистемой РФ

  • Notion Import: двухпроходной pipeline (метаданные → ID-map → S3-миграция медиа → контент с маппингом). Резюмирование на ошибке. 95%+ покрытие на реальных воркспейсах (включая 1k+ страниц, комментарии, attachments)
  • 1С:Управление торговлей: read-only sync через OData v3 — контрагенты, номенклатура, заказы. Presets для УТ 12, BullMQ repeatable jobs для периодического sync
  • Битрикс24: REST + OAuth, sync Сделок / Лидов / Контактов → database в Coswik, webhook + OAuth flow
  • VK Teams + Пачка: notification routing в корпоративные чаты, бот для сводок и дайджестов
  • Уведомления: Web Push (PWA), email через @react-email, in-app inbox, digest-письма через BullMQ repeatable, DND-расписание (не беспокоить 22:00–08:00 через Intl.DateTimeFormat)
  • Экспорт: PDF, DOCX, ODT, email — отдельные пакеты в монорепо

Быстрый старт (15 минут)

Один скрипт `curl -fsSL .../install-quickstart.sh -o coswik.sh && ./coswik.sh` интерактивно клонирует репозиторий, ставит зависимости, поднимает docker-compose стек, запускает setup-wizard, применяет миграции, опционально создаёт demo-страницы. Локальная разработка: `pnpm install` + `pnpm docker:up` + `pnpm db:migrate:dev` + `pnpm dev` (Next dev на :3000). Команды: `pnpm build` (Nx), `pnpm test`, `pnpm e2e`, `pnpm lint`, `pnpm format`.

Статус и дорожная карта

v1.0 фактически готова в кодовой базе (99+ unit-тестов, все passing). Завершены 14 из 26 спринтов Q2 2026: фундамент (auth, БД с 32 Prisma-моделями, RBAC, audit-log, observability), редактор (BlockNote-форк, autosave, 23+ блока, drag-handles, slash-меню), pages CRUD с ltree-иерархией, Databases (21 свойство, 6 видов, AST-формулы, rollups), Notion-импортер (95%+ покрытие), enterprise security, self-hosted сборка (Docker Compose, Helm, Dockerfile Alpine + Astra Linux), i18n (ru/en), RAG с pgvector. Оставшиеся W15–W26: финализация Hocuspocus-синхронизации, RAG-UI, polish Databases (Templates, Linked DBs, Sub-items, Sharing), интеграции 1С / VK Teams / Битрикс24 / Astra compat, пилот с 3-5 клиентами, monitoring + SLO, GA v1.0.0. KPI пилота: ≥3 клиента на self-hosted, импорт 1k страниц < 30 минут, p95 открытия страницы < 200 мс, Docker Compose setup < 15 минут, backup/restore RTO < 30 минут.

Self-hosted — это не «опция Enterprise». Это единственный режим, в котором мы работаем.
Открыть проект

Поделиться

следующая
CosEdu