Welcome to the Social Media Post Automation project! This tool is designed to automate Instagram posts, stories, and much more. Whether you're looking to upload in bulk, schedule content, or streamline your social media management, this project has you covered.
- Bulk Post Upload: Upload multiple posts at once with ease.
- Bulk Story Upload: Share multiple stories in a single go.
- Content Scheduling: Plan and schedule your posts and stories for future dates and times.
- Automatic Posting: Automate your posts to go live at the optimal times.
- Detailed Analytics: Get insights and analytics on your posts and stories.
- User-Friendly Interface: Simple and intuitive interface for seamless navigation.
- Multi-Account Management: Manage multiple Instagram accounts effortlessly.
- FastAPI: For building the backend API.
- React: For building the frontend interface.
- Celery: For handling asynchronous tasks.
- MongoDB: For storing data.
- Redis: For task queuing.
- Python 3.9+
- Node.js 14+
- MongoDB
- Redis
-
Clone the repository:
git clone https://github.com/ridhotamma/Project-Roy.git cd ./Project-Roy
-
Project Setup
Create a virtual environment for the backend FastAPI:
If on macOS/Linux:
python3 -m venv venv
If on Windows:
python -m venv venv
Activate the virtual environment:
If on macOS/Linux:
source venv/bin/activate
If on Windows:
.\venv\Scripts\activate
Install backend dependencies:
pip install -r requirements.txt
Install frontend dependencies:
cd ./frontend npm install
-
How to run the project
Run the backend:
uvicorn app.main:app --reload
Run the frontend:
cd ./frontend && npm run dev
If you are using macOS, just run using the Makefile:
make start-dev
-
Running with Docker
Using Docker Compose:
docker-compose up --build -d
P.S. The frontend is still in progress. You can play around with the Swagger docs at http://localhost:8000/docs.