Building a todo app using Vue and Django (Django rest framework)

Building a todo app using Vue and Django (Django rest framework)

/ #Django #Vue.js


In this Django and Vue.js tutorial we'll be building a simple todo app. This is a trivial thing to do when you know a programming language, but it's also a great way to learn many of the key concepts of programming.

We'll be starting of this Django and Vue.js tutorial by installing and setting up Django. I am going to use something called a virtual environment. This makes it much easier to deploy the project later, because now I know all of the Python packages the project requires.

I will be using Vue.js for the frontend with a standalone application. Vue.js will use a library called Axios to communicate with the backend. To install Vue.js, I use the command line / vue ui (which is really easy to do). So I don't use a CDN or something similar. Since the Vue.js is completely separated from the Django backend, there is no reason why you can't build this with a different backend if you want that.

For the backend I will be using Django 3 and Django rest framework to build the API. Django Rest Framework is a brilliant library to build API's. It's really easy to get started with and it handles a lot of important thing for us. Things like security, serialization of objects and similar is something all API's has to have. Django Rest Framework (DRF) has all of this out of the box.

I hope that this sounds like an exciting Django and Vue project. When you're finished with this tutorial, you should be one step closer to building your own cool project :-)

Django and Vue are a great combination for building web application. There are almost no limitations to what you can build. Both Django and Vue have a really great community, so if you have any questions, there are always people who are eager to help.

Video


Comments

No comments yet...

Add comment

Newsletter

Subscribe to my weekly newsletter. One time per week I will send you a short summary of the tutorials I have posted in the past week.