[JAVA] Portfolio (Toretomo) commentary

App overview

It is an application that allows you to search for your ideal gym by area (currently only wards in Osaka city) and category where you live, and at the same time, search for trainers who have contracts or are active in each gym.

It is open to the public on the following page! http://toretomo.work/

Production background

** The background of the production is the experience I had trouble with, the worries I had when I was working as a trainer, and the desire to "tell as many people as possible about the joy of training" **.

In particular

1.There is no site where you can see gym and free personal trainers together
2.In the first place, the recognition of free personal trainers is low
3.I want more people to know the fun of training

1. There is no site where you can see gym and free personal trainers together

When I was a college student, I had a hard time finding a ** free personal trainer when I participated in bodybuilding competitions. ** Because the service to find a free personal trainer and the service to organize gyms in each area were separate.

After contacting the trainer and wondering if I could come to the gym I attend, and if that gym could provide personal guidance, I was finally given training guidance by a free personal trainer.

** Issues I found while working as a trainer ** (related to 2) also overlapped, and there was still no such site, so I thought ** "Let's make it myself!" Is the biggest reason **.

2. Low awareness of free personal trainers in the first place

After working as a trainer, I noticed that ** free personal trainers are not very well known. ** **

A free personal trainer is a trainer who can request a business trip personal at the gym that each contracts or if it is available.

When asked if they knew a free personal trainer, mainly those who withdrew, few knew it. Personal trainers are quite well known. .. (Probably thanks to RI ○ AP)

So I thought ** "Isn't it convenient to put a free personal trainer available at that gym on the detail page of each gym on the site that summarizes the gyms?" ** "A service that can realize that?" I want to make it "**, which led to this creation.

3. I want more people to know the fun of training

The author himself changed his life through training. There were various merits such as gaining confidence, being able to manage myself, and being able to set goals. I became a trainer because I wanted as many people as possible to know about it. ** However, the range of value provided by the trainer was only those who came to the gym. ** **

** I want as many people as possible to know the joy of training! ** **

It was ** creating a Web service ** that could solve this problem.

function

User registration / login function(Devise)
Management screen(Active admin)
Like function
Comment function
5-step evaluation function(Raty)
List display(Swiper in part)
Character string omission function(Readmore)
Image enlargement function(Lightbox2)
Pagination(Kaminari)
Search function(Ransack)
Map function(Google Map and Geocoder)
Inquiry form(Action Mailer)

User registration / login function (Devise)

By registering users, you can post likes and comments to each gym and trainer.

Admin screen (Active admin)

You can edit, register, and delete information about gyms, trainers, and users.

Search function (Ransack)

·Free Word Search ・ Search by category or region ・ Price refinement search ・ Sort function (in order of most reviews, new arrival, etc.)

point

・ We had an active engineer review and get feedback. ・ Incorporated opinions from free personal trainers ・ Assuming the site, we cut a branch for each function to be implemented and implemented it. ・ Even if an error occurs, I solved it by myself by referring to the articles on Youtube and Qiita without relying on the salon mentor. ・ Before starting development, we prepared functions to be used, DB association, design (using Figma), etc.

Technology / environment used

・ Ruby 2.6.5, Rails 5.2.4 ・ HTML, SCSS, Javascript, jQuery ・ Nginx, unicorn ・ AWS (EC2, S3, VPC, Route53) ・ MySQL ・ Github

Finally

Thank you for reading to the end!

The first post was an overview of my portfolio, but from now on I will post things that I struggled with during development and what I noticed.

Recommended Posts

Portfolio (Toretomo) commentary
portfolio