Samfurin API na Blog na NestJS MongoDB- Cikakken Bayani na REST don Blogs

Gina shafin yanar gizo mai girman gaske yana buƙatar tsarin gine-gine mai kyau, tsarin tantancewa, da kuma APIs masu inganci. NestJS MongoDB Blog API wani samfuri ne na baya-bayan da aka shirya don samarwa wanda aka tsara don taimakawa masu haɓakawa su gina dandamali na zamani ta amfani da takardun NestJS, MongoDB,, JWT authenticationda Swagger cikin sauri .

Wannan aikin yana samar da cikakken RESTful API wanda ya haɗa da kayayyaki ga masu amfani, rubuce-rubuce, rukunoni, alamomi, tsokaci, tantancewa, da kuma sarrafa shiga bisa ga rawar .

Ma'ajiyar ajiya: https://github.com/bfotool/nestjs-mongodb-blog-base

Menene NestJS MongoDB Blog API

NestJS MongoDB Blog API wani samfuri ne na baya-bayan da aka gina tare da NestJS 11 da MongoDB wanda ke ba da cikakken aikin REST API na blog.

An tsara shi don zama harsashin gini:

  • Dandalin Blog

  • Tsarin CMS mara kai

  • APIs na Buga abun ciki

  • Shafukan yanar gizo na takardu

  • Blogs ɗin fayil na masu haɓakawa

Aikin yana bin tsarin gine-gine na zamani da NestJS ta ba da shawarar, wanda ke tabbatar da daidaito da kuma dorewa.

Ma'ajiyar ajiya: https://github.com/bfotool/nestjs-mongodb-blog-base

Mahimman Sifofi

Tabbatarwa da Izini

API ɗin ya haɗa da tsarin tabbatarwa mai tsaro ta amfani da alamun JWT.

Babban fasalulluka na tantancewa sun haɗa da:

  • Alamar Samun dama da Sabuntawa ta JWT

  • Sarrafa Samun Shiga Bisa Matsayin Aiki(RBAC)

  • Hacking kalmar sirri tare da bcrypt

  • Hanyoyin API masu kariya ta amfani da Guards

  • Tsarin sabunta alama

Ana tallafawa ayyukan masu amfani guda uku na asali:

  • Mai Gudanarwa

  • Marubuci

  • Mai karatu

Wannan yana sauƙaƙa sarrafa izini a duk faɗin ƙarshen API daban-daban.

Cikakken Kayan Blog

Aikin ya ƙunshi wasu kayayyaki da aka aiwatar da su gaba ɗaya waɗanda suka shafi dukkan ayyukan babban shafin yanar gizo.

Tsarin Izini

Yana kula da tabbatarwa da zaman masu amfani.

Maƙallan ƙarshe sun haɗa da:

  • POST /auth/register

  • POST /auth/login

  • POST /auth/refresh

  • POST /auth/logout

  • GET /auth/profile

Tsarin Masu Amfani

Yana kula da asusun masu amfani da bayanan martaba.

Maƙallan Ƙarshe:

  • GET /users

  • GET /users/:id

  • PATCH /users/:id

  • DELETE /users/:id

Ayyukan rubutu suna buƙatar izinin gudanarwa .

Tsarin Saƙonni

Tsarin rubutun yana sarrafa abubuwan da ke cikin shafin yanar gizo.

Fasaloli sun haɗa da:

  • Shafin shafi

  • Tacewa ta rukuni, alama, ko marubuci

  • Rarrabawa

  • Binciken cikakken rubutu

  • Rubuce-rubucen da aka fi so

Maƙallan Ƙarshe:

  • GET /posts

  • GET /posts/featured

  • GET /posts/:slug

  • POST /posts

  • PATCH /posts/:id

  • DELETE /posts/:id

Nau'in Rukuni

Yana tsara rubuce-rubucen blog zuwa rukuni-rukuni.

Maƙallan Ƙarshe:

  • GET /categories

  • GET /categories/:slug

  • POST /categories

  • PATCH /categories/:id

  • DELETE /categories/:id

Alamun Maɓalli

Yana ba da damar yin alama mai sassauƙa ga rubuce-rubucen blog.

Maƙallan Ƙarshe:

  • GET /tags

  • GET /tags/:slug

  • POST /tags

  • PATCH /tags/:id

  • DELETE /tags/:id

Tsarin Sharhi

Yana goyan bayan zaren sharhi da amsoshi masu tsari.

Maƙallan Ƙarshe:

  • GET /comments/post/:postId

  • GET /comments/:id/replies

  • POST /comments

  • PATCH /comments/:id

  • DELETE /comments/:id

Ƙarfin API

Shafin shafi

Duk ƙarshen jerin suna tallafawa rubutun shafi.

Misali:

GET /posts?page=1&limit=6

Tacewa

Ana iya tace rubuce-rubuce ta hanyar rukuni, tag, ko marubuci.

Misali:

GET /posts?category=web-development

Binciken Cikakken Rubutu

Ana aiwatar da aikin bincike a kan rubuce-rubuce.

Misali:

GET /posts?search=nestjs+mongodb

Rarrabawa

Ana iya tsara amsoshin API ta fannoni daban-daban.

Misali:

GET /posts?sortBy=createdAt&sortOrder=desc

Samar da Tushen Lalacewa ta atomatik

Lokacin ƙirƙirar rubuce-rubuce, tsarin yana samar da slug mai dacewa da URL ta atomatik daga taken ta amfani da slugify .

Misali:

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

Lissafin Lokacin Karatu

API ɗin yana ƙididdige lokacin karatu ta atomatik bisa ga tsawon abubuwan da aka rubuta.

Tsarin Amsar API Mai Daidaito

Duk amsoshin suna bin tsari na yau da kullun:

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

Wannan yana inganta haɗin frontend da kuma gyara kurakurai.

Tarin Fasaha

An gina ƙarshen baya ta amfani da tsarin Node.js na zamani.

Layer Fasaha
Tsarin tsari NestJS 11
Harshe Rubutun Nau'i 5.7
Bayanan Bayanai MongoDB 8
ODM Mongoose 8
Tabbatarwa Fasfo.js + JWT
Tabbatarwa mai tantance aji
Takardun API Buɗen API na Swagger
Tsaron Kalmar Sirri bcrypt
Janareta mai cutar kanjamau slugify
Gwaji Wasa

Tsarin Aiki

Aikin yana bin tsarin gine-gine na zamani.

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

Muhimman abubuwan sun haɗa da:

  • Tabbatar da DTO

  • Tsarin Mongoose

  • Matatun banda na duniya

  • Masu katse martani

  • Masu gadi na JWT

  • Masu yin ado

Wannan tsari yana sa tushen code ya kasance mai tsari da kuma iya daidaitawa.

Yadda ake Shigarwa da Gudanar da Aikin

Abubuwan da ake buƙata kafin lokaci

Kafin shigarwa, tabbatar kana da:

  • Node.js 18.17+

  • MongoDB 6+

  • npm, yarn, ko pnpm

Clone da Ma'ajiyar

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

Shigar da Dogara

npm install

Saita Canjin Muhalli

Kwafi fayil ɗin muhallin misali:

cp .env.example .env

Sabunta waɗannan dabi'u:

MONGODB_URI= 
JWT_ACCESS_SECRET= 
JWT_REFRESH_SECRET= 

Tsara Bayanan

Cika bayanai tare da samfurin bayanai:

npm run seed

Don sake saitawa da sake shukawa:

npm run seed:refresh

Fara Sabar Ci Gaban

npm run start:dev

URL ɗin tushen API:

http://localhost:3000/api/v1

Dokokin Swagger:

http://localhost:3000/api/docs

Bayanan da aka Tsara a Tsohuwar

Rubutun iri yana samar da samfurin bayanai don gwaji.

Ƙungiya Ƙidaya
Masu amfani 5
Rukuni 5
Alamomi 28
Sakonni 10
Sharhi 6

Takardun Shiga na Tsohuwa

Kalmar sirri ga duk masu amfani da aka yi wa rajista:

admin123

Asusun:

Matsayin Imel
Mai Gudanarwa [email protected]
Marubuci [email protected]
Marubuci [email protected]
Marubuci [email protected]
Mai karatu [email protected]

Takardun API na Swagger

Ana samun takaddun API na hulɗa a:

http://localhost:3000/api/docs

Swagger yana bayar da:

  • Gwajin ƙarshen hulɗa

  • JWT authenticationtallafi

  • Takardun tsari na buƙata da amsawa

Me yasa ake amfani da wannan Ma'ajiyar

NestJS MongoDB Blog API wuri ne mai ƙarfi ga masu haɓaka haɓaka waɗanda ke gina tushen baya na zamani na blog.

Fa'idodi sun haɗa da:

  • Tsabtace tsarin gine-gine na NestJS

  • Ingantaccen tabbaci da RBAC

  • Takardun API na Swagger da ake shirye don amfani

  • Haɗin MongoDB ta amfani da Mongoose

  • Tsarin shuka bayanai

  • Tsarin aikin da aka shirya don samarwa

Ma'ajiyar ajiya: https://github.com/bfotool/nestjs-mongodb-blog-base