Sobre o projeto

Esta é uma solução serverless de analytics para website usando CDK que implementa uma infraestrutura completa na AWS. Cria um frontend dashboard, APIs backend e pipelines de ingestão para rastrear tráfego e interações do usuário. Projetado para sites com tráfego baixo a moderado (até 10M de visualizações de página), enfatiza custo mínimo, privacidade (sem PII armazenada) e facilidade de implantação. Os recursos incluem tracking de visualizações de página com tempo na página, tracking de eventos, detecção de anomalias com alertas, suporte a domínio customizado e três opções de autenticação (nenhuma, basic auth, AWS Cognito). Rastreia referrers, geolocalização por país/cidade, tipo de dispositivo, parâmetros UTM e query parameters. Detecção de bots está integrada. A integração está disponível via um snippet JavaScript standalone ou um SDK para uso em qualquer frontend framework. A arquitetura consiste em um frontend Vue 3 hospedado em S3/CloudFront, um backend TypeScript usando Lambda Function URLs e tRPC, e uma API de ingestão que faz buffer de eventos via Kinesis Firehose para arquivos Parquet particionados no S3. Os dados são consultados via Athena. Dados de localização são derivados do MaxMind GeoLite2 sem armazenar IPs. A implantação requer `aws-cdk` e `aws-cdk-lib` > 2.79.1. Após instalar o pacote npm, usuários definem o construct na sua stack CDK com configuração para sites, origins, autenticação, domínio, observabilidade e detecção de anomalias. A configuração do lado do cliente envolve adicionar uma tag script ou inicializar o SDK na aplicação. Estimativas de custo são fornecidas para vários níveis de tráfego, com projeções no pior caso significativamente maiores que os custos reais devido aos processos diários de limpeza de dados. Atualizações da v0 para v1 envolvem breaking changes relacionados a particionamento e IDs de DNS records. A documentação inclui decisões de design, diretrizes de contribuição e breakdowns detalhados de custo. Uma demo ao vivo está disponível.