2
0 Comments

Learn how to build a web app for creating and sending invoices (Django + Vue)

What we're building in this free tutorial series?

Many freelancers and business owners needs some sort of software for generating and sending pdf invoices to their clients. So what we're building in this series is exactly that. I'm going to make a web app where people can sign up and log in to. When you're logged in, you will have a dashboard with information about paid and unpaid invoices. You'll also be able to create clients, generate invoices, send invoices, register payments, send reminders, etc.

The tech stack

The backend for this project will be built with Django. I'm going to use the Django Rest Framework library for creating the API. I'm also going to use a library called Djoser. This is a library for helping us with tokens and authentication.
I'm going to make a separate frontend with Vue 3. So it will technically be two separated projects. I'm going to use a plugin called Axios for talking with the backend, and I'm also going to use a CSS framework called Bulma. Feel free to use Bootstrap if you want, but then you have to make the necessary changes your self :-)
When I'm deploying this project, I will deploy it to a Ubuntu 20.04 server on Digital Ocean. I'll be using Postegresql for the database.

Part one

Todo list for part 1 (timestamps)
00:01​ The intro
00:50​ Create virtual environment and activate it
01:50​ Install Django and some other libraries (Djoser, Django Rest Framework and Django Cors Headers)
03:00​ Create a new Django project
03:54​ Configure the project
07:05​ Add Djoser urls to the project
09:00​ Install Vue CLI
09:35​ Create a new Vue project
10:50​ Install Axios
11:00​ Install Bulma CSS
12:10​ Activate Axios
13:07​ Set up Vuex (State management)
16:10​ Change the layout (add menu, etc)

Want to check it out? You'll find it here:
https://www.youtube.com/watch?v=ktplOX4bz0M

Let me know if you have any questions :-)

Trending on Indie Hackers
Bootstrapped a Shopify app to 500+ paying clients with an MVP. AMA! 29 comments Rejected from YC 13 comments Milestone: $1 million paid out to mentors (soon) 10 comments 29 days left before 2022 🔥 What do you want to finish & accomplish before the end of the year? 9 comments First Launch on Product Hunt! 7 comments Launched our first widget 🔥 1 comment