Fajnie, że wystawiasz coś do CR. Ja zawsze miałem obawy przed dużą liczbą komentarzy/dyskusjami, ale prawda jest tak, że im jest ich więcej, tym więcej się nauczysz.
- Jeśli to gotowy projekt, to warto w README.md zawrzeć informację o tym jak go odpalić, oraz jakiego softu wymagasz, szczególnie że nie użyłeś vagranta/dockera.
za docs. Oczywiście to mały projekt ale warto rzucić okiem na Swaggera i OpenApi.
- no test specified

- Warto rozdzielić aplikację i jej start, łatwiej potem testować.
- Osobiście umieściłbym łączenie bazy danych w innym miejscu. Np przed wystartowaniem expressa.
- Nie bawiłbym się w takie zwracanie cytatu codziennego. Dlaczego? Założenie powinno być takie że jeśli wyłączysz i włączysz to powinna działać tak samo. U Ciebie tak nie będzie. Stąd pomysł ogarnięcia algorytmu który będzie bazował tylko na dacie oraz liczbie cytatów w bazie.
- Chyba nie ma obsługi błędów. Od siebie gorąco polecam ten artykuł. Dla async request handlerow warto użyć wrappera.
- Ogólnie czemu nie typescript?
dostaniesz typy importy i wiele innych fajnych rzeczy.
- Warto ogarnąć coś do walidacji na przyszłość, korzystałem z express validatora, chociaż widziałem różne opinie.
- Dotnev do instalacji
- Jeśli nie używasz dockera warto pomyśleć o pm2. Ale używaj dockera
- Popatrz w jaki sposób przekazywać parametry do query w tym libie. Teoretycznie walidacja jest ale nie wiem czy SQLmap by czego nie zwojował.
- Ogólnie spoko ale postgres to duża kobyła jak na 500 cytatów. Imo sqlite starczy
potem mniej walki z zestawianiem środowiska.
- Trochę kiepski Error handling przy robieniu zapytania. Imo lepiej w takim wypadku rzucać http 500.
- Nie jestem przekonany czy co query musisz robić connect. Do zweryfikowania.
- Używałbym spójnie Arrow Fn wszędzie. Oczywiście uważamy na this
Ogólnie spoko. Ogarnij Typescript bo warto. Co do bazy danych na przyszłość orm w stylu Sequelize czy Typeorm. No i generalnie framework w stylu Nest albo hapi, bo express to jak dla mnie biblioteka.
A no i testy 