Logo Lanfrica

kenechiaugustine/MedHirePro_server

Domaine:

healthcare

Type de record:

software
Créateur:
ken
Hôte:
Connecting medical professionals with premium healthcare roles in Nigeria 🇳🇬.Hire licensed medical staff fast or find shifts ,locum & Jobs. # 🩺 MedHirePro Backend Server Welcome to the backend engine of **MedHirePro**—a robust, high-performance staffing and hiring platform tailored specifically for the healthcare sector. Built on a state-of-the-art asynchronous architecture, this API leverages **FastAPI**, **MongoDB (via Motor driver)**, and **Docker** to provide a secure, fast, and scalable service layer that connects medical professionals with healthcare institutes. --- ## 📌 Table of Contents - 🚀 Key Architecture & Highlights - 🛠️ Technology Stack - 💻 Local Development Setup - Option 1: Manual Virtualenv Run - Option 2: Docker Compose (Recommended) - 📜 License --- ## 🚀 Key Architecture & Highlights - **⚡ Lightning-Fast Asynchronous Processing**: Built entirely around Python's `async/await` paradigm, utilizing `AsyncIO` and `Motor` to handle heavy parallel traffic without blocking the event loop. - **👥 Flexible Dual-Role Onboarding**: Tailored sign-up paths and business logic constraints for both **Medical Professionals** and **Healthcare Institutes**. - **🛡️ Premium Security & Sessions**: State-of-the-art JWT architecture featuring access and refresh token pairings with secure client authentication under FastAPI's `HTTPBearer` scheme. Secure password hashing is implemented using `passlib[bcrypt]`. - **🌐 Seamless Google OAuth SSO**: Server-side verified single sign-on (SSO) and registration using Google Client tokens. Automatically registers new OAuth profiles while preventing duplication. - **💰 Transactional Credits System (Ledger Model)**: - **Welcome Bonus**: Awards a default sign-up bonus of **2 credits** to new users. - **Daily & Social Caps**: Rolling 24-hour daily limits (default **20 credits** limit for `daily` tasks, **1 claim** per 24 hours for `socials` tasks) to block bot abuse. - **Atomic Integrity**: Credits spending is done atomically in MongoDB (`$gte` balance checks paired with `$inc` operations) to prevent race conditions or double-spending vulnerabilities. - **🧹 Complian …

Languages