This Django REST framework-based API serves as a RESTful interface for a social media platform.
- Clone the repository:
git clone https://github.com/your-username/social-media-api
- Change to the project's directory:
cd social-media-api
-
Сopy .env_sample file with your examples of env variables to your .env file
-
Once you're in the desired directory, run the following command to create a virtual environment:
python -m venv venv
- Activate the virtual environment:
On macOS and Linux:
source venv/bin/activate
On Windows:
venv\Scripts\activate
- Install the dependencies
pip install -r requirements.txt
- Set up the database:
Run the migrations
python manage.py migrate
- Start the development server
python manage.py runserver
-
Access the website locally at http://localhost:8000.
-
Link to the swagger documentation http://localhost:8000/api/doc/swagger/
-
Authentication: Implement a secure method of accessing API endpoints by utilizing JWT token-based authentication.
-
Post management: Enable comprehensive CRUD functionality to handle posts, including their creation, retrieval. Additionally, provide the ability to filter posts based on their hashtags. Also, Users can see only owns posts and posts from their following users
-
User management: Allow users to register, and modify their profile details.
-
API documentation: Utilize Swagger UI to automatically generate interactive API documentation, which facilitates developers in effortlessly exploring and testing the API's endpoints.
Contributions are welcome! If you have any suggestions, bug reports, or feature requests, please open an issue or submit a pull request.