MCPcopy Index your code
hub / github.com/Shankar-105/Social-Media-Api

github.com/Shankar-105/Social-Media-Api @main

Chat with this repo
repository ↗ · DeepWiki ↗ · + Follow
551 symbols 2,057 edges 98 files 174 documented · 32%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

🚀 Social Media Api

Modern Social Media Backend + Real-time Chat – Scalable, Fast, and Beginner-Friendly

A fully async, non-blocking social media backend built to handle thousands of concurrent connections without breaking a sweat. The stack is designed around FastAPI, async SQLAlchemy, PostgreSQL, Redis, WebSockets, RabbitMQ, Celery, LGTM Stack for observability k6, and pytest so every layer has a clear job: API requests stay fast, database access stays async, background work stays off the request path, and observability stays visible. Production-grade, real-time, and built for scale.


Python FastAPI SQLAlchemy PostgreSQL Redis Docker Prometheus Grafana k6 Celery RabbitMQ


🌟 Features — Everything Inside

This API packs a lot. For the full breakdown of every feature — async architecture, chat, caching, DevOps, and more — see docs/FEATURES.md.


🚦 Setup On Your Local Host — Simplified with Docker!

Want to run the API, test it, or make your own changes? Start with docs/SETUP.md to clone the repository and set up the environment in your machine.


📖 How to Use the API — Complete Endpoint Reference

Now that your setup is running, Check out docs/API_GUIDE.md for a detailed walkthrough of all 60+ REST endpoints and the real-time WebSocket chat system.


☁️ Azure Deployment — How the app is hosted in the cloud

Want to know how this project runs in the Azure cloud? Read docs/AZURE_DEPLOYMENT.md for the Azure VM, PostgreSQL, Blob Storage, Redis, and CI/CD setup behind the live deployment.


🧪 Testing — Comprehensive Test Suite!

Ready to verify everything works? Check out docs/TESTS.md for a complete guide on running the test suite. All tests use a separate test database—your dev data stays safe! 🛡️


📸 Benchmark Proof — RPS, P95 Graphs and What They Mean

Real benchmark evidence for the deployed app, with charts + clear conclusions docs/BENCHMARK.md.


📊 Monitoring and Load Testing

Want to observe app raw performance and run synthetic traffic on API? Start with docs/MONITORING_AND_LOAD_TESTING.md for Grafana and k6 setup with app performance reuslts.


🤝 Contributing

Backend developer? Frontend developer? Either, there's a clear path for you. See CONTRIBUTING.md.


👨‍💻 Built by Bhavani Shankar Mukka 🎓

From Anits Engineering College

Built with ❤️ using FastAPI


Core symbols most depended-on inside this repo

send_personal_message
called by 24
app/utils/socket_manager.py
delete_cache_pattern
called by 18
app/services/redis_service.py
delete_cache
called by 17
app/services/redis_service.py
disconnect
called by 15
app/utils/socket_manager.py
increment_cache_version
called by 15
app/services/redis_service.py
_drop_constraint
called by 14
alembic/versions/d8a5f4b7c2e1_harden_schema_indexes.py
_safe_int
called by 14
app/messaging/chat.py
get_blob_url
called by 14
app/services/blob_service.py

Shape

Function 326
Class 106
Route 72
Method 47

Languages

Python96%
TypeScript4%

Modules by API surface

app/schemas.py66 symbols
app/routes/me.py24 symbols
app/utils/exceptions.py20 symbols
app/models.py19 symbols
pytests/test_cross_process_chat_delivery.py18 symbols
pytests/conftest.py18 symbols
app/utils/socket_manager.py18 symbols
loadtests/common.js17 symbols
pytests/test_edge_cases.py16 symbols
app/routes/auth.py16 symbols
pytests/test_concurrency_hardening.py14 symbols
app/routes/users.py14 symbols

For agents

$ claude mcp add Social-Media-Api \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page