Skip to content

DeveloperParana/confs

Repository files navigation

DevPR Confs

Projeto aberto para sites de conferências de programação.


Arquitetura

O projeto foi construído usando conceitos de diretórios agrupadores e separações de responsabilidades da base de código divididas entre bibliotecas com nomeclaturas sugestivas.

Exemplo

libs
├── auth
│   ├── data-access
│   └── data-state
├── event
│   ├── data-state
│   ├── feature-subscribe
│   └── ui-ticket
└── shared
    ├── data-access
    └── data-state

Diretórios agrupadores

  • auth - Diretório agrupador para suas respectivas bibliotecas.
  • event - Diretório agrupador para suas respectivas bibliotecas.
  • shahred - Diretório agrupador para respectivas compartilhadas.

Tipos de bibliotecas

  • data-state - Biblioteca para lidar com o estado dos dados.
  • data-access - Biblioteca para lidar com acesso aos dados.
  • feature-* - Biblioteca para componentes com funcionalidades.
  • ui-* - Biblioteca para componentes de apresentção (inpit | output).

Tecnologias

Todo desenvolvimento está até então baseado em TypeScript, nos esforçamos para manter bibliotecas de acesso e estado de dados, independentes de frameworks.

Alguns componentes de apresentação são desenvolvidos usando componentes da web na sua forma nativa, outros usamos angular.

Até o presente momento, para componentes de funcionalidades, foi adotado angular como padrão.


Repositório

Esse repositório utiliza Nx para gerenciar projetos, seus relacionamentos e execução de tarefas, tanto em desenvolvimento como pipelines de integração contínua. Em conjunto temos também bibliotecas como Jest para testes unitários, Cypress para testes de integração e ESLint para linting da base de código e checagem de relacionamentos entre os projetos devido algumas boas práticas utilizadas.

Desenvolvimento Local

git clone https://github.com/DeveloperParana/confs.git
cd confs
npm i
npm start