Existem muitas tecnologias disponíveis hoje em dia, vemos novos frameworks JS sendo lançados a cada mês e, às vezes, se você não escolher a pilha técnica certa desde o início, será difícil dimensioná-la mais tarde. Portanto, neste artigo, eu compartilharei com vocês a tecnologia e a pilha que uso para desenvolver meu Micro SaaS.
Dividi as coisas em Desenvolvimento Front-end, Desenvolvimento Back-end, Banco de Dados, Pagamentos, Nuvem e Segurança para entender melhor. Vamos verificá-los um por um.
Desenvolvimento Front-end
Para o desenvolvimento front-end, eu prefiro usar o Vite com React JS, 90% das vezes. Há alguns projetos em que construí usando Next JS. Mas os projetos que construí na maioria das vezes requerem bibliotecas JS nativas como window, location, etc.
Também, por simplicidade, venho usando templates já construídos do MUI, eles me economizam muito tempo, pois não sou bom no front-end e quero criar uma versão MVP do SaaS para validar e verificar minha ideia. Depois que sentir que as coisas estão fluindo e o SaaS tem algum potencial, poderemos dar uma olhada mais aprofundada no estilo.
Na maioria das vezes, durante o desenvolvimento, eu desativo as verificações do ESLint, cabe a você se preferir mantê-las ativadas, o que ajuda a escrever um código limpo e bom para o seu SaaS.
Desenvolvimento Back-end
Veja, agora no desenvolvimento back-end, se estou construindo um projeto SaaS complexo com muitos recursos, eu usaria o Nest JS, que é uma versão mais avançada do Express JS.
O framework é mais confiável e escalável do que usar o Express JS. Mas se estou desenvolvendo um SaaS que tem menos recursos ou é um Micro SaaS, você pode tentar usar este Node JS – framework Express JS.
Prefiro escrever o código em JS para o Micro SaaS e, para aqueles projetos em que existem toneladas de recursos e são maiores que o Micro SaaS, prefiro usar TypeScript.
Às vezes, também para economizar tempo e construir as operações CRUD mais rápido, eu uso o CMS headless como o Strapi.
Ele também fornece integrações com outras terceiras partes, como Stripe e Mailchip, economizando meu trabalho e tempo lá também.
Bancos de Dados
Para o banco de dados, prefiro usar o MongoDB para a maioria dos meus projetos e, em algum lugar onde preciso coletar a atividade dos usuários, prefiro usar o PostgreSQL.
Também uso o Redis, se necessário, para cache, e todos os meus bancos de dados são de provedores como PlanetScale, Redis.com, MongoDB.com e, às vezes, se eu precisar de um serviço de filas como o Kafka, prefiro o Upstash para isso.
Pagamentos
Para assinaturas e pagamentos, sempre uso o Stripe para gerenciá-los. Além disso, se você precisar de documentação fiscal e arquivamento mais complexos, também pode tentar usar o Lemon Squeezy. Eu o usei em meu último projeto e o achei útil.
Hospedagem e Implantação
Como não sou um bom engenheiro de DevOps, prefiro usar principalmente plataformas como Heroku, Render e Firebase para minhas implantações.
Além disso, para alguns projetos maiores de meus clientes, venho usando Azure e GCP com créditos neles.
Mas se seu SaaS estiver em MVP e exigir uma arquitetura menos complexa, você pode tentar usar o Vercel ou o Netlify para a implantação do front-end, o Heroku ou o Render para a implantação de APIs/Back-end, o Wasabi para Armazenamento em Nuvem e o Firebase Cloud Function/Vercel Edge Functions para funções sem servidor. Também uso o DigitalOcean se você quiser manter tudo em um só lugar e quiser menos complexidade do que o Azure ou o AWS.
Para modelos de IA e suas implantações, prefiro usar o Runpod para suas implantações.
Além disso, se você quiser usar as APIs da Open AI, também pode usá-las no Azure com os créditos ou, se eu precisar usar outros modelos reconstruídos, uso o Together.ai.
Segurança
Para a segurança do meu SaaS, primeiro você precisa garantir que o banco de dados não seja público, então uso principalmente o Cloudflare para segurança, ele protege meu SaaS de muitos ataques e invasões.
Além disso, também para logins e monitoramento, uso NewRelic e Site 24×7 para manter os logs e notificações. Também, se você quiser verificar mais sobre notificação e gerenciamento de logs do seu SaaS, fique à vontade para conferir este meu artigo.
Isso pode dar a todos vocês uma boa ideia da pilha técnica que você pode tentar seguir, mas certifique-se de fazer uma boa pesquisa sobre os requisitos técnicos para o seu SaaS antes de tomar qualquer decisão.