[PYTHON] [Personal development] Story of creating an application for artists with SPA with Django REST Framework and Vue-Cli [DRF + Vue.js]

Introduction

Hello. I'm a new engineer for the second year. This time, I finally released a personally developed app, so I'm going to make it an article.

Creation

App: https://paintmonitor.com This time, I created an application called "PaintMonitor". top-cap.jpg

The name was also quite stray at first, and after all it was easy to understand, I made it Paint (draw) Monitor (visualization). As a feature of the app, Draw (Paint), parse (Monitor), and share (SNS). There are 3 points.

System configuration

Drainer.jpg

The system configuration is Ubuntu Server, which you are most familiar with. The development language used Django's Django REST Framework. The DjangoRESTFramework was very easy to use and intuitive to understand. For the construction around authentication, I referred to the book "Django REST Framework that can be used in the field". This Django on-site series is recommended because it has a lot of content that you can really use on-site.

Around the front, I used Vue.js, which I often use at work these days. Vue.js has low development cost and is easy to use, so It was very good to create a SPA. If you use it with Webpack, the code will be reflected at hot timing, so it speeded up the development. At the beginning of development, I was developing with jQuery, but I also wanted to do native deployment, so I remade it into a modern construction.

DB is the usual MySQL. The storage uses AWS. The AP server uses Gunicorn. For single performance, uWSGI is better, but If you want to focus on system stability, Gunicorn seems to be a good choice. The web server was released with the usual Nginx and encrypted with LetsEncript.

The reason why I decided to make it by personal development

I was able to do WEB to some extent, and I always wanted to make something. I like art and technology I decided to combine them to create an app for artists. I thought it would be nice to have a service that draws on the WEB, practices, and makes it an SNS, so I started making it. At first, use tensorflow to score the picture and use the rate battle I thought about making an app that focuses on battle, I thought that the app for practicing painting would be more practical, so I chose the app for practicing. I wonder if battles and other features should be added in a later update.

Where I had a hard time with personal development

You have to think about it all by yourself, which is a huge amount of work.

The amount of work is simply violent, so it was a little difficult to develop between jobs. When I got on and off the train to go to the office, I got on the train when I could sit down, spread my Surface, and worked rattlingly. But I like writing code, so I had some fulfilling days.

It's hard to think about the design and specifications.

I move my hands more than I think, so when it comes to designing, I simply sketched the screen and designed it without using FIGMA or XD. In my case, I referred to my favorite web service, Pinterest. The specifications were considered appropriately, and if there was a correction, it would be corrected each time, which would be angry for team development.

I'm too particular about it and it takes time

I often draw pictures myself, so I was very particular about the paint part. I made a new paint application 4 or 5 times to make a practical paint tool even though it is WEB, It took more than half a year to develop because 70% of the development was spent on this paint tool.

Finally

Personal development was difficult, It's a personal portfolio, and above all, it's a mess. Isn't it the best way to improve your development skills by creating and releasing an app? I felt that. I've talked about it for a long time, Created Paint Monitor, It was just released last night, so there are no users yet. I would be happy if you could touch it and play with it. I will continue to do my best to update.

Recommended Posts

[Personal development] Story of creating an application for artists with SPA with Django REST Framework and Vue-Cli [DRF + Vue.js]
Explanation of creating an application for displaying images and drawing with Python
Procedure for creating an application with Django with Pycharm ~ Preparation ~
Django REST framework with Vue.js
Try creating a web application with Vue.js and Django (Mac)-(1) Environment construction, application creation
Volume of creating and publishing django-malice, a django application for causing HTTP 40X errors
Login with django rest framework
Implementation of CRUD using REST API with Python + Django Rest framework + igGrid
[DynamoDB] [Docker] Build a development environment for DynamoDB and Django with docker-compose