sobre

Um alicerce não aparece — ele só evita que o resto desabe.

AlicerceLabs existe pra ser a parte chata de todo produto: IP, CEP, DNS, email, agendamento. Coisas que quase todo backend brasileiro reimplementa, mal, na primeira semana de projeto.

about

A foundation doesn't show — it just keeps everything else from collapsing.

AlicerceLabs exists to be the boring part of every product: IP, CEP, DNS, email, scheduling. Things almost every Brazilian backend reimplements, badly, in its first week.

O que é

What it is

Uma API só, cinco blocos: geolocalização de IP, CEP, DNS, verificação de email e jobs agendados. Todos com o mesmo formato de resposta, a mesma autenticação por token e as mesmas regras de limite — aprende uma vez, usa em todas.

Nasceu de projetos reais que precisavam da mesma coisa de novo: validar um CEP, saber de onde vem um IP, checar se um domínio existe antes de confiar nele. Em vez de reescrever isso a cada produto novo, virou um serviço à parte.

One API, five blocks: IP geolocation, postal codes, DNS, email verification and scheduled jobs. All with the same response format, the same token auth and the same rate-limit rules — learn it once, use it everywhere.

It came out of real projects that kept needing the same thing again: validating a postal code, knowing where an IP comes from, checking a domain exists before trusting it. Instead of rewriting that for every new product, it became a service of its own.

Como funciona por dentro

How it works underneath

Duas peças por API: um worker que roda offline preparando dados (baixa a base de CEP dos Correios, os bancos de geolocalização de IP, as listas de bloqueio de DNS), e a API em si, que serve essas respostas rápido — sem depender de terceiros no caminho crítico sempre que dá pra evitar. IP é a exceção parcial: quando o IP não está em cache, ela consulta uma cadeia de provedores externos e guarda o resultado por 6 meses.

O limite de uso é contado no Redis, por combinação de API + IP de quem chama + operação — create de um job e list de jobs têm cotas independentes, por exemplo. Isso é intencional: dá pra afinar o limite de uma operação sem mexer nas outras, sem redeploy.

Two pieces per API: a worker that runs offline preparing data (downloads the postal service's database, the IP geolocation databases, the DNS blocklists), and the API itself, which serves those answers fast — without depending on a third party in the critical path whenever that's avoidable. IP is the partial exception: when an IP isn't cached, it queries a chain of external providers and keeps the result for 6 months.

Usage limits are counted in Redis, per combination of API + calling IP + operation — creating a job and listing jobs have independent quotas, for instance. That's intentional: any single operation's limit can be tuned without touching the others, with no redeploy.

Status

Status

Em desenvolvimento, grátis por enquanto. Endpoints, formatos de resposta e limites podem mudar sem aviso — não é o lugar certo pra apostar a produção de algo crítico ainda. À medida que estabiliza, isso muda.

In active development, free for now. Endpoints, response formats and limits may change without notice — not the place to bet something critical in production just yet. That changes as it stabilizes.

O que vem a seguir

What's next

Rastreio de encomendas é a próxima peça no forno — consulta de status de entrega dos Correios, no mesmo formato das outras APIs. Ainda não tem data.

Depois dela, a ideia é continuar preenchendo a mesma lacuna: blocos de infra pequenos, chatos de fazer direito, que qualquer produto brasileiro acaba precisando — sem prometer nomes específicos ainda, pra não criar expectativa em cima de algo que pode mudar de forma até sair.

Package tracking is next in the oven — delivery status lookups from the Brazilian postal service, in the same format as the other APIs. No date yet.

After that, the plan is to keep filling the same gap: small infrastructure blocks, tedious to get right, that almost every Brazilian product ends up needing — not naming specifics yet, so as not to set expectations around something that might still change shape before it ships.