NestJS MongoDB வலைப்பதிவு API டெம்ப்ளேட்- வலைப்பதிவுகளுக்கான முழு அம்சங்களுடன் கூடிய REST பின்தளம்.

அளவிடக்கூடிய வலைப்பதிவு பின்தளத்தை உருவாக்குவதற்கு நன்கு கட்டமைக்கப்பட்ட கட்டமைப்பு, அங்கீகார அமைப்பு மற்றும் முறையாக ஆவணப்படுத்தப்பட்ட APIகள் தேவை. NestJS MongoDB வலைப்பதிவு API என்பது NestJS, MongoDB, JWT authenticationமற்றும் Swagger ஆவணங்களைப் பயன்படுத்தி நவீன வலைப்பதிவு தளங்களை விரைவாக உருவாக்க டெவலப்பர்களுக்கு உதவும் வகையில் வடிவமைக்கப்பட்ட ஒரு தயாரிப்பு-தயாரான பின்தள டெம்ப்ளேட் ஆகும் .

இந்த திட்டம் பயனர்களுக்கான தொகுதிகள், இடுகைகள், வகைகள், குறிச்சொற்கள், கருத்துகள், அங்கீகாரம் மற்றும் பங்கு அடிப்படையிலான அணுகல் கட்டுப்பாடு உள்ளிட்ட முழுமையான RESTful API ஐ வழங்குகிறது .

களஞ்சியம்: https://github.com/bfotool/nestjs-mongodb-blog-base

NestJS MongoDB வலைப்பதிவு API என்றால் என்ன?

NestJS MongoDB வலைப்பதிவு API என்பது NestJS 11 மற்றும் MongoDB உடன் கட்டமைக்கப்பட்ட ஒரு திறந்த மூல பின்தள டெம்ப்ளேட் ஆகும், இது முழுமையாக செயல்படும் வலைப்பதிவு REST API ஐ வழங்குகிறது.

இது கட்டிடத்திற்கான அடித்தளமாக செயல்படும் வகையில் வடிவமைக்கப்பட்டுள்ளது:

  • வலைப்பதிவு தளங்கள்

  • ஹெட்லெஸ் CMS அமைப்புகள்

  • உள்ளடக்க வெளியீட்டு APIகள்

  • ஆவண வலைத்தளங்கள்

  • டெவலப்பர் போர்ட்ஃபோலியோ வலைப்பதிவுகள்

இந்த திட்டம் NestJS பரிந்துரைத்த மட்டு கட்டமைப்பைப் பின்பற்றுகிறது, இது அளவிடுதல் மற்றும் பராமரிப்பை உறுதி செய்கிறது.

களஞ்சியம்: https://github.com/bfotool/nestjs-mongodb-blog-base

முக்கிய அம்சங்கள்

அங்கீகாரம் மற்றும் அங்கீகாரம்

API ஆனது JWT டோக்கன்களைப் பயன்படுத்தி பாதுகாப்பான அங்கீகார அமைப்பை உள்ளடக்கியது.

முக்கிய அங்கீகார அம்சங்கள் பின்வருமாறு:

  • JWT அணுகல் மற்றும் புதுப்பிப்பு டோக்கன்கள்

  • பங்கு அடிப்படையிலான அணுகல் கட்டுப்பாடு(RBAC)

  • bcrypt உடன் கடவுச்சொல் ஹாஷிங்

  • காவலர்களைப் பயன்படுத்தி பாதுகாக்கப்பட்ட API வழிகள்

  • டோக்கன் புதுப்பிப்பு வழிமுறை

மூன்று இயல்புநிலை பயனர் பாத்திரங்கள் ஆதரிக்கப்படுகின்றன:

  • நிர்வாகம்

  • ஆசிரியர்

  • வாசகர்

இது வெவ்வேறு API இறுதிப் புள்ளிகளில் அனுமதிகளை நிர்வகிப்பதை எளிதாக்குகிறது.

முழு வலைப்பதிவு தொகுதிகள்

இந்த திட்டத்தில் அனைத்து முக்கிய வலைப்பதிவு செயல்பாடுகளையும் உள்ளடக்கிய பல முழுமையாக செயல்படுத்தப்பட்ட தொகுதிகள் உள்ளன.

அங்கீகார தொகுதி

அங்கீகாரம் மற்றும் பயனர் அமர்வுகளைக் கையாளுகிறது.

முனைப்புள்ளிகள் பின்வருமாறு:

  • POST /auth/register

  • POST /auth/login

  • POST /auth/refresh

  • POST /auth/logout

  • GET /auth/profile

பயனர் தொகுதி

பயனர் கணக்குகள் மற்றும் சுயவிவரங்களை நிர்வகிக்கிறது.

முனைப்புள்ளிகள்:

  • GET /users

  • GET /users/:id

  • PATCH /users/:id

  • DELETE /users/:id

எழுதும் செயல்பாடுகளுக்கு நிர்வாக அனுமதிகள் தேவை .

இடுகைகள் தொகுதி

இடுகைகள் தொகுதி வலைப்பதிவு உள்ளடக்கத்தை நிர்வகிக்கிறது.

அம்சங்கள் பின்வருமாறு:

  • பக்கமாக்கல்

  • வகை, குறிச்சொல் அல்லது ஆசிரியர் வாரியாக வடிகட்டுதல்

  • வரிசைப்படுத்துதல்

  • முழு உரை தேடல்

  • சிறப்பு இடுகைகள்

முனைப்புள்ளிகள்:

  • GET /posts

  • GET /posts/featured

  • GET /posts/:slug

  • POST /posts

  • PATCH /posts/:id

  • DELETE /posts/:id

வகைகள் தொகுதி

வலைப்பதிவு இடுகைகளை வகைகளாக ஒழுங்கமைக்கிறது.

முனைப்புள்ளிகள்:

  • GET /categories

  • GET /categories/:slug

  • POST /categories

  • PATCH /categories/:id

  • DELETE /categories/:id

குறிச்சொற்கள் தொகுதி

வலைப்பதிவு இடுகைகளுக்கு நெகிழ்வான குறியிடலை அனுமதிக்கிறது.

முனைப்புள்ளிகள்:

  • GET /tags

  • GET /tags/:slug

  • POST /tags

  • PATCH /tags/:id

  • DELETE /tags/:id

கருத்துகள் தொகுதி

கருத்துத் தொடரிழைகள் மற்றும் உள்ளமைக்கப்பட்ட பதில்களை ஆதரிக்கிறது.

முனைப்புள்ளிகள்:

  • GET /comments/post/:postId

  • GET /comments/:id/replies

  • POST /comments

  • PATCH /comments/:id

  • DELETE /comments/:id

API திறன்கள்

பக்கமாக்கல்

அனைத்து பட்டியல் முனைப்புள்ளிகளும் பக்கமாக்கலை ஆதரிக்கின்றன.

உதாரணமாக:

GET /posts?page=1&limit=6

வடிகட்டுதல்

இடுகைகளை வகை, குறிச்சொல் அல்லது ஆசிரியர் வாரியாக வடிகட்டலாம்.

உதாரணமாக:

GET /posts?category=web-development

முழு உரை தேடல்

தேடல் செயல்பாடு இடுகைகளில் செயல்படுத்தப்படுகிறது.

உதாரணமாக:

GET /posts?search=nestjs+mongodb

வரிசைப்படுத்துதல்

API பதில்களை வெவ்வேறு புலங்களின்படி வரிசைப்படுத்தலாம்.

உதாரணமாக:

GET /posts?sortBy=createdAt&sortOrder=desc

தானியங்கி ஸ்லக் உருவாக்கம்

இடுகைகளை உருவாக்கும்போது, ​​கணினி தானாகவே slugify ஐப் பயன்படுத்தி தலைப்பிலிருந்து URL-க்கு ஏற்ற ஸ்லக்கை உருவாக்குகிறது .

உதாரணமாக:

Building REST APIs with NestJS 
→ building-rest-apis-with-nestjs 

படிக்கும் நேரக் கணக்கீடு

இடுகைகளின் உள்ளடக்க நீளத்தின் அடிப்படையில் மதிப்பிடப்பட்ட வாசிப்பு நேரத்தை API தானாகவே கணக்கிடுகிறது.

நிலையான API மறுமொழி வடிவம்

அனைத்து பதில்களும் ஒரு நிலையான கட்டமைப்பைப் பின்பற்றுகின்றன:

{ 
  "success": true, 
  "data": {}, 
  "timestamp": "2026-01-01T10:00:00Z" 
} 

இது முன்பக்க ஒருங்கிணைப்பு மற்றும் பிழைத்திருத்தத்தை மேம்படுத்துகிறது.

தொழில்நுட்ப அடுக்கு

பின்தளம் நவீன Node.js அடுக்கைப் பயன்படுத்தி உருவாக்கப்பட்டுள்ளது.

அடுக்கு தொழில்நுட்பம்
கட்டமைப்பு நெஸ்ட்ஜேஎஸ் 11
மொழி டைப்ஸ்கிரிப்ட் 5.7
தரவுத்தளம் மோங்கோடிபி 8
ODM என்பது முங்கூஸ் 8
அங்கீகாரம் பாஸ்போர்ட்.ஜேஎஸ் + ஜேடபிள்யூடி
சரிபார்ப்பு வகுப்பு-சரிபார்ப்பான்
API ஆவணம் ஸ்வாகர் ஓபன்ஏபிஐ
கடவுச்சொல் பாதுகாப்பு பி கிரிப்ட்
ஸ்லக் ஜெனரேட்டர் ஸ்லகிஃபை செய்
சோதனை நகைச்சுவை

திட்ட அமைப்பு

இந்த திட்டம் ஒரு மட்டு கட்டமைப்பைப் பின்பற்றுகிறது.

src/ 
├── auth/ 
├── users/ 
├── posts/ 
├── categories/ 
├── tags/ 
├── comments/ 
├── common/ 
└── seed/ 

முக்கியமான கூறுகள் பின்வருமாறு:

  • DTO சரிபார்ப்பு

  • முங்கூஸ் திட்டங்கள்

  • உலகளாவிய விதிவிலக்கு வடிப்பான்கள்

  • பதில் இடைமறிப்பாளர்கள்

  • JWT காவலர்கள்

  • பாத்திர அலங்காரக்காரர்கள்

இந்த அமைப்பு குறியீட்டுத் தளத்தை ஒழுங்கமைத்து அளவிடக்கூடியதாக வைத்திருக்கிறது.

திட்டத்தை எவ்வாறு நிறுவுவது மற்றும் இயக்குவது

முன்நிபந்தனைகள்

நிறுவுவதற்கு முன், உங்களிடம் உள்ளதா என்பதை உறுதிப்படுத்திக் கொள்ளுங்கள்:

  • நோட்.ஜேஎஸ் 18.17+

  • மோங்கோடிபி 6+

  • npm, நூல், அல்லது pnpm

களஞ்சியத்தை குளோன் செய்யவும்

git clone https://github.com/bfotool/nestjs-mongodb-blog-base 
cd nestjs-mongodb-blog-base 

சார்புகளை நிறுவவும்

npm install

சுற்றுச்சூழல் மாறிகளை உள்ளமைக்கவும்

எடுத்துக்காட்டு சூழல் கோப்பை நகலெடுக்கவும்:

cp .env.example .env

பின்வரும் மதிப்புகளைப் புதுப்பிக்கவும்:

MONGODB_URI= 
JWT_ACCESS_SECRET= 
JWT_REFRESH_SECRET= 

தரவுத்தளத்தை விதைக்கவும்

மாதிரி தரவுகளுடன் தரவுத்தளத்தை நிரப்பவும்:

npm run seed

மீட்டமைத்து மீண்டும் விதைக்க:

npm run seed:refresh

மேம்பாட்டு சேவையகத்தைத் தொடங்கவும்.

npm run start:dev

API அடிப்படை URL:

http://localhost:3000/api/v1

ஸ்வாகர் ஆவணங்கள்:

http://localhost:3000/api/docs

இயல்புநிலை விதை தரவு

விதை ஸ்கிரிப்ட் சோதனைக்கான மாதிரி தரவை உருவாக்குகிறது.

நிறுவனம் எண்ணிக்கை
பயனர்கள் 5
வகைகள் 5
குறிச்சொற்கள்: 28 தமிழ்
இடுகைகள் 10
கருத்துகள் 6

இயல்புநிலை உள்நுழைவு சான்றுகள்

அனைத்து சீட் செய்யப்பட்ட பயனர்களுக்கான கடவுச்சொல்:

admin123

கணக்குகள்:

பங்கு மின்னஞ்சல்
நிர்வாகம் [email protected]
ஆசிரியர் [email protected]
ஆசிரியர் [email protected]
ஆசிரியர் [email protected]
வாசகர் [email protected]

ஸ்வாகர் API ஆவணம்

ஊடாடும் API ஆவணங்கள் இங்கே கிடைக்கின்றன:

http://localhost:3000/api/docs

ஸ்வாகர் வழங்குகிறது:

  • ஊடாடும் முனைப்புள்ளி சோதனை

  • JWT authenticationஆதரவு

  • கோரிக்கை மற்றும் பதில் திட்ட ஆவணங்கள்

இந்த களஞ்சியத்தை ஏன் பயன்படுத்த வேண்டும்

நவீன வலைப்பதிவு பின்தளத்தை உருவாக்கும் டெவலப்பர்களுக்கு NestJS MongoDB வலைப்பதிவு API ஒரு சக்திவாய்ந்த தொடக்கப் புள்ளியாகும் .

நன்மைகள் பின்வருமாறு:

  • சுத்தமான NestJS மாடுலர் கட்டமைப்பு

  • உள்ளமைக்கப்பட்ட அங்கீகாரம் மற்றும் RBAC

  • பயன்படுத்தத் தயாராக உள்ள ஸ்வாகர் API ஆவணங்கள்

  • மங்கூஸைப் பயன்படுத்தி மோங்கோடிபி ஒருங்கிணைப்பு

  • தரவுத்தள விதைப்பு அமைப்பு

  • உற்பத்திக்குத் தயாரான திட்ட அமைப்பு

களஞ்சியம்: https://github.com/bfotool/nestjs-mongodb-blog-base