Executando verificação de segurança...
5

Pitch: Como criei o meu projeto dos sonhos antes mesmo de ser capaz – Daykeeper.app

Conheço muita gente que sempre espera para o momento certo para tomar alguma atitude. Seja estar melhor financeirmente, aprender mais, qualquer coisa... sempre adiando o começo daquele tão sonhado passion project.

Eu agradeço por não ter tido esse pensamento, pois aos 15 anos em Fevereiro de 2024 comecei a criar uma rede social inteira inspirada em um daily journal, chamei de Daykeeper.

Não sabia programar bem na época. Já tinha feito alguns projetos, mas nem tinha conhecimento direito em backend. Perguntei em diversos foruns, reddit e discord se valia a pena e a quantidade de nãos que escutei foi absurda. Não pois era impossível, não pois tinha muita coisa que não dava para lidar, não pois eu não tinha conhecimento... eu estava prestes a me mudar para os Estados Unidos, como eu ia fazer? Comecei mesmo assim.

O desenvolvimento

Início

Nos primeiros meses, não preciso falar que eu não tinha ideia do que estava fazendo.
Primeiro, eu queria fazer um projeto estilo wikipedia para guardar historias de pessoas, pois queria um projeto pessoal para usar na aplicação de faculdade quando me mudasse. Com o tempo, a ideia foi se desenvolvendo. Comecei só com um banco de dados MongoDB e uma API simples, depois senti a necessidade de ter fotos, vídeos, calendário, verificacões mais precisas... todos esses foram desafios que precisei passar

Com o tempo

Após algumas semanas, mudei o nome para Daykeeper. Comecei a desenvolver o app. Também precisava de um sistema para lidar com emails, usei o nodemailer. Com as fotos e vídeos, não podia deixar qualquer usuario postar o que quisesse, então comecei também a usar o AWS Rekognition para verificar imagens e vídeos, então useu uma queue com BullMQ and Redis para lidar com a verificação sem problemas de performance além de diversos outros problemas relacionado a medias que detalho mais nesse post..

Também, lembrando que era uma rede social, criei um sistema de likes e comentários. Mas não podia ser só uma rede social comum, também era um diário, então também fiz um sistema de calendário inspirado no Bullet Journal, criando sistema de tarefas e eventos que poderiam ser compartilhados com amigos, lidando com datas e time zones com o date-fns-tz

Ideias descartadas

O desenvolvimento do Daykeeper não foi coberto de maravilhas, muito longe disso. Como falei, não tinha experiência com programação e precisava refazer a mesma coisa diversas vezes até ficar minimamente aceitável para um projeto em produção. Junto disso, muitas ideias também foram criadas e descartadas, como:

  • Sistema de Stories como o Instagram
  • Perguntas Diárias para todos os usuários
  • Reações com emogies no lugar de likes
  • Sistema de localização e marcar lugares (fora do orçamento)
  • Notas para Bullet Journal (retirado ontém pois parecia muito com o post normal)
  • Diversos sistemas de login/auth diferentes

Isso sem contar das diversas vezes que tinha feito algo que não era escalável.
A ideia de uas MongoDB também foi uma escolha que poderia ter sido ruim, porém criei um sistema próprio de hierarquia que se assemelha muito a um banco de dados SQL padrão para manter a consistência dos dados.
Também, nesse tempo, tive que aprender a estruturar meu projeto, a manter boas práticas de programação e a criar um código mais legível. Podem me julgar, mas aprendi muito com o livro Clean Code para isso.

A Stack Final

No final, terminei com uma Stack simples, porém que funcionou para mim:

Runtime/server: node, express, helmet, cors
DB/ODM: MongoDB via mongoose
Queue/cache: Redis via ioredis, jobs via BullMQ
Auth/session: custom Access/Refresh Tokens with help of Passport and Google SDK
Media/storage: Bucket S3, multer
Notifications: firebase-admin, custom
Email: nodemailer

A Ideia Final

Depois de tudo isso, finalmente tive a ideia final do Daykeeper

Daykeeper, Uma rede social no formato de diário para ajudar pessoas a manterem controle sobre suas vidas

A ideia é simples, geralmente não mantemos controle sobre nossas vidas. Dias são apenas números, não nos lembramos de momentos que acabaram de acontecer pois não prestamos atenção em nada mais, quando menos percebermos, pessoas irão paritr, momentos irão passar e temos o perigo de terminar no arrependimento.
Daykeeper pega um ambiente familiar, o de uma rede social, e coloca em um ambiente de diário, te dando motivação para continuar. Não se tornou apenas um projeto pessoal no final, mas algo necessário.

Minha vida durante tudo isso

A Mudança

Como disse antes, comecei a desenvolver o Daykeeper para ser um projeto que eu poderia mostrar para faculdades nos EUA. A ideia surgiu em Dezembro de 2025 e comecei a desenvolver em Fevereiro de 2024 aos 15 anos. Estava prester a me mudar para os Estados Unidos, algo que minha familia já eestava a quase dois anos planejando. TInha acabado o 9 ano e não entrei no ensino médio no Brasil, passei de Dezembro de 2023 até Agosto de 2024 sem aulas esperando vir para os EUA. Me mudei dia 9 de Maio de 2024, passei um mês viajando pelos Estados Unidos, passando um tempo em Rhode Island e, depois, voltei para ficar em Orlando. Durante todo esse tempo, fazia questão de olhar todos os dias para o Daykeeper.

Minha vida nos EUA

Em Julho de 2024, comecei também a jogar Futebol Americano, o que tinha se tornado meu foco durante esse ano de 2024-25. Entrei em uma escola privada de elite em Orlando e meu mundo mudou completamente. Precisei aprender uma lingua nova, treinava todos os dias enquanto tentava me adaptar ao novo sistema de ensino. Era um mundo novo, oportunidades novas, eu estava feliz. Mais do que isso, vi o quão importante o Daykeeper iria ser par a minha vida, porém não estava nem perto de termina-lo nesse momento.
Nessa escola, também, iria começar o IBDP, the International Baccalaureate (IB) Diploma Programme , ou seja, aulas de faculdade enquanto estava na escola. Junto disso, antes de começar, precisava fazer um Personal Project, um projeto que a minha escola deu um ano para os alunos concluirem, onde muitos fizeram pequenas empresas ou organizações.

Para não perder essa oportunidade, criei uma landing page para o Daykeeper e apresentei-o como meu Personal Project nesse ano. Não estava funcional, era apenas a landing page com o a API inteira no Postman para quen quiser testar. Mesmo assim, foi um passo imenso no caminhar do projeto.

O Daykeeper Hoje

De um tempo para cá, precisei acelerar o desenvolvimento do Daykeeper. Estou no final do meu ano Junior, irei aplicar após agosto desse ano, preciso resolver muita coisa até lá e esse será meu principal projeto na minha aplicação.

O Daykeeper já funciona e está na versão BETA. Ele é e sempre será Completamente gratuito, visto que é um projeto pessoal, além de ter seu código público. Estou arcando com os custos por conta própria por enquanto.

Hoje, o projeto já tem algumas funções:

- Login / Registro
- Confirmar Email
- Sistema de Esqueci a senha

- Personalização de Perfil, timezone, etc
- Streaks
- sistema de Follow / Following / Friends
- Contas públicas ou privadas
- Follow Requests para contas privadas

- Posts com fotos e/ou vídeos
- Likes
- Comentários
- Likes em comentários, responder comentários, like em respostas
- Verificação por IA automática de fotos e vídeos
- Editar posts, tasks ou eventos
- Notificações

- Criação de Eventos ou Tasks no seu calendário
- Posts/Tasks/Eventos privados, publicos ou para Close Friends
- Tasks diárias como templates na criação de tasks
- Feed avançado, calendario com historico de atividade no perfil

- Close Friends system (como Instagram)
- Bloquear usuários
- Sistema de admininstradores / reports
- Gerenciamento de sessões logadas na sua conta

- Design Responsivo

E o melhor, todo o código está público, então você pode ver qualquer coisa:

  • Este é o código da API do Daykeeper
  • Este é o código do WebApp do Daykeeper (Daykeeper.app)
    Além de outros repositórios, como a documentação da API e o Aplicativo Mobile, que ainda estou trabalhando.
    Qualquer novo PR ou contribuição são extremamente bem vindos

Nesses 2 anos, gastei mais de 5000 reais com design, logo, servidor, testes, etc... Mas valeu a pena

O Daykeeper, para mim, é muito mais do que apenas um projeto pessoal, mas um reflexo de quem eu sou como desenvolvedor. Mesmo passando por diversos momentos, saber que mantive a consistência durante esse tempo é algo que me faz ter orgulho de ter começado.

Por isso, afirmo e reafirmo:

Comece mesmo sem se sentir capaz, pois o pior que pode acontecer é você continuar exatamente onde já está.

Carregando publicação patrocinada...
2
1
2

Existe uma tendência da gen-z não usar redes sociais como a sua, estão se mantendo mais privados, sem muitas postagens, sem exposição pública. Mas existe o fato do Facebook ainda ser muito prevalente em países sub-desenvolvidos. A jornalista filipina Maria Ressa por exemplo, teve muitos problemas com isso, pois Facebook lá nas Filipinas tem mais de 90% de adesão da população e era usado pelo governo para perseguir e atacar jornalistas. E pelo que entendi sua rede é bem parecida com Facebook.

Desejo boa sorte aí. Pode aproveitar as lições aprendidas das outras redes, e fazer algo que presta. Sucesso.

1

Talvez possa acontecer, mas mesmo assim o Daykeeper esta preparado pra isso

a rede social é um ambiente mais familair para todos. Mesmo se o usuário quiser manter sua conta privada e não aceitar ninguem para se tornar um diário completamente privado, ele ainda poderá interagir com outros usuários, ver inspiraçoes, ver eventos, etc...

obrigado pelo apoio!!

2

Olá! Parabéns pela iniciativa, queria dar uma olhada no repositório mas os liks da API e do WebApp no Github que você inseriu estão quebrados para mim. Poderia dar uma olhada?

1