[RUBY] I tried to make an app that allows you to post and chat by genre ~ App overview ~

I created an app that allows you to post and chat by genre with a personal app. The following text is included in the README of this app. As an overview, I would like to post this article as well.

Ota-Chat

: sunny: App contents

――What kind of app is it?
An app that allows people with the same hobbies to post like Twitter and create groups within them so that people with the same hobbies can chat with each other.
--What you can do with this app
--You can only post in a genre, or you can create a group within it and chat with certain members.
-In group creation, you can select the rank (light, middle, hard) for the group, and you can select it according to the degree of hobby of the member.

: sunny: URL (deployed)

https://ota-chat.herokuapp.com/

: sunny: development environment

: sunny: Production background

: star: Group chat (with rank)

Even if my hobbies are the same, I think that the heat applied to those hobbies is ten people and ten colors. Even if you just say that you like anime, do you like gag anime, do you like serious anime, do you like the same anime work, are you satisfied just by watching it, or do you like it until you go to buy goods? Whether you like buying goods and going to all the events, your passion for hobbies is different for each person, whether it's public or secret. My friends say they like anime at work, but they also like mobile games, and it's a secret at work that they spend a lot of money on a character in that game. I created this app because I wanted to make an app that allows such friends to talk about the same character with each other. This group of apps is ranked because I thought it would be fun if my friends could talk to someone with the same character love.

: star: Posting function by genre

Looking at Twitter, I felt that there were tweets that I did not need in the keyword search, so I felt that it would be easier to see and post by genre from the beginning, so I added such a function.

: sunny: Function description

: star: Login registration function

: star: Account creation function

: star: Home screen

  1. You can see the genres you like and the groups you belong to.
  2. You can change your account, log out, and confirm your group wishes (explained below) from the icon on the upper right.
    Screenshot 2020-08-01 23 46 10 <img width =" 222 "alt =" Screenshot 2020-08-02 1 42 11 "src =" https://user-images.githubusercontent.com/61651779/89106079-dc3b2000-d461-11ea-84a7 -53e487026f3b.png ">

: star: Genre creation function

  1. You can create your own favorite genre
  2. You can jump to the genre posting screen by pressing an existing genre.
  3. You can also search for genres
    Screenshot 2020-08-01 23 53 56

: star: Genre posting screen (group search within genre is possible)

  1. A function that allows you to favorite the genre you like
  2. Posting function like Twitter (up to 5 images can be attached, attached images can be viewed by side-scrolling) (right side of the screen)
  3. Comment function for posts (on the right side of the screen)
  4. Like function for posts (right side of screen)
  5. Ability to browse only what you like (on the right side of the screen)
  6. Group search function within a genre (search by group name, search by group rank, or both) (left side of screen)

Screenshot 2020-08-02 0 56 12

: star: Group creation function

  1. Enter the users you want to join the group in the form and you can search by script search
  2. Feature 1: Select which rank from the three, light, middle, and hard for the group. For example, if you have a deep knowledge of hobbies and want to talk about it, you can choose hardware as a way to gather friends.
  3. Feature 2: You can enter "what kind of group you want to make and what kind of group you want to make" in the comment field.
    Screenshot 2020-08-02 1 16 08 <img width =" 222 "alt =" Screenshot 2020-08-02 1 16 52 "src =" https://user-images.githubusercontent.com/61651779/89124488-47dcc600-d512-11ea-8eb6 -6f3836eacb8e.png ">

: star: Group chat screen

  1. It is possible to chat with group members (on the right side of the screen)
  2. The group to which you belong and the group tag are listed, and it is a link to the group page (on the left side of the screen).

Screenshot 2020-08-02 14 15 28

: star: Group details screen

  1. From the left, group creator ver, group member ver, non-group member ver
  2. Group creators can disband groups, change group members, and write group tagged group comments for groups
  3. Group members can change group members, tag groups, and write group comments
  4. Users who do not belong to the group can confirm the details and send a request (commentable) if they want to belong to the group.
    Screenshot 2020-08-02 1 03 59 <img width =" 222 "alt =" Screenshot 2020-08-02 1 31 44 "src =" https://user-images.githubusercontent.com/61651779/89105876-f96eef00-d45f-11ea-9abd -3d01b2c34a4d.png "> <img width =" 222 "alt =" Screenshot 2020-08-02 1 34 12 "src =" https://user-images.githubusercontent.com/61651779/89105918-4f439700-d460- 11ea-8ac0-3d22de2ca3c8.png ">

: star: Group request, approval screen

  1. When you request to join a group, the name of the group who requested to join is displayed on the right side.
  2. If you are a group leader, when you want to join the group, the name and comment of the user who requested to join will be displayed on the left side.
  3. There is a link to accept participation and a link to refuse participation, and the group leader can select by looking at the comments etc.
    Screenshot 2020-08-02 1 18 36
    Screenshot 2020-08-02 1 18 36
    Screenshot 2020-08-02 1 18 36

: sunny: Ingenious points

: star: You can search for genres

--Because you can search for genres, you can search for the genre you want to post.
--The genres are divided into genres that start with the alphabet on the left side and Japanese on the right side, and if the keyword is Japanese when searching, it will be displayed on the right side (and vice versa).

: star: You can display and search groups on the genre posting screen.

--Since the group was originally created by associating it with the genre, only the groups within the genre can be displayed and searched.
――In addition to the group name, the tag attached to the group is also displayed, so it is possible to collect members with a tag such as "Group member recruitment"
――You can search by group rank, so if you think you are a light nerd, search for a light group, and if you think that you are a heavy nerd, you can search for a hard group. It is possible to search

: star: I try to display my favorite genre and group on My Page

--There is a button on the genre screen that you can register as a favorite, so if you press it and register it as a favorite, it will be displayed in the genre part of My Page. On the contrary, if you cancel the favorite, it will not be displayed. --As for the group, the group to which you belong is displayed.

: star: You can request to join the group you want to belong to, and the group creator can accept or reject it.

--If you are a group that you do not belong to, you can send your wishes and comments to the group leader (group creator). --Group leaders (group creators) can accept or refuse participation upon request.

: sunny: Database (ER diagram)

Untitled Diagram (1)

Recommended Posts

I tried to make an app that allows you to post and chat by genre ~ App overview ~
I tried to make an app that allows you to post and chat by genre ~ Where I had a hard time ~
I want to make an ios.android app
A story when I tried to make a video by linking Processing and Resolume
I tried to make FizzBuzz that is uselessly flexible
App development beginners tried to make an Android calculator app
We have released an app "Public Diary" that allows you to easily publish your diary.
I tried to make an application in 3 months from inexperienced
I tried to make an introduction to PHP + MySQL with Docker
I tried to make Venn diagram an easy-to-understand GIF animation
I tried to verify this and that of Spring @ Transactional
I tried to make Java Optional and guard clause coexist
I tried to make an Android application with MVC now (Java)
I tried to make it an arbitrary URL using routing nesting
[Java] I tried to make a maze by the digging method ♪
Creating an ArrayList that allows you to throw in and retrieve the coordinates of a two-dimensional plane
I tried to make an automatic backup with pleasanter + PostgreSQL + SSL + docker
I tried to make a Web API that connects to DB with Quarkus
I made a virtual currency arbitrage bot and tried to make money
How to make an app with a plugin mechanism [C # and Java]
I tried to introduce CircleCI 2.0 to Rails app
[Form object] How to make one form usable by both POST and PATCH (PUT)
I tried to make Basic authentication with Java
I tried to create a LINE clone app
I tried to link JavaFX and Spring Framework.
I tried to develop an application in 2 languages
How to make a Vagrant Plugin that you learned when you forked and published vagrant-mutagen
Do you really understand? How to check the library and license used by the app
I tried using Wercker to create and publish a Docker image that launches GlassFish 5.