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.
App: https://paintmonitor.com This time, I created an application called "PaintMonitor".
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.
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.
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.
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.
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 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.
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