@brassbrasil/core

Core Library containing Interceptors, Layouts, Models, Services, and Utils

Usage no npm install needed!

<script type="module">
  import brassbrasilCore from 'https://cdn.skypack.dev/@brassbrasil/core';
</script>

README

Brass Digital Platform (frontend) - Core

Arquitetura

A ideia dessa arquitetura é separar a aplicação por camadas de responsabilidade e abstrair a maneira que ocorre o fluxo de dados.

|-- src
    |-- app
        |-- core
        |-- modules
        |-- shared
    |-- assets
    |-- environments

A intenção é implementar uma arquitetura como a da imagem a seguir: alt text

Core Module

Esse é o módulo que contém lógicas e layouts que fazem parte do núcleo da aplicação e são necessários por outros módulos.

|-- core
    |-- guards (Todas as guards da aplicação devem estar aqui)
    |-- interceptors (Todos os interceptors da aplicação devem estar aqui)
    |-- layouts
        |-- main (Layout principal da aplicação)
        |-- pages (Páginas diversas da aplicação)
        |-- ... (Outros layouts)
    |-- models (Apenas models que fazem parte do núcleo da aplicação deve estar aqui)
        |-- feature-a (Os models devem ser separados por área para facilitar sua localização)
        |-- feature-b
        |-- ...
    |-- services (Apenas services que fazem parte do núcleo da aplicação deve estar aqui)
        |-- feature-a (Os services devem ser separados por área para facilitar sua localização)
        |-- feature-b
        |-- ...
    |-- store (State management da aplicação)
        index.ts
        selectors.ts
        state.ts
        app-store.module.ts
    |-- utils (Lógicas utilitárias devem ser colocadas aqui)
        |-- classes
        |-- constants
        |-- functions
        |-- ...
    core.module.ts

Boas práticas

Para boas práticas sobre desenvolvimento de aplicações em Angular, consulte https://angular.io/guide/styleguide.

Scripts

Para publicar:

  • npm run build && npm run publish