Let's briefly explain the portfolio we created.

What did you make?

App name Dig Memo

It is a memo app made with the intention of digging deep into your thoughts. We publish it at the following URL! https://www.digmemo-app.xyz/

Why did you decide to make it?

I wanted to create a service that could support my thinking.

When I was learning programming, I felt that it was easier for me to establish my knowledge by thinking and studying rather than just studying. However, I thought that if it was just a memo, it would be easy to spit out the input information as it is. Wouldn't it be nice if there was a service that could limit that and support thinking? I decided to make it!

What kind of function did you implement?

Functions list

・ Memo posting / editing / deleting function ・ Category function ・ Full-text search function ・ Favorite function ・ Pagination function ・ Email authentication function ・ Password reset function ・ Guest login function

ER diagram

Copy of Untitled Diagram (1).png

Sticking and devising points

Point 1

I set a question and answered it so that I could encourage thinking.

This app makes it difficult to make completely free notes. Since there are some parts that are difficult to explain in words, I will post a video. DigMemo-how-to.gif Like the video, this app sets a title and asks itself for that title. By doing this, you can think anti-forcedly.

Point 2

I used ajax processing for the category and question creation function.

If you say "Oh, I want to add this question" when I'm typing, if I don't take any measures, after I make the question, the characters I've typed will disappear. To prevent that, we used ajax processing to improve UX. DigMemo-how-to-ajax.gif

Point 3

I implemented a search function by joining internally using the joins method.

The search function has been implemented so that you can search not only by the title of the memo but also by the content of the memo. I wanted to retrieve records from two tables, the title column of the articles table and the body column of the article_items table, so I internally joined those tables.

DigMemo-how-to-search.gif

Technology used, etc.

--Language: Ruby 2.7.1 --Framework: Ruby on Rails 6.0.3.2 --Test: RSpec --Front end: HTML, SCSS, bootstrap4, javascript (jQuery) --Infrastructure: AWS (VPC / EC2 / Route53 / SES / ELB (ALB) / ACM) --Code management: GitHub

Additional implementation planned

--Introduce ELB to make it redundant (finished) --Convert to https with ACM (finished)

Finally

Thank you for visiting us so far!

Recommended Posts

Let's briefly explain the portfolio we created.
Let's understand the function!