All Projects → lumenwrites → Django React Blog

lumenwrites / Django React Blog

Licence: mit
Simple blog built with Django and React/Redux, deployed with Docker, and served with nginx/uwsgi.

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Django React Blog

Tweetme 2
Build a twitter-like app in Django, Bootstrap, Javascript, & React.js. Step-by-Step.
Stars: ✭ 247 (-53.22%)
Mutual labels:  django, django-rest-framework, bootstrap
Django Api Domains
A pragmatic styleguide for Django API Projects
Stars: ✭ 365 (-30.87%)
Mutual labels:  django, django-rest-framework
Try Django 1.11
Learn the fundamentals behind one of the most popular web frameworks in the world: Django. We will teach you step-by-step how to implement concepts like Views, Template Rendering, Forms, Saving Data, URL routing, Deployment aka Going Live, and so much more. Django is a web-framework written in Python and runs the backend for many of the internet's most popular websites such as Instagram and Pinterest. Get started today!
Stars: ✭ 359 (-32.01%)
Mutual labels:  django, bootstrap
Django React Boilerplate
DIY Django + React Boilerplate for starting your SaaS
Stars: ✭ 385 (-27.08%)
Mutual labels:  django, django-rest-framework
Drf Flex Fields
Dynamically set fields and expand nested resources in Django REST Framework serializers.
Stars: ✭ 350 (-33.71%)
Mutual labels:  django, django-rest-framework
Channels Api
RESTful Websocket APIs with Django Rest Framework and Channels
Stars: ✭ 353 (-33.14%)
Mutual labels:  django, django-rest-framework
Coderedcms
A content management system for marketing websites based on Django and Wagtail.
Stars: ✭ 386 (-26.89%)
Mutual labels:  django, bootstrap
Django Rest Framework Jwt
JSON Web Token Authentication support for Django REST Framework
Stars: ✭ 3,105 (+488.07%)
Mutual labels:  django, django-rest-framework
Django Rest Framework Passwordless
Passwordless Auth for Django REST Framework
Stars: ✭ 412 (-21.97%)
Mutual labels:  django, django-rest-framework
Django Markdown Editor
Awesome Django Markdown Editor, supported for Bootstrap & Semantic-UI
Stars: ✭ 423 (-19.89%)
Mutual labels:  django, bootstrap
Django Rest Framework Api Guide
Django REST framework API 指南
Stars: ✭ 437 (-17.23%)
Mutual labels:  django, django-rest-framework
Dj Rest Auth
Authentication for Django Rest Framework
Stars: ✭ 491 (-7.01%)
Mutual labels:  django, django-rest-framework
Nsot
Network Source of Truth is an open source IPAM and network inventory database
Stars: ✭ 337 (-36.17%)
Mutual labels:  django, django-rest-framework
Vmaig blog
an opensource blog system based on django 2.2 and bootstrap https://vmaig.com
Stars: ✭ 354 (-32.95%)
Mutual labels:  django, bootstrap
Docker Django Nginx Uwsgi Postgres Tutorial
Docker + Django + Nginx + uWSGI + Postgres 基本教學 - 從無到有 ( Docker + Django + Nginx + uWSGI + Postgres Tutorial )
Stars: ✭ 334 (-36.74%)
Mutual labels:  django, django-rest-framework
Onlinejudge
open source online judge based on Vue, Django and Docker. | 青岛大学开源 Online Judge | QQ群 496710125 | [email protected]
Stars: ✭ 4,458 (+744.32%)
Mutual labels:  django, django-rest-framework
Fcm Django
FCM Django: Send push notifications via django to websites, iOS & android mobile devices through FCM (Firebase Cloud Messaging)
Stars: ✭ 495 (-6.25%)
Mutual labels:  django, django-rest-framework
Presentations
Collection of presentations for advanced Python topics
Stars: ✭ 264 (-50%)
Mutual labels:  django, django-rest-framework
Openciviwiki
Building a Better Democracy for the Internet Age
Stars: ✭ 275 (-47.92%)
Mutual labels:  django, django-rest-framework
Meethub
This is a Python/Django based event management system. A meetup clone.
Stars: ✭ 411 (-22.16%)
Mutual labels:  django, django-rest-framework

This is a very simple blog built with Django, Django REST Framework, React/Redux, and Bootstrap, deployed with Docker, and served with nginx-uwsgi. It can be useful as an example of integrating Django with React, as a starter project, or as a beautiful and simple blogging tool =)

I have built this project by following these two awesome React courses, I highly recommend them to anybody who wants to learn React! This Django REST Framework course really helped me to build the backend, and this course was incredibly helpful for learning Docker.

I have tried to extensively comment the code, so you could easily understand what's going on, and apply it to your own projects.

This is my first project built with all this tech, so if you have suggestions on how to improve it - I'd really appreciate them. I will keep gradually improving this blog and adding more features. Feel free to contribute to this project, report bugs, or fork it and use it for your purposes. I hope you will find it useful!

You can always contact me at [email protected], and you can check out the other stuff I'm working on over here.

Screenshot

Screenshot

Installation

Installing and running this blog is very simple. Clone this repo, and then simply run:

docker-compose up
(use -d flag to run it in the background)

After that, the blog will be running on the localhost. Isn't Docker amazing? =)

You will also need to attach to the container by running this:

docker exec -i -t backend  /bin/bash

run migrations:

python3.5 manage.py migrate

and create an admin user with:

python3.5 manage.py createsuperuser

Now you can go to localhost/login url, login and begin blogging!

Important: Before running it on the server, go to backend/config/env, and change "SECRET_KEY" and "POSTGRES_PASSWORD" to something unique.

To deploy it online, go to Digital Ocean, create a Docker droplet, and repeat the same commands. Then you will need to go to the networking tab, and create two A records pointing to the droplet:

yourawesomeblog.com
api.yourawesomeblog.com

Like so:

Screenshot

You can also go to:

api.yourawesomeblog.com/admin

to access the admin panel. You can add categories there, if you want to better organize your posts, and you can create a settings object where you can add an about page and fill in the meta info(site title, keywords, etc).

Todo

Upcoming features

  • [X] Core settings. Meta info, analytics, about page.
  • [X] Categories
  • [X] Filter by tags.
  • [X] Drafts
  • [X] Email subscriptions.
  • [X] Pagination.
  • [ ] Server side rendering.
  • [ ] Proper form validation.
  • [X] RSS

Bugs

  • [X] Sometimes post editor toolbar is yellow
  • [X] After clicking on post, it doesn't always scroll to the beginning of the page, though it should.

Devops

  • [X] Don't expose 8000/8080 ports. Access them only with the nginx container.
  • [ ] Separate docker-compose files for production and development.
  • [ ] Compile and serve frontend files from the /dist directory.
  • [ ] Properly use Docker Volume API. Like here
  • [ ] Learn to backup DB.
  • [ ] Maybe: Copy the code into container instead of using voulmes(if it has advantaeges).
  • [ ] Chain together RUN commands in the Dockerfile, for efficiency.

Future/Maybe

  • Auto Saving.
  • Code syntax highlighting? IPython? MathJax?
  • Create settings page where you can fill in meta info and create categories.
  • Figure out how to properly run multiple instances of the blog on one server.
  • Create page that allows you to just send emails, like on medium?
    //or just customize a notification email about new posts.
  • Themes?
  • Hosting?
  • Export/Import data?
  • Add nested comments?
  • Image upload?

Clean up

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].