Sobre o projeto

Crystal Structure Search Application é uma plataforma de microsserviços/eventos que indexa e pesquisa estruturas cristalinas a partir do Crystallography Open Database (COD). Construído com TypeScript, Node.js 22, Express, React 18, Vite, Zustand, MongoDB, Redis, RabbitMQ, Docker Swarm e Traefik, oferece uma API REST (c14-api) e uma interface web renderizada no servidor (c14-web). O pipeline de dados sincroniza arquivos CIF via rsync (cod-to-disk), faz parsing para o MongoDB (disk-to-db) e constrói índices pesquisáveis para autores, nomes, fórmulas e fragmentos (structure-to-index). Contêineres adicionais tratam manutenção agendada, roteamento de busca de subestrutura e processamento de workers. O desenvolvimento usa um monorepo com workspaces; os comandos incluem npm install, npm run build, lint, test e dev. O deploy é totalmente automatizado via GitHub Actions, suportando CI, builds de imagens Docker e escalonamento no Docker Swarm. O projeto é open-source sob a licença MIT.