MyBlogProject is a simple Django-based blogging GraphQL API developed using the Strawberry framework. It focuses on providing basic functionalities for a blogging platform, including creating posts and adding comments.
The project structure is as follows:
blog/
: Contains the Django app for the blogging functionalities.myblogproject/
: Main project directory.db.sqlite3
: SQLite database file.manage.py
: Django's command-line utility for administrative tasks.
- Post Creation: Users can create new blog posts with titles, content, and author information.
- Commenting: Users can add comments to existing blog posts.
- GraphQL API: The API is implemented using the Strawberry framework, providing a GraphQL endpoint for interacting with the blog data.
-
Clone the repository:
git clone https://github.com/yourusername/myblogproject.git
-
Navigate to the project directory:
cd myblogproject
-
Create a virtual environment:
python -m venv venv
-
Activate the virtual environment:
-
On Windows:
venv\Scripts\activate
-
On macOS and Linux:
source venv/bin/activate
-
-
Install dependencies:
pip install -r requirements.txt
-
Apply migrations:
python manage.py makemigrations python manage.py migrate
-
Run the development server:
python manage.py runserver
-
Access the GraphQL endpoint at
http://localhost:8000/graphql/
to interact with the API.
https://aniketdubey.hashnode.dev/building-a-simple-blogging-graphql-api-with-django-and-strawberry
Contributions are welcome! If you'd like to contribute to this project, please follow these steps:
- Fork the repository.
- Create a new branch (
git checkout -b feature/your-feature-name
). - Make your changes.
- Commit your changes (
git commit -am 'Add some feature'
). - Push to the branch (
git push origin feature/your-feature-name
). - Create a new Pull Request.
This project is licensed under the MIT License - see the LICENSE file for details.