/foːɾʲ/Irish, verbto help

O backend sobre o qual os seus agentes constroem.

Conteúdo estruturado e dados de aplicação, gerenciados juntos. Defina os seus modelos; o Fóir fornece a API, as ferramentas de edição, o login de clientes e o isolamento de tenants.

Start buildingRead the docs

  1. A construção

    Seu backend começa como um arquivo de configuração.

    Escreva você mesmo ou peça a um agente de código. Ele nomeia os seus modelos, os campos deles e como os clientes fazem login.

    O Fóir gera a API a partir dele.

    Modelos, campos, lookups e o login de clientes são linhas de configuração. Um push os transforma em uma API GraphQL.

  2. Console

    Sua equipe edita junto, em um console construído a partir dos seus modelos.

    Cada modelo ganha um editor com campos tipados, versões e uma prévia. Várias pessoas podem trabalhar no mesmo registro ao mesmo tempo e ver os cursores umas das outras.

  3. Ask Fóir

    Pergunte ao Fóir sobre os seus dados.

    O assistente no console conta os seus registros, compara as etapas e diz o que encontrou, com os números que usou.

    Depois peça que ele faça o trabalho.

    Ele busca, escreve e altera registros pelas mesmas ferramentas que você usa, e não pode fazer nada que o seu próprio papel não possa. O que ele escreve fica esperando como rascunho.

  4. Login e papéis

    O login já vem incluído.

    Um login hospedado para a sua equipe e os seus usuários: passkeys, verificação em duas etapas e login com Google, Apple, Shopify ou qualquer provedor OIDC.

    Um conjunto de usuários, em pools, com papéis.

    Um pool reúne as pessoas que podem fazer login em um projeto ou em uma organização. Uma associação dá um papel a um usuário, e todo papel é construído a partir da mesma lista de permissões.

  5. Registros

    O app lê com uma chave publicável.

    Ele roda na sua própria hospedagem e pede à API os produtos que qualquer pessoa pode ver.

    Os clientes fazem login, e um registro pode pertencer a um deles.

    O login é hospedado pelo Fóir. Um modelo pode tornar cada registro privado para o cliente que é dono dele.

    Uma escrita é segura para enviar duas vezes.

    Uma conexão fraca faz o app enviar o pedido de novo. Ele leva a mesma chave de idempotência, então o Fóir responde com o primeiro resultado e não altera nada.

    Ninguém mais consegue ler.

    Um segundo cliente envia a mesma consulta e não recebe nada. A regra é imposta no banco de dados, então uma verificação esquecida não vaza uma linha.

  6. Publicação

    O conteúdo é editado de qualquer lugar.

    Um editor adiciona uma imagem pelo celular. Ela é salva como rascunho, então o app continua mostrando a página publicada.

    Publique, e o app já tem.

    O conteúdo é resolvido a cada requisição, então a próxima leitura devolve a nova versão. Nada é reconstruído nem reimplantado.

  7. Personalização

    O Fóir decide qual versão cada visitante recebe.

    Um site, um app e um agente enviam a mesma leitura. Um visitante que nenhuma regra alcança recebe o padrão.

    Ele descobre quem está perguntando.

    A localização vem da requisição e os segmentos vêm do perfil do cliente, no servidor. Este gastou mais de £1,000, então a entrada VIP é servida.

    As regras se combinam, e a prioridade decide.

    Este visitante está em Paris e já comprou tênis de corrida antes. Três entradas correspondem, e a primeira delas é a servida.

    Uma variante pode mudar um campo e deixar o resto.

    Ela pode substituir um registro inteiro ou sobrescrever um único campo ou um parágrafo. Os editores escrevem cada versão no mesmo editor e a visualizam como o público a quem ela se destina.

    Um visitante não pode se passar por outra pessoa.

    A localização e os segmentos nunca são tomados do chamador. Editar a requisição não muda nada, e o padrão volta.

  8. Rollouts

    Agende uma campanha e publique-a como um todo.

    Um rollout publica um conjunto de registros juntos no horário que você escolher. Pause-o, tente de novo o que falhou ou reverta tudo.

  9. Chaves

    Cada chave vê apenas a API que lhe foi concedida.

    Uma mutation que uma chave não pode executar não existe no schema que ela recebe, então não há nada para uma chave vazada descobrir.

  10. Organizações

    Transforme o app que você construiu em um SaaS.

    Um segundo cliente quer o que você construiu para o primeiro. Adicione-o como uma organização: os mesmos modelos e o mesmo código, com os próprios dados, os próprios membros e o próprio login.

    Nenhum cliente consegue ler os dados de outro.

    A credencial define o limite antes de uma consulta chegar a uma linha, e a regra roda como row-level security no banco de dados. Uma verificação esquecida não vaza nada.

  11. Paywall

    Adicione um paywall ao seu app.

    Dê a uma operação uma cota por usuário ou por organização. Ao atingi-la, a pessoa pode pagar, pelo Stripe na web ou por uma loja de apps no celular, e a assinatura dela eleva o limite. O dinheiro vai direto para a sua própria conta.

  12. Operações

    Sua lógica roda em código que é seu.

    Descreva o que você precisa e o Fóir redige o contrato, depois entrega ao seu agente de código um prompt. O agente o escreve e faz deploy na sua hospedagem. O Fóir nunca guarda o seu código.

    Toda chamada chega assinada e com escopo.

    O Fóir identifica quem está chamando e no que a operação pode mexer, e envia isso com a chamada. O cliente tipado dele transforma qualquer coisa fora das concessões em um erro de compilação. Cada execução é registrada, e uma nova tentativa leva a mesma chave de idempotência, então nada acontece duas vezes.

  13. Segredos

    Os segredos ficam no cofre.

    Seu código guarda uma referência e nunca a chave. O Fóir a preenche quando chama a sua função, apenas para o projeto ao qual a chamada pertence, e registra cada leitura.

    Quando um agente precisa de uma chave, ele pede a uma pessoa.

    O agente abre uma tarefa no Work e espera. Alguém adiciona a chave pelo celular, ela vai direto para o cofre, e o agente continua com uma referência que pode usar e um valor que nunca vê.

  14. Hooks

    Reaja quando algo acontece.

    Um hook executa uma operação quando um registro é criado, alterado ou publicado, ou quando outra operação termina. A entrega é pelo menos uma vez, e qualquer entrega pode ser reenviada.

  15. Notificações

    Avise os clientes no momento em que algo muda.

    Uma notificação sai como push e chega à caixa de entrada do próprio app. Cada cliente escolhe as categorias sobre as quais quer ser avisado, e o Fóir respeita a escolha.

  16. E-mail

    E-mail que lê os seus dados.

    Um template é preenchido a partir dos seus registros no momento do envio. Envie sobre um registro ou para um segmento inteiro, em um agendamento, com consentimento aplicado e aberturas rastreadas.

  17. Mídia

    Faça upload de uma imagem uma vez. Cada tela recebe a sua.

    Um campo de imagem devolve WebP e AVIF nos tamanhos que uma tela pede, com um blurhash para exibir enquanto a imagem carrega.

  18. Busca

    Busque por significado, dentro do que o chamador pode ler.

    Os registros recebem embeddings à medida que são gravados. Uma pergunta encontra a correspondência mais próxima, e um registro privado nunca aparece para outra pessoa.

  19. Por perto

    Encontre o que está por perto.

    Um campo de geoponto torna os registros pesquisáveis por distância, de modo que um app pode perguntar o que está a até dois quilômetros de onde alguém está.

  20. Trabalho

    Uma nota no seu site no ar vira uma tarefa.

    Qualquer pessoa que você autorizar pode deixar uma nota em uma página. Ela fica ancorada no registro por trás da página, então chega ao Work com a coisa certa anexada.

    Pessoas e agentes decidem o que vai ao ar, em um só lugar.

    Atribua a tarefa a um colega ou passe-a ao Fóir. O agente escreve rascunhos livremente, e nada vai ao ar até que uma pessoa aprove a publicação.

  21. Agentes

    Dê a um agente um trabalho permanente.

    Um agente de longa duração acompanha o que está acontecendo e mantém o seu conteúdo atualizado por meio do MCP. A chave dele limita o que pode alterar, então ele age sozinho dentro desses limites.

  22. Seu app no console

    O admin do seu próprio app, dentro do console.

    Um app declara uma página e as permissões exatas com que atua. O console o mostra na navegação e entrega a ele um token, de modo que nenhuma senha ou cookie atravessa.

  23. Integrações

    Conecte os sistemas que você já usa.

    Um app de integração mapeia os campos de outro sistema nos seus modelos e mantém os registros em sincronia. Uma mudança lá atualiza o mesmo registro aqui.

  24. Exportação

    Seus dados são seus para levar.

    Um comando exporta todos os registros para um banco de dados Postgres que é seu.

  25. Começar

    Crie um projeto e defina os seus modelos.

    O resto já está lá.