Skip to content

Projeto referente ao Frontend do projeto Inspeção de Cabo de Aço

Notifications You must be signed in to change notification settings

pi2-fga/201901-InspecaoCaboDeAco-Frontend

 
 

Repository files navigation

Este projeto é referente ao Frontend do projeto Inspeção de Cabo de Aço da disciplina de PI2, desenvolvido em:
Vue/Quasar, Apollo e Pug.

Versão do Quasar Versão do Vue Apollo Versão do Pug

📋 Requisitos

Para rodar o projeto, basta ter o Git, Docker e o Docker Compose instalados. Para rodar local, deve-se ter o Node e o Quasar CLI instalados.

💻 Rodando a aplicação

O primeiro passo é clonar o projeto e em seguida entrar em sua raiz:

git clone git@github.com:pi2-inspecao-cabo-de-aco/frontend.git && cd frontend

Para baixar as imagens e subir os containers, rode o comando:

docker-compose up --build

Após isso, o frontend estará disponível para uso, na url localhost:8080.

A outra maneira possível é rodar o frontend sem o Docker. Para isto, basta instalar as dependências da aplicação presentes no package.json utilizando o comando yarn ou npm install.

E em seguida a aplicação estará disponível na mesma url localhost:8080 após executar o comando abaixo.

quasar dev

📂 Estrutura

A hierarquia de pastas do projeto é a seguinte:

frontend/
└── src/
    ├── /
    ├── assets/
    ├── boot/
    ├── components/
    │   ├── cables-page/
    │   │   ├── CablesList.vue
    │   │   └── CreateCable.vue
    |   └── ...
    ├── css/
    ├── graphql/
    │   ├── fragments/
    │   ├── mutations/
    │   │   ├── create-cable.gql
    │   │   └── ...
    │   ├── queries/
    │   │   ├── cables.gql
    │   │   └── ...
    │   ├── subscriptions/
    |   └── ...
    ├── helpers/
    ├── i18n/
    ├── layouts/
    ├── mixins/
    ├── pages/
    │   ├── CablesPage.vue
    │   ├── Index.vue
    │   └── ...
    ├── router/
    ├── statics/
    ├── store/
    ├── App.vue
    └── ...

assets: Contém arquivos extras à aplicação, como imagens, fontes, etc.

boot: Contém arquivos de configuração de plugins utilizados na aplicação.

components: Contém todos os componentes da aplicação, estruturados em pastas referentes à um componente page ou à uma feature específica. A nomenclatura das pastas utiliza o padrão kebab-case e os componentes utilizam o padrão PascalCase.

grahql: Contém todos os arquivos referentes aos resolvers do graphql, como fragments, queries, mutations e subscriptions. A extensão dos arquivos presentes são .gql e podem ser importados em qualquer componente, para ser utilizado no Apollo.

helpers: Contém métodos com lógicas que podem ser utilizadas em vários componentes.

layouts: Contém componentes reutilizáveis que são a estrutura de uma janela. É comum seus componentes terem uma barra de navegação, um drawer ou até um footer. Geralmente são utilizados como componentes pai de várias rotas.

pages: Contém componentes que guardam toda a lógica de uma página. Estão em um nível de abstração abaixo de um layout e acima dos componentes comuns.

router: Contém todas as rotas da aplicação.

store: Contém todos os arquivos referentes ao Vuex, que é a biblioteca de gerenciamento de estados do Vue. Suas pastas utilizam o padrão de nomenclatura kebab-case, onde cada uma contém os getter, actions, mutations e o state de cada módulo da Store.

About

Projeto referente ao Frontend do projeto Inspeção de Cabo de Aço

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Vue 70.2%
  • JavaScript 27.4%
  • CSS 1.3%
  • HTML 1.1%