ExpressJs

⌘K
  1. Home
  2. Docs
  3. ExpressJs
  4. Authentication and Permis...
  5. 01.Project Configuration

01.Project Configuration

Step 1: Set up the project and install dependencies

First, let’s create a new project and install the necessary dependencies:

mkdir express-auth-system
cd express-auth-system
npm init -y
npm install express sequelize mysql2 bcryptjs jsonwebtoken dotenv
npm install --save-dev nodemon
  • express: সার্ভার তৈরি করতে।
  • sequelize: ডাটাবেস ম্যানেজমেন্টের জন্য।
  • mysql2: MySQL ডাটাবেসের জন্য।
  • bcryptjs: পাসওয়ার্ড এনক্রিপশনের জন্য।
  • jsonwebtoken: টোকেন ব্যবস্থাপনার জন্য।
  • dotenv: পরিবেশগত ভেরিয়েবল ব্যবহার করতে।

Now, let’s create the main application file:

// app.js
const express = require('express');
const dotenv = require('dotenv');

dotenv.config();

const app = express();
app.use(express.json());

const PORT = process.env.PORT || 3000;

app.listen(PORT, () => {
  console.log(`Server is running on port ${PORT}`);
});

.env ফাইল তৈরি করা

আপনার প্রজেক্ট ফোল্ডারের রুটে একটি .env ফাইল তৈরি করুন এবং সেখানে প্রয়োজনীয় পরিবেশগত ভেরিয়েবল যোগ করুন। উদাহরণ:

# Application Port
PORT=5000

# Database Configuration
DB_HOST=localhost
DB_USER=root
DB_PASSWORD=yourpassword
DB_NAME=express_auth_system

# JWT Secret
JWT_SECRET=your_jwt_secret

উপাদানের ব্যাখ্যা (বাংলা):

  1. PORT=5000: সার্ভার কোন পোর্টে চলবে তা নির্ধারণ করে।
    • এখানে ডিফল্ট পোর্ট হিসেবে ৫০০০ ব্যবহার করা হয়েছে।
  2. ডাটাবেস সংযোগের জন্য ভেরিয়েবল:
    • DB_HOST: আপনার ডাটাবেস সার্ভারের হোস্ট, সাধারণত localhost
    • DB_USER: ডাটাবেস ব্যবহারকারীর নাম।
    • DB_PASSWORD: ডাটাবেসের পাসওয়ার্ড।
    • DB_NAME: আপনার প্রজেক্টের জন্য নির্ধারিত ডাটাবেসের নাম।
  3. JWT_SECRET=your_jwt_secret:
    • JWT (JSON Web Token) তৈরি ও যাচাই করার জন্য একটি সিক্রেট কী। এটি সুরক্ষিত রাখতে হবে।

এই .env ফাইলটি গোপনীয় এবং আপনার প্রজেক্টের বাইরে শেয়ার করা উচিত নয়। .gitignore ফাইল ব্যবহার করে .env ফাইলটি গিটে যোগ করা থেকে রক্ষা করুন।

.gitignore ফাইলের উদাহরণ:

# Ignore .env file
.env

Updated package.json:

"scripts": {
  "test": "echo \"Error: no test specified\" && exit 1",
  "dev": "nodemon app.js",
  "start": "node app.js"
},

run server

npm start

How can we help?