A full-featured social media platform built using FastAPI. This project offers user authentication, profile management, real-time feeds, media uploads, comments, likes, and follower systems — all through a blazing fast, modern Python API.
- FastAPI for high-performance async APIs
- 🔐 JWT Authentication (register, login, password hashing)
- Follow/unfollow system
- Create, edit, delete posts with optional image/video uploads
- Like/unlike posts
- Comment on posts
- User profiles with bio, avatar, and stats
- Search users and posts
- Media support via S3/local storage
- Notifications system (basic)
- Pytest-based test suite
- mySQL with SQLAlchemy ORM
- Alembic for DB migrations
- clone
https://github.com/Adagedo/social-media-application-fastapi.git
- cd to fastapi
python -m venv venv
source venv/bin/activate
pip install -r requirements.txt
alembic upgrade head
uvicorn main:app --reload
- Visit
http://localhost:8000/docs
for Swagger UI.
pytest tests/
docker-compose up --build
- Fork the repo
- Create your feature branch: git checkout -b your branch-name
- Commit your changes: git commit -m "your commit"
- Push to the branch: git push origin your branch name
- Create a new Pull Request
Have questions? Reach out at [email protected]