Zestaw gemów dla początkującego

Cześć i czołem!

Szybkie pytanie, jestem na etapie nauki Railsów i zastanawiam się o jakich gemach powinienem wiedzieć i jakie gemy powinienem znać w mojej codziennej pracy / nauce z Railsami?

Możecie zaproponować taki zestaw “must have” na początek?

Nie chciałbym wyważać otwartych drzwi, dlatego jestem otwarty na wszelkie porady w tym temacie.

Póki co w swoich projektach korzystałem - świadomie dodawałem następujące gemy:
friendly_id
devise
petergate
bootstrap

Dziękuję za pomoc.

Pundit i Rspec są dość popularne.

Skoro bootstrap to od razu font-awesome-rails

Do tego zazwyczaj mam jeszcze:
simple_form
letsencrypt_plugin

Przydać może się bullet
Pomaga wyrobić sobie nawyk pilnowania problemu zapytań N+1 do DB.

Jak jesteś w początkowej fazie to nie używaj żadnych gemów. Spróbuj sam zrobić rejestrowanie użytkownika, paginację itd. Pobaw się językiem.

1 Like

Dziękuję za wskazanie kilku dodatkowych gemów.
@chione rzeczywiście, cenna uwaga, aczkolwiek od implementowania samego security jednak będę się trzymał z daleka :wink:

Gdy będziesz pisał dla klientów to jak najbardziej, natomiast póki masz komfort nauki to pisz własne security, choćby dla sprawdzenia. Rejestracja i logowanie to mus. Sprawdzaj czy jest email i hasło w bazie które pasują do siebie itd. Sama przyjemność :wink: Powodzenia!

1 Like

Tutaj masz ciekawą listę https://dev.to/rob__race/27-gems-i-use-in-almost-every-project?utm_source=rubyweekly&utm_medium=email

Zgadzam się z chione. A najlepiej rób tak , że po napisaniu funkcjonalnosci, poszukaj gemów które robią to samo i porównaj jak one zostały zaprojektowane. Nauka na własnych błędach imho jest dosyć skuteczna;]

1 Like

Z jeszcze niewymienionych:
acts_as_list
active_link_to
will_paginate
rolify

Pamiętaj też, że możesz użyć jakiegoś gemu ogólnego użytku dla Ruby, nie przeznaczonego tylko do Railsów. Ja ostatnio użyłem ‘markdown’ i ‘reverse-markdown’ do edytowania treści w moim prostym CMS-ie.

Oczywiście fajnie jest próbować robić rzeczy samemu, ale ważne jest też, żeby widzieć jak inni zrobili daną rzecz, jakie udostępnili publiczne metody i jak zalecają używać danej biblioteki. Moim zdaniem częstym błędem jest właśnie izolowanie się od bibliotek, frameworków i próby tworzenia swoich rzeczy, co prowadzi do chęci tworzenia rzeczy coraz bardziej złożonych bez żadnego doświadczenia z architekturą oprogramowania.