Por padrão sigo com a camada padronizada com a comunidade.

Exemplo das camadas de arquitetura frontend:

📂 src
┣ 📂 app
┃ ┣ 🔒 core `(Necessário por todos os projetos)`
┃ ┃ ┣ 📂 auth
┃ ┃ ┣ 📂 constants
┃ ┃ ┣ 📂 types
┃ ┃ ┣ 📂 utils
┃ ┣ 🖼️ layout
┃ ┃ ┣ 📂 breadcrumb
┃ ┃ ┣ 📂 footer
┃ ┃ ┣ 📂 inline-menu
┃ ┃ ┣ 📂 menu-sidebar
┃ ┃ ┗ 📂 topbar
┃ ┣ 📚 shared `(O que pode ser compartilhado entre os projetos)`
┃ ┃ ┣ 📂 components
┃ ┃ ┣ 📂 config
┃ ┃ ┣ 📂 constants
┃ ┃ ┣ 📂 enum
┃ ┃ ┣ 📂 interfaces
┃ ┃ ┣ 📂 models
┃ ┃ ┣ 📂 services
┃ ┃ ┣ 📂 utilities
┃ ┃ ┣ 📂 validators
┃ ┣ 💼 snp `(Específico do projeto)`
┃ ┃ ┣ 📂 models
┃ ┃ ┣ 📂 components `(Componentes burros não chamam services nem gerenciadores de estados)`
┃ ┃ ┣ 📂 containers `(Componentes espertos operam com services e gerenciadores de estados)`
┃ ┃ ┣ 📂 pages `(Apenas agregadores de componentes como se fosse a própria rota)`
┃ ┃ ┃ ┣ 📂 dashboard
┃ ┃ ┃ ┣ 📂 editais
┃ ┃ ┃ ┣ 📂 especialidades
┃ ┃ ┃ ┗ 📂 perfil
┃ ┃ ┗ 📂 services
┃ ┣ 🔄 wso2 `(API's do WSO2)`
┃ ┃ ┣ 📂 models
┃ ┃ ┃ ┣ 📂 cgo
┃ ┃ ┃ ┣ 📂 portal
┃ ┃ ┃ ┣ 📂 rhnet
┃ ┃ ┃ ┗ 📂 usuario
┃ ┃ ┗ 📂 services
┣ 📂 assets
┣ 📂 environments