practicajs / practica

Node.js solution starter boilerplate that is production-ready, packed with βœ… best practices and built with simplicity in mind

Home Page:https://practica.dev/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

πŸŽ‰ Add Fastify as additional web layer

goldbergyoni opened this issue Β· comments

🎯 Goal: - Allowing the user the choice between various technologies is at the heart of Practica. Fastify is a super-popular and great framework (a candidate to serve as our recommended web layer). We should add it as an alternative web layer to express, it will be located in a sibling folder and the code generator while stitching the solution will copy OR express OR Fastify as the web layer. This is agnostic to the domain and data-access layer which will always be the same

πŸ€” Things to consider:

  • Fastify serves as our web layer, hence it's responsible for JWT validation, and other web-related tasks. With that in mind, our existing libraries might need to change to support Fastify or maybe we should add dedicated new libraries?
  • Some existing functionality is built inside Fastify and in that case we should use Fastify without abusing it. For example, Fastify has a logger built-in and a validation framework

on it

@DavidBK and @kalitas Happy that you're handling this strategic and not-so-easy workstream

I would guess that the status is @DavidBK working on the Fastify thing and @kalitas on the code generator, right?

Leme know whether you need anything from my part to push it?

@goldbergyoni yes. @DavidBK if you can create a PR from your fork to here, it would be great, then we can continue working on it and finish it together