Gorigori SIer SE tried to create a Web service by personal development

1. About me

As the title suggests, it is the SE of Gorigori SIer. SIer can't let BP do programming by throwing it all! I hear that, but I was programming normally. As expected, I wasn't allowed to do it all year round, and I had to work on project management and organizational activity improvement, but I was doing programming as it was.

However, since I am a member of a large-scale project, it was difficult to get an overview of the system. So, for the reason that I want to think about the whole picture and explain later, I will try to make a system by myself ... So, after 10 pm after my daughter went to bed, from 6 am before my daughter woke up I tried to make a web service using the time until 8 o'clock.

2. Created web service

Service name: "Kashikaji"

https://hwsharing.possumelon.com/

キャプチャ01.PNG

キャプチャ02.PNG

A web service that visualizes, manages, and shares the division and progress of household chores. It's not that new, but ... Visualization + Housework = Kashikaji

I've never studied design, and I'm doing it with a sense.

Details of the function will be explained later.

3. The reason for creating a web service

The reason for creating this service was a couple quarrel. Yome "I have a higher burden of housework and childcare!" I "I don't feel like that ..." Yome "Then write down all the housework and childcare for each other!" I"…"

I managed to dodge the attack, but at one point I came up with the idea, "How about visualizing it on the system?" When I talked to Yome, "Like-Isn't it clear if there is it?" That's why my personal development started.

4. Production period

I started around April, so it's about 5 months. It took so long because it had a strong meaning to study. I have a lot of experience in C # and Java when it comes to business. Therefore, I decided to use the frontside technology that I had never experienced before for studying. I was worried about React and Vue, but I thought that Vue was looser and easier to handle (prejudice), so I chose Vue. I also have a long experience with Java, so I decided to try Spring Boot, which I didn't do much. For reference, I configured the front as Vue and the backend as Spring Boot as an API.

5. Function introduction

Since I made it after studying, there are many functions that have nothing to do with the visualization of housework.

Login / logout

キャプチャ03.PNG

Spring Boot does the authentication nicely.

New user registration

キャプチャ04.PNG

It is a normal user registration function.

Password reset for those who have forgotten their password

キャプチャ05.PNG

The server uses AWS, but AWS makes it easy to send emails.

User search

キャプチャ07.PNG

It is a search function.

Profile settings

キャプチャ06.PNG

Upload your own image or write a self-introduction. You can see the information here by searching and selecting in the previous user search.

Send and receive messages

キャプチャ09.PNG

Send and receive messages to other users.

friend

キャプチャ08.PNG

You cannot become a "friend" unless you apply for a friend and the other party approves it. The following "chat" and "sharing of housework" can only be used by "friends".

chat

キャプチャ10.PNG

Well ... it's a chat. WebSocket.

Sharing of housework

キャプチャ11.PNG

This is the main enclosure. First, create a classification of household chores (cleaning, cooking, etc.), and register the work that fits that classification (vacuum cleaner, floor cleaning for cleaning, morning lunch, dinner, etc. for cooking). Allocate the registered work to the person in charge. Since the difference is visualized here, it will be sharp. Also, the play aspect is strong, but the screen is synchronized.

20200823_03.gif

If you move the work on one screen, the work on the other screen will also move. This is also WebSocket.

After sharing the responsibilities, register the forecasts and facts in the calendar.

キャプチャ12.PNG

Finish the housework.

キャプチャ12-2.PNG

Sharing progress

キャプチャ13.PNG

Report your work status. Somehow I use infinite scrolling.

6. Try to make

Frankly, it was fun. When I had enough time, I jumped in my heart, saying, "OK, I can take time for design and implementation!" However, I often overdoed it and was often told by Yome, "Fold the pile of laundry that is visualized there before the visualization of housework!" If I lived alone, I might have been programming for more than 10 hours a day. Just something ... lonely. Suddenly I wanted to join the community. I didn't enter it after all. If you can tell me some recommended community, I may be the only one.

7. Technology used

I will summarize it.

** ・ Vue (front end) ** ** ・ Java (backend) ** ** ・ Spring Boot (framework) ** ** ・ MariaDB (database) ** ** ・ Element (component library) ** ** ・ axios (HTTP client) ** ** ・ GSAP (animation) ** ** ・ VeeValidate (error check) ** ** ・ moment (date processing) ** ** ・ Apache Tomcat (Web / AP server) ** ** ・ AWS (server, domain acquisition, HTTPS conversion) **

8. Finally

I feel that this web service is overloaded with features. It may be good to position it as a loose community site dealing with housework ... I think it's better to specialize it so that it can be used. For visualization of housework, I feel that a service that does all the analysis from every angle is good. So this is a start for me. It feels like the engine has started. Therefore, I would like to consider planning the next service.

■ Supplement The process by which the SE of the Gorigori SIer tried hard until the release in the first personal development

Recommended Posts

Gorigori SIer SE tried to create a Web service by personal development
The process by which the SE of the Gorigori SIer tried hard until the release in the first personal development
I tried to create a java8 development environment with Chocolatey
I tried to create a padrino development environment with Docker
I tried to create a Spring MVC development environment on Mac
I tried to create a LINE clone app
The road to creating a Web service (Part 1)
We have released "Code-sell", a service that allows you to sell codes! (Personal development)
3. Create a database to access from the web module
[Rails] I tried to create a mini app with FullCalendar
I tried to implement a buggy web application in Kotlin
How to create a service builder portlet in Liferay 7 / DXP
[Personal development] I made a site to recruit test users!
I tried to create an API to get data from a spreadsheet in Ruby (with service account)
How to create a method
I tried Spring Boot introductory guide [Building a RESTful Web Service]
I tried to create a simple map app in Android Studio
A trip to decipher Spring's "GUIDES" Consuming a RESTful Web Service Edition.
[Java] I tried to make a maze by the digging method ♪
Spring Boot Introductory Guide I tried [Consuming a RESTful Web Service]
How to create a web server on an EC2 instance on AWS
Three Reasons to Frustrate Before the Release of a Web Service
[Purchase agency service individual development --No.011] Create a link to the order list on the company management screen