स्केलेबल ब्लॉग बॅकएंड तयार करण्यासाठी सु-संरचित आर्किटेक्चर, प्रमाणीकरण प्रणाली आणि योग्यरित्या दस्तऐवजीकरण केलेले API आवश्यक आहेत. NestJS MongoDB ब्लॉग API हे उत्पादन-तयार बॅकएंड टेम्पलेट आहे जे डेव्हलपर्सना NestJS, MongoDB, JWT authenticationआणि Swagger दस्तऐवजीकरण वापरून आधुनिक ब्लॉग प्लॅटफॉर्म जलद तयार करण्यास मदत करण्यासाठी डिझाइन केलेले आहे .
हा प्रकल्प वापरकर्ते, पोस्ट, श्रेणी, टॅग, टिप्पण्या, प्रमाणीकरण आणि भूमिका-आधारित प्रवेश नियंत्रण यासाठी मॉड्यूलसह संपूर्ण RESTful API प्रदान करतो .
रिपॉझिटरी: https://github.com/bfotool/nestjs-mongodb-blog-base
नेस्टजेएस मोंगोडीबी ब्लॉग एपीआय म्हणजे काय?
नेस्टजेएस मोंगोडीबी ब्लॉग एपीआय हे नेस्टजेएस ११ आणि मोंगोडीबी वापरून बनवलेले ओपन-सोर्स बॅकएंड टेम्पलेट आहे जे पूर्णपणे कार्यशील ब्लॉग REST एपीआय प्रदान करते.
हे बांधकामासाठी पाया म्हणून काम करण्यासाठी डिझाइन केलेले आहे:
ब्लॉग प्लॅटफॉर्म
हेडलेस सीएमएस सिस्टम्स
सामग्री प्रकाशन API
दस्तऐवजीकरण वेबसाइट्स
डेव्हलपर पोर्टफोलिओ ब्लॉग्ज
हा प्रकल्प NestJS ने शिफारस केलेल्या मॉड्यूलर आर्किटेक्चरचे अनुसरण करतो, ज्यामुळे स्केलेबिलिटी आणि देखभालक्षमता सुनिश्चित होते.
रिपॉझिटरी: https://github.com/bfotool/nestjs-mongodb-blog-base
महत्वाची वैशिष्टे
प्रमाणीकरण आणि अधिकृतता
API मध्ये JWT टोकन वापरून सुरक्षित प्रमाणीकरण प्रणाली समाविष्ट आहे.
मुख्य प्रमाणीकरण वैशिष्ट्यांमध्ये हे समाविष्ट आहे:
JWT टोकन अॅक्सेस आणि रिफ्रेश करा
भूमिका-आधारित प्रवेश नियंत्रण(RBAC)
bcrypt सह पासवर्ड हॅशिंग
गार्ड्स वापरून संरक्षित API मार्ग
टोकन रिफ्रेश यंत्रणा
तीन डीफॉल्ट वापरकर्ता भूमिका समर्थित आहेत:
प्रशासन
लेखक
वाचक
यामुळे वेगवेगळ्या API एंडपॉइंट्सवर परवानग्या व्यवस्थापित करणे सोपे होते.
संपूर्ण ब्लॉग मॉड्यूल
या प्रकल्पात ब्लॉगच्या सर्व मुख्य कार्यक्षमतेचा समावेश असलेले अनेक पूर्णपणे अंमलात आणलेले मॉड्यूल समाविष्ट आहेत.
प्रमाणीकरण मॉड्यूल
प्रमाणीकरण आणि वापरकर्ता सत्रे हाताळते.
अंतिम बिंदूंमध्ये हे समाविष्ट आहे:
POST /auth/registerPOST /auth/loginPOST /auth/refreshPOST /auth/logoutGET /auth/profile
वापरकर्ते मॉड्यूल
वापरकर्ता खाती आणि प्रोफाइल व्यवस्थापित करते.
अंतिम बिंदू:
GET /usersGET /users/:idPATCH /users/:idDELETE /users/:id
लेखन ऑपरेशन्ससाठी प्रशासकीय परवानग्या आवश्यक असतात .
पोस्ट मॉड्यूल
पोस्ट मॉड्यूल ब्लॉग सामग्री व्यवस्थापित करते.
वैशिष्ट्यांमध्ये हे समाविष्ट आहे:
पृष्ठांकन
श्रेणी, टॅग किंवा लेखकानुसार फिल्टर करणे
क्रमवारी लावणे
पूर्ण-मजकूर शोध
वैशिष्ट्यीकृत पोस्ट
अंतिम बिंदू:
GET /postsGET /posts/featuredGET /posts/:slugPOST /postsPATCH /posts/:idDELETE /posts/:id
श्रेणी मॉड्यूल
ब्लॉग पोस्ट श्रेणींमध्ये आयोजित करते.
अंतिम बिंदू:
GET /categoriesGET /categories/:slugPOST /categoriesPATCH /categories/:idDELETE /categories/:id
टॅग्ज मॉड्यूल
ब्लॉग पोस्टसाठी लवचिक टॅगिंगला अनुमती देते.
अंतिम बिंदू:
GET /tagsGET /tags/:slugPOST /tagsPATCH /tags/:idDELETE /tags/:id
टिप्पण्या मॉड्यूल
टिप्पणी थ्रेड आणि नेस्टेड प्रत्युत्तरांना समर्थन देते.
अंतिम बिंदू:
GET /comments/post/:postIdGET /comments/:id/repliesPOST /commentsPATCH /comments/:idDELETE /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 स्टॅक वापरून तयार केला आहे.
| थर | तंत्रज्ञान |
|---|---|
| फ्रेमवर्क | नेस्टजेएस ११ |
| भाषा | टाइपस्क्रिप्ट ५.७ |
| डेटाबेस | मोंगोडीबी ८ |
| ओडीएम | मुंगूस ८ |
| प्रमाणीकरण | पासपोर्ट.जेएस + जेडब्ल्यूटी |
| प्रमाणीकरण | वर्ग-प्रमाणीकरणकर्ता |
| एपीआय दस्तऐवजीकरण | स्वॅगर ओपनएपीआय |
| पासवर्ड सुरक्षा | बीक्रिप्ट |
| स्लग जनरेटर | स्लगीफाय करा |
| चाचणी | विनोद |
प्रकल्प रचना
हा प्रकल्प मॉड्यूलर आर्किटेक्चरचे अनुसरण करतो.
src/
├── auth/
├── users/
├── posts/
├── categories/
├── tags/
├── comments/
├── common/
└── seed/
महत्वाचे घटक समाविष्ट आहेत:
डीटीओ प्रमाणीकरण
मुंगूस स्कीमा
जागतिक अपवाद फिल्टर
प्रतिसाद इंटरसेप्टर्स
जेडब्ल्यूटी गार्ड्स
भूमिका सजवणारे
ही रचना कोडबेस व्यवस्थित आणि स्केलेबल ठेवते.
प्रोजेक्ट कसा इन्स्टॉल करायचा आणि चालवायचा
पूर्वतयारी
स्थापित करण्यापूर्वी, तुमच्याकडे असल्याची खात्री करा:
नोड.जेएस १८.१७+
मोंगोडीबी ६+
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
डीफॉल्ट सीडेड डेटा
सीड स्क्रिप्ट चाचणीसाठी नमुना डेटा तयार करते.
| अस्तित्व | मोजा |
|---|---|
| वापरकर्ते | ५ |
| श्रेणी | ५ |
| टॅग्ज | २८ |
| पोस्ट्स | १० |
| टिप्पण्या | ६ |
डीफॉल्ट लॉगिन क्रेडेन्शियल्स
सर्व सीडेड वापरकर्त्यांसाठी पासवर्ड:
admin123
खाती:
| भूमिका | ईमेल |
|---|---|
| प्रशासन | [email protected] वर ईमेल करा |
| लेखक | [email protected] वर ईमेल करा |
| लेखक | [email protected] वर ईमेल करा |
| लेखक | [email protected] वर ईमेल करा |
| वाचक | [email protected] वर ईमेल करा. |
स्वॅगर एपीआय दस्तऐवजीकरण
इंटरॅक्टिव्ह एपीआय दस्तऐवजीकरण येथे उपलब्ध आहे:
http://localhost:3000/api/docs
स्वॅगर प्रदान करते:
परस्परसंवादी एंडपॉइंट चाचणी
JWT authenticationआधार
विनंती आणि प्रतिसाद स्कीमा दस्तऐवजीकरण
हे भांडार का वापरावे
आधुनिक ब्लॉग बॅकएंड तयार करणाऱ्या डेव्हलपर्ससाठी NestJS MongoDB ब्लॉग API हा एक शक्तिशाली प्रारंभ बिंदू आहे .
फायद्यांमध्ये हे समाविष्ट आहे:
स्वच्छ NestJS मॉड्यूलर आर्किटेक्चर
अंगभूत प्रमाणीकरण आणि RBAC
वापरण्यास तयार स्वॅगर एपीआय दस्तऐवजीकरण
मुंगूस वापरून मोंगोडीबी एकत्रीकरण
डेटाबेस सीडिंग सिस्टम
उत्पादनासाठी तयार प्रकल्प रचना
रिपॉझिटरी: https://github.com/bfotool/nestjs-mongodb-blog-base



