{"id":16887999,"url":"https://github.com/dojutsu-user/django-react-blog","last_synced_at":"2025-04-12T21:52:46.701Z","repository":{"id":52307019,"uuid":"140924875","full_name":"dojutsu-user/Django-React-Blog","owner":"dojutsu-user","description":"A Simple Blog Made Using Django As The Backend (Using Django Rest Framework) And ReactJS As The Frontend.","archived":false,"fork":false,"pushed_at":"2024-08-05T06:33:52.000Z","size":1042,"stargazers_count":89,"open_issues_count":1,"forks_count":38,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-03-26T16:02:22.667Z","etag":null,"topics":["django","django-blog","django-react-redux","django-rest-framework","javascript","python3","react-router","reactjs","redux"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dojutsu-user.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-07-14T07:13:05.000Z","updated_at":"2025-03-14T15:00:44.000Z","dependencies_parsed_at":"2024-10-28T13:15:08.369Z","dependency_job_id":null,"html_url":"https://github.com/dojutsu-user/Django-React-Blog","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dojutsu-user%2FDjango-React-Blog","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dojutsu-user%2FDjango-React-Blog/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dojutsu-user%2FDjango-React-Blog/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dojutsu-user%2FDjango-React-Blog/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dojutsu-user","download_url":"https://codeload.github.com/dojutsu-user/Django-React-Blog/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248637834,"owners_count":21137538,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["django","django-blog","django-react-redux","django-rest-framework","javascript","python3","react-router","reactjs","redux"],"created_at":"2024-10-13T16:48:11.580Z","updated_at":"2025-04-12T21:52:46.677Z","avatar_url":"https://github.com/dojutsu-user.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Django-React-Blog\nThis is a \"Blogging Platform\" which gives all general features a blog should have.\n\nThe backend is completely build on Django using Django Rest Framework, while the frontend is completed using ReactJS.\n### Features\n* Login/Registration\n* Minimal Design\n* Create/Edit/Delete Your Posts\n* User Profile\n* Comment Enable\n* Admin Panel\n\t* Create/View/Edit/Delete A User\n\t* Create/View/Edit/Delete A Post By Any User\n\t* View/Edit/Delete All Comments In The Blog\n\t* View/Edit/Delete All Comments To A Specific Post\n\t* Publish/Unpublish A Post\n\n## Backend Setup\n1. Clone this repository: `git clone https://github.com/dojutsu-user/Django-React-Blog.git`.\n2. Change the current directory to `backend` folder: `cd ./Django-React-Blog/backend/`.\n3. Create a virutal environment and install all backend dependencies with pipenv: `pipenv install`.\n4. Start the virtual environment: `pipenv shell`.\n5. Change the working directory to `blog_backend` which contains the `manage.py` file: `cd ./blog_backend`.\n6. Run `python manage.py makemigrations`.\n7. Run `python manage.py migrate`.\n8. Create a superuser: `python manage.py createsuperuser`\n9. Run the server: `python manage.py runserver`.\n\n## Frontend Setup\n1. Navigate the current working directory to `blog_frontend`: `cd ./Django-React-Blog/frontend/blog_frontend/`.\n2.  Install the all frontend dependencies using npm: `npm install`.\n3.  Run the server: `npm start`.\n\n### Creating The First Post\n1. Make sure that both Backend and Frontend Servers are running.\n2. Open your browser and navigate to [localhost:3000](localhost:3000).\n3. Go To [http://localhost:3000/login/](http://localhost:3000/login/).\n4. Login with the superuser credentials created while setting up the Backend (Step: 8)\n5. Navigate To *Dashboard -\u003e Create New Post* ([http://localhost:3000/dashboard/create-new-post](http://localhost:3000/dashboard/create-new-post)).\n6. Fill the form to create a new post and then Submit it.\n7. The submitted post will not appear on the homescreen unless and until the admin approves it.\n8. To approve the post, go to *Dashboard -\u003e Admin Panel -\u003e View All Posts* and then click on *Edit* Button.\n9. Check the checkbox labelled *Published* and then submit.\n10. After the post gets published, it will be displayed on the homepage of the blog ([localhost:3000](localhost:3000)).\n11. Note: *Once the post gets published, the user can only edit the post from the Dashboard, however, the admin still can edit/delete the post from the Admin Panel*\n\n## Backend API Documentation\nAPI Documentation is generated using the default tool provided by Django Rest Framework.\n\n### View The API documentation\n1. Make sure that the Backend Server is running.\n2. Navigate to the [localhost:8000/docs/](localhost:8000/docs/)\n\n## Screenshots\n![screencapture-localhost-3000-2018-08-09-00_55_39](https://user-images.githubusercontent.com/29149191/43859744-2d0d54d6-9b6f-11e8-9bc9-c9f3a81c66af.png)\n=\n![screencapture-localhost-3000-dashboard-create-new-post-2018-08-09-00_51_40](https://user-images.githubusercontent.com/29149191/43859585-ac2a47b6-9b6e-11e8-8ec3-86aaa4d51bfe.png)\n=\n\n![screencapture-localhost-3000-admin-panel-2018-08-09-00_51_25](https://user-images.githubusercontent.com/29149191/43859586-ac6b43ce-9b6e-11e8-993d-1f6c0b29ef2a.png)\n=\n![screencapture-localhost-3000-posts-view-consequat-mauris-nunc-congue-ni-2018-08-09-00_49_53](https://user-images.githubusercontent.com/29149191/43859587-acacdbfe-9b6e-11e8-8d99-835f4e18dfbc.png)\n=\n![screencapture-localhost-3000-login-2018-08-09-00_21_50](https://user-images.githubusercontent.com/29149191/43859588-aced0602-9b6e-11e8-9b6a-317ac39cf0ff.png)\n=\n![screencapture-localhost-3000-dashboard-2018-08-09-00_54_56](https://user-images.githubusercontent.com/29149191/43859745-2d61b030-9b6f-11e8-9c49-90e08c054647.png)\n=\n![screencapture-localhost-3000-register-2018-08-09-17_26_33](https://user-images.githubusercontent.com/29149191/43897437-9ae18b46-9bf9-11e8-8a20-ad5c5c628963.png)\n=\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdojutsu-user%2Fdjango-react-blog","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdojutsu-user%2Fdjango-react-blog","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdojutsu-user%2Fdjango-react-blog/lists"}