https://github.com/surya-sourav/faq_management_backend
Faq_management_Backend Server
https://github.com/surya-sourav/faq_management_backend
backend fintech
Last synced: about 1 year ago
JSON representation
Faq_management_Backend Server
- Host: GitHub
- URL: https://github.com/surya-sourav/faq_management_backend
- Owner: Surya-sourav
- Created: 2025-02-01T12:04:33.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-02-01T13:03:54.000Z (over 1 year ago)
- Last Synced: 2025-02-01T13:25:19.705Z (over 1 year ago)
- Topics: backend, fintech
- Language: JavaScript
- Homepage: https://faq-management-backend.onrender.com/api/faqs
- Size: 10.7 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# **FAQ Management System**




A 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.
## **Live Deployment**
🚀 **Backend API:** [FAQ Management Backend](https://faq-management-backend.onrender.com/api/faqs)
## **Table of Contents**
- [Key Features](#key-features)
- [System Architecture](#system-architecture)
- [Multi-language Support](#multi-language-support)
- [Installation](#installation)
- [Configuration](#configuration)
- [API Documentation](#api-documentation)
- [Testing](#testing)
- [Deployment](#deployment)
- [Screenshots](#screenshots)
- [Contributing](#contributing)
- [License](#license)
## **Key Features**
### 🌍 **Multi-language Support**
- **Seamless translations** for Indian languages such as:
- Hindi (hi)
- Bengali (bn)
- Urdu (ur)
- Kannada (kn)
- Gujarati (gu)
- **Automatic fallback** to English when translations are unavailable.
- Real-time translations powered by the **Google Translate API**.
### 🚀 **Performance Optimizations**
- **Redis-based caching** for significantly improved response times.
- **Efficient MongoDB querying** ensures smooth database interactions.
- **Automatic cache invalidation** on content updates for consistency.
### ⚡ **Core Functionalities**
- CRUD operations for **FAQ management**.
- **WYSIWYG editor** for rich text formatting.
- **Admin panel** for easy FAQ management.
- RESTful **API architecture** for integration.
- Extensive **test coverage** to ensure reliable performance.
## **System Architecture**
```plaintext
📦 FAQ Management System
┣ 📂 config/
┃ ┗ 📜 database.js # MongoDB configuration & connection handling
┣ 📂 controllers/
┃ ┗ 📜 faqController.js # Business logic & CRUD operations
┣ 📂 middleware/
┃ ┗ 📜 cache.js # Redis caching implementation
┣ 📂 models/
┃ ┗ 📜 Faq.js # MongoDB schema with translation support
┣ 📂 routes/
┃ ┣ 📜 admin.js # Admin panel routes
┃ ┗ 📜 faqRoutes.js # API endpoints
┣ 📂 services/
┃ ┗ 📜 translationService.js # Multi-language translation handling
┣ 📂 tests/
┃ ┣ 📂 integration/ # API & system integration tests
┃ ┗ 📂 unit/ # Unit tests for components
┣ 📜 server.js # Application entry point
┣ 📜 .env # Environment configuration
┗ 📜 package.json # Project dependencies
```
## **Screenshots**





## **Installation**
```sh
# Clone the repository
git clone https://github.com/your-repo/faq-management.git
cd faq-management
# Install dependencies
npm install
# Start the server
npm start
```
## **Configuration**
Ensure you set up your `.env` file with the necessary environment variables:
```sh
MONGO_URI=mongodb+srv://
REDIS_HOST=localhost
REDIS_PORT=6379
TRANSLATION_API_KEY=your-google-translate-api-key
```
## **Testing**
```sh
npm test
```
❤️ Made with love for BharatFD by Surya Parida