{"id":28195427,"url":"https://github.com/surya-sourav/faq_management_backend","last_synced_at":"2025-05-16T14:13:18.981Z","repository":{"id":275290069,"uuid":"925652781","full_name":"Surya-sourav/FAQ_Management_Backend","owner":"Surya-sourav","description":"Faq_management_Backend Server","archived":false,"fork":false,"pushed_at":"2025-02-01T13:03:54.000Z","size":11,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-01T13:25:19.705Z","etag":null,"topics":["backend","fintech"],"latest_commit_sha":null,"homepage":"https://faq-management-backend.onrender.com/api/faqs","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Surya-sourav.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2025-02-01T12:04:33.000Z","updated_at":"2025-02-01T13:20:15.000Z","dependencies_parsed_at":"2025-02-01T13:25:22.415Z","dependency_job_id":"fb80c48e-2f0f-4800-b1d1-1865d19c4b99","html_url":"https://github.com/Surya-sourav/FAQ_Management_Backend","commit_stats":null,"previous_names":["surya-sourav/faq_management_backend"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Surya-sourav%2FFAQ_Management_Backend","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Surya-sourav%2FFAQ_Management_Backend/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Surya-sourav%2FFAQ_Management_Backend/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Surya-sourav%2FFAQ_Management_Backend/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Surya-sourav","download_url":"https://codeload.github.com/Surya-sourav/FAQ_Management_Backend/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254544142,"owners_count":22088808,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["backend","fintech"],"created_at":"2025-05-16T14:13:15.794Z","updated_at":"2025-05-16T14:13:18.974Z","avatar_url":"https://github.com/Surya-sourav.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# **FAQ Management System**\n\n![Node.js](https://img.shields.io/badge/Node.js-v14+-green.svg)  \n![Express](https://img.shields.io/badge/Express-v4.17+-blue.svg)  \n![MongoDB](https://img.shields.io/badge/MongoDB-v4.4+-yellow.svg)  \n![Redis](https://img.shields.io/badge/Redis-v6.0+-red.svg)\n\nA robust, scalable, and high-performance **FAQ Management System** designed to streamline FAQ management with seamless multi-language support, leveraging the power of Node.js, Express, MongoDB, and Redis. This application allows dynamic and real-time translation of FAQs in multiple Indian languages with integrated caching for faster response times.\n\n## **Live Deployment**\n🚀 **Backend API:** [FAQ Management Backend](https://faq-management-backend.onrender.com/api/faqs)\n\n## **Table of Contents**\n\n- [Key Features](#key-features)\n- [System Architecture](#system-architecture)\n- [Multi-language Support](#multi-language-support)\n- [Installation](#installation)\n- [Configuration](#configuration)\n- [API Documentation](#api-documentation)\n- [Testing](#testing)\n- [Deployment](#deployment)\n- [Screenshots](#screenshots)\n- [Contributing](#contributing)\n- [License](#license)\n\n## **Key Features**\n\n### 🌍 **Multi-language Support**\n- **Seamless translations** for Indian languages such as:\n  - Hindi (hi)\n  - Bengali (bn)\n  - Urdu (ur)\n  - Kannada (kn)\n  - Gujarati (gu)\n- **Automatic fallback** to English when translations are unavailable.\n- Real-time translations powered by the **Google Translate API**.\n\n### 🚀 **Performance Optimizations**\n- **Redis-based caching** for significantly improved response times.\n- **Efficient MongoDB querying** ensures smooth database interactions.\n- **Automatic cache invalidation** on content updates for consistency.\n\n### ⚡ **Core Functionalities**\n- CRUD operations for **FAQ management**.\n- **WYSIWYG editor** for rich text formatting.\n- **Admin panel** for easy FAQ management.\n- RESTful **API architecture** for integration.\n- Extensive **test coverage** to ensure reliable performance.\n\n## **System Architecture**\n\n```plaintext\n📦 FAQ Management System\n ┣ 📂 config/\n ┃ ┗ 📜 database.js        # MongoDB configuration \u0026 connection handling\n ┣ 📂 controllers/\n ┃ ┗ 📜 faqController.js   # Business logic \u0026 CRUD operations\n ┣ 📂 middleware/\n ┃ ┗ 📜 cache.js           # Redis caching implementation\n ┣ 📂 models/\n ┃ ┗ 📜 Faq.js             # MongoDB schema with translation support\n ┣ 📂 routes/\n ┃ ┣ 📜 admin.js           # Admin panel routes\n ┃ ┗ 📜 faqRoutes.js       # API endpoints\n ┣ 📂 services/\n ┃ ┗ 📜 translationService.js  # Multi-language translation handling\n ┣ 📂 tests/\n ┃ ┣ 📂 integration/       # API \u0026 system integration tests\n ┃ ┗ 📂 unit/               # Unit tests for components\n ┣ 📜 server.js            # Application entry point\n ┣ 📜 .env                 # Environment configuration\n ┗ 📜 package.json         # Project dependencies\n```\n\n## **Screenshots**\n![Schema](https://github.com/user-attachments/assets/0632a827-e57c-4aae-88a4-d148ede5d68f)\n![GET_ALL](https://github.com/user-attachments/assets/bc66e454-cba1-4001-8b1e-11653e2d909e)\n![POST](https://github.com/user-attachments/assets/de56bdaa-5141-4f10-8957-2cfaefef0e5f)\n![image](https://github.com/user-attachments/assets/3a905e79-aca9-4009-9c76-01554c7e96fb)\n![image](https://github.com/user-attachments/assets/1b3ff290-4f7c-486e-8dc8-733b3fa21f84)\n\n\n## **Installation**\n```sh\n# Clone the repository\ngit clone https://github.com/your-repo/faq-management.git\ncd faq-management\n\n# Install dependencies\nnpm install\n\n# Start the server\nnpm start\n```\n\n## **Configuration**\nEnsure you set up your `.env` file with the necessary environment variables:\n```sh\nMONGO_URI=mongodb+srv://\u003cyour-mongo-url\u003e\nREDIS_HOST=localhost\nREDIS_PORT=6379\nTRANSLATION_API_KEY=your-google-translate-api-key\n```\n\n## **Testing**\n```sh\nnpm test\n```\n\n❤️ Made with love for BharatFD by Surya Parida\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsurya-sourav%2Ffaq_management_backend","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsurya-sourav%2Ffaq_management_backend","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsurya-sourav%2Ffaq_management_backend/lists"}