Skip to content

brunochirelli/feature-driven-app

Repository files navigation

Feature-Driven App

Repo para servir como uma PoC de como se organizar um app baseado em features através de context com o provider pattern.

Sobre o app e execução

O app foi criado com o framework Nextjs para simular as screens de um app comum já que o router é embutido.

yarn && yarn dev

Filosofia

Se baseando no princípio da feature-driven, o app foi construído de forma que pudesse representar a quebra por features de maneira isolada em suas pastas.

Desta maneira, cada pasta pode ter seu próprio owner com todas as suas necessidades e dependências para que funcione de maneira "isolada".


Execução arquitetural

Para montar o app, quebramos o function based em feature based folders onde cada uma tem suas funções como service, components e providers.


Provider

O provider cria o context e envelopa o app, expondo dentro dele um hook para manipulação dos seus atributos.


Steps

  • Cria o context
  • Cria o provider
  • Cria o hook consumindo o context
  • Envelopa o app com o novo provider.

Drawbacks do padrão

O aninhamento de providers pode gerar o chamado provider hell porém para se chegar nesse ponto destaca a necessidade de um gerenciador de estado mais robusto.

Eu não considero algo danoso pq o aninhamento fica claro, porém é algo a ser discutido.

About

Example of a feature-driven app with provider pattern

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published