Um aplicativo da Web Next.js e MongoDB , projetado com simplicidade para aprendizado e aplicabilidade do mundo real em mente.
Confira a demonstração
? Rápido e leve sem expressão volumoso e lento.
Implementação completa de rotas de API e? Pronto sem servidor
? Bom padrão de middleware, compatível com o Express EcoSystem, alimentado por Next-Connect
? Kiss: Não há coisas sofisticadas como grafql, sass, redux, etc. ✍️ Venha com postagens explicativas de blog
? Pode ser adaptado a quaisquer bancos de dados além do MongoDB (basta atualizar a API-LIB/dB)
Tenha algum recurso que lhe interessa, faça um problema. Gostaria de trabalhar em um recurso, fazer um PR.
Este projeto acompanha as seguintes postagens:
Verifique também -os no dev.to.
Embora o projeto esteja escrito para ser seguro, sua simplicidade exige considerações cuidadosas para o uso em produções sensíveis. Arquive um problema se você encontrar algum problema de segurança.
Este projeto usa as seguintes dependências:
next.js - v9.3 ou acima necessário para rotas de API e novo novo método de busca de dados .react - V16.8 ou acima necessário para os ganchos do React .react-dom - v16.8 ou acima.swr - necessário para a gestão do estado, pode ser substituído por react-querymongodb - pode ser substituído por mongoose .passport , passport-local - necessário para a autenticação.next-connect - recomendado se você deseja usar o Middleware Express/Connect e o roteamento mais fácil do método.next-session , connect-mongo -necessária para sessão, pode ser substituída por outras bibliotecas de sessão, como cookie-session , next-iron-session ou express-session ( express-session é observada que não funciona corretamente no próximo.js 11+).bcryptjs - Opcional, pode ser substituído por qualquer biblioteca de senha de senha. argon2 recomendado.validator - Opcional, mas recomendado, para validar o email.ajv - Opcional, mas recomendado, para validar o órgão de solicitação.multer - pode ser substituído por qualquer middleware que lida com multipart/form-datacloudinary - Opcional, apenas se você estiver usando o Cloudinary para upload da imagem.nodemailer - Opcional, apenas se você o usar para email. Recomenda -se usar serviços de terceiros como Mailgun, AWS SES etc. em vez disso.As variáveis ambientais neste projeto incluem:
MONGODB_URI a string de conexão MongoDB (com credenciais e nome do banco de dados)WEB_URI O URL do seu aplicativo da web.CLOUDINARY_URL (Opcional, apenas Cloudinary) Variável de ambiente Cloudinary para configuração. Veja isso.NODEMAILER_CONFIG (Opcional, se estiver usando somente o NodeMailer) JSON Stringified NodeMailer Config. por exemplo. {"service":"Gmail","auth":{"user":"[email protected]","pass":"aHR0cHM6Ly95b3V0dS5iZS9kUXc0dzlXZ1hjUQ=="}} Inicie o servidor de desenvolvimento executando yarn dev ou npm run dev . Introdução ao criar um arquivo .env.local com as variáveis acima. Veja variáveis de ambiente.
Este projeto pode ser implantado em qualquer lugar. Certifique -se de definir as variáveis de ambiente usando as opções fornecidas pelos seus provedores de nuvem/hospedagem.
Depois de criar o uso npm run build , basta iniciar o servidor usando npm run start .
Você também pode implantar isso com provedores sem servidor, dada a configuração correta.
Por favor, veja o meu contribuindo.md.
Mit