Об этом проекте
Приложение для поиска кристаллических структур (Crystal Structure Search Application) — это микросервисная/событийно-ориентированная платформа, которая индексирует и осуществляет поиск кристаллических структур из Crystallography Open Database (COD). Проект создан на TypeScript, Node.js 22, Express, React 18, Vite, Zustand, MongoDB, Redis, RabbitMQ, Docker Swarm и Traefik. Предоставляет REST API (c14-api) и веб-интерфейс с серверным рендерингом (c14-web).
Конвейер обработки данных синхронизирует CIF-файлы через rsync (cod-to-disk), разбирает их для загрузки в MongoDB (disk-to-db) и строит индексы для поиска по авторам, названиям, формулам и фрагментам (structure-to-index). Дополнительные контейнеры обеспечивают плановое обслуживание, маршрутизацию запросов подструктур и фоновую обработку.
Разработка ведётся в монорепозитории с workspaces; команды включают npm install, npm run build, lint, test и dev. Развёртывание полностью автоматизировано через GitHub Actions и поддерживает CI, сборку Docker-образов и масштабирование на Docker Swarm. Проект распространяется под лицензией MIT.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.