O banco de dados Mongo foi hospedado no MLab por conveniĆŖncia. Foi implementado gravatar para foto de perfil, se o email do usuĆ”rio tiver um avatar no wordpress ela automaticamente Ć© salva no banco. Rotas sensĆveis foram protegidas por meio de JWT em conjunto com passport.
- Nodejs
- Express
- Nodemon - Para restartar o server sempre que houver uma alteraĆ§Ć£o
- Passport - Para proteger rotas privadas
- Jwt - Para proteger rotas privadas
- Bcrypt - Para Cryptografar as senhas de usuƔrios antes de salvar no banco
- MongoDB
- Mongoose
Foi usado React em conjunto com Redux e React-router para construir a SPA. Rotas protegidas redirecionam para a home e sĆ³ sĆ£o acessĆveis por meio de auth. Localstorage foi utilizado para persistir o state de usuĆ”rio no recarregamento das pĆ”ginas.
- React
- Redux - Para gerenciar o state da aplicaĆ§Ć£o
- asyncRoutes - As rotas carregam em chunks, dessa forma evita da aplicaĆ§Ć£o ficar pesada num primeiro carregamento
- Axios - Para fazer as requisiƧƵes HTTP
- Local storage nativo - Para persistir o state e o auth nas rotas privadas
- MaterialUI components
- Node.js
- NPM
Execute o comando abaixo para instalar as dependĆŖncias:
npm install
Execute o comando abaixo para iniciar o Nodejs e conectar ao banco de dados MongoDB:
npm run server
Aguarde a execuĆ§Ć£o e a API estarĆ” rodando na Url http://localhost:8001/api/
Os endpoints disponĆveis sĆ£o:
- Post - Login more
- Post - Register more
- Put - Update Profile more
- Del - Delete Account more
- Get - List Users more
A documentaĆ§Ć£o completa pode ser encontrada no Postman
Deixe o servidor rodando em um terminal, abra outro e siga para o prĆ³ximo passo:
Para isso basta executar o comando abaixo, e pronto! :D
npm start
A aplicaĆ§Ć£o irĆ” iniciar automaticamente no browser na Url http://localhost:3000
The MIT License (MIT). Please see License File for more information.
A little project by Jefferson Ribeiro