ref – https://www.youtube.com/watch?v=-0exw-9YJBo
console.log(your string
.cyan.underline);
Create folder
mkdir mern-tutorial
cd mern-tutorial
Code .
empty folder
create folder backend
in backend folder, create file server.js
npm init
entry point: (index.js) server.js
create another file .gitignore:
1 2 |
node_modules .env |
npm i express dotenv mongoose colors
npm i -D nodemon
package.json
1 2 3 4 |
"scripts": { "start": "node backend/server.js", "server": "nodemond backekend/server.js" } |
Add git repository
git init
git add .
git commit -m “Initial Commit”
server.js
1 2 3 4 5 |
const express = require('express') const dotenv = require('dotenv).config() const port = 5000; const app = express(); app.listen(port, () => console.log(`Server started on port ${port}`)) |
create .env
.env
1 2 |
NODE_ENV= development PORT = 5000 |
Now we can do:
1 |
process.env.port || 5000 |
1 2 3 |
app.get('/api/goals', (req, res) => { res.status(200).send({message: 'Get Goals'}) }) |
Create routes folder in backend folder.
Then create goalRoutes.js in routes folder.
goalRoutes.js
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
const express = require('express') const router = express.Router(); router.get('/', (req, res) => { res.status(200).send({message: 'Get Goals'}) }); router.post('/', (req, res) => { res.status(200).send({ message: 'Set Goals' }) }); router.put('/:id', (req, res) => { res.status(200).send({message: 'Update Goals ${req.params.id}'}) }); router.get('/:id', (req, res) => { res.status(200).send({ message: 'Delete goal ${req.params.id}' }) }); module.exports = router |
create controllers folder.
create goalController.js in controllers folder.
Create MongoDB
mongodb+srv://admin:admin@cluster0.z0xxwz0.mongodb.net/mernapp
.env
1 |
MONGO_URI=mongodb+srv://admin:admin@cluster0.z0xxwz0.mongodb.net/mernapp |