Este repositório guarda o projeto final do curso Arnia, MetaVagas. MetaVagas é um sistema de vagas de emprego, onde o usuário pode se cadastrar e encontrar vagas de emprego que se encaixam no seu perfil. Para conferir clique no link a seguir: MetaVagas
Estas instruções permitirão que você obtenha uma cópia funcional do projeto em sua máquina local para fins de desenvolvimento e teste.
- Node.js - Ambiente de execução JavaScript
- Clone o repositório:
git clone https://github.com/cesarhenrq/metavagas-frontend.git
- Instale as dependências:
yarn install
ou
npm install
- Execute o aplicativo:
yarn start
ou
npm start
Para executar os testes de unidade, execute o seguinte comando:
yarn test
ou
npm test
Para executar os testes de componente, execute o seguinte comando:
yarn cy:run-ct-fast
ou
npm run cy:run-ct-fast
Para executar os testes de end-to-end, execute o seguinte comando:
yarn cy:run-e2e
ou
npm run cy:run-e2e
Para executar o linting, execute o seguinte comando:
yarn lint
ou
npm run lint
Para executar o typechecking, execute o seguinte comando:
yarn typecheck
ou
npm run typecheck
Para executar a formatação, execute o seguinte comando:
yarn format
ou
npm run format
Este projeto utiliza o GitHub Actions para CI/CD. O arquivo de configuração pode
ser encontrado em .github/workflows/main.yml
. O pipeline de CI/CD é executado
sempre que um push é feito para qualquer uma das branchs. O pipeline de CI/CD é
composto por 5 jobs:
unit
: Executa os testes de unidade.lint
: Executa o linting.typecheck
: Executa o typechecking.e2e
: Executa os testes de end-to-end.ct
: Executa os testes de componente.
Para implantar o aplicativo, execute o seguinte comando:
yarn build
ou
npm build
Este comando irá gerar uma pasta dist
contendo o código compilado.
├── src
│ ├── assets
│ │ ├── image.svg
│ │ └── icon.tsx
│ ├── components
│ │ ├── Component
│ │ │ ├── Component.tsx
│ │ │ ├── Component.test.tsx
│ │ │ ├── Component.cy.tsx
│ │ │ ├── styles.ts
│ │ │ └── index.ts
│ ├── contexts
│ │ ├── Context
│ │ │ ├── actions.ts
│ │ │ ├── context.ts
│ │ │ ├── dispatcher.ts
│ │ │ ├── provider.tsx
│ │ │ ├── index.ts
│ ├── hooks
│ │ ├── hook.ts
│ │ └── index.ts
│ ├── pages
│ │ ├── Page
│ │ │ ├── Page.tsx
│ │ │ ├── Page.test.tsx
│ │ │ ├── Page.cy.tsx
│ │ │ ├── styles.ts
│ │ │ └── index.ts
│ ├── routes
│ │ ├── router.tsx
│ ├── services
│ │ ├── Service
│ │ │ ├── service.ts
│ ├── styles
│ │ ├── global.ts
│ ├── types
│ │ ├── type.d.ts
│ ├── utils
│ │ ├── functions
│ │ │ ├── function.ts
│ │ │ └── index.ts
│ │ ├── helpers
│ │ │ ├── helper.ts
│ │ │ └── index.ts
│ │ ├── index.ts
│ ├── App.tsx
│ ├── main.tsx
│ ├── vite-env.d.ts
│ └── tsconfig.json
assets
: Pasta que contém os arquivos estáticos do projeto.components
: Pasta que contém os componentes do projeto.contexts
: Pasta que contém os contextos do projeto.hooks
: Pasta que contém os hooks do projeto.pages
: Pasta que contém as páginas do projeto.routes
: Pasta que contém as rotas do projeto.services
: Pasta que contém os serviços do projeto.styles
: Pasta que contém os estilos globais do projeto.types
: Pasta que contém os tipos do projeto.utils
: Pasta que contém as utilidades do projeto.App.tsx
: Arquivo que contém o componente raiz do projeto.main.tsx
: Arquivo que contém o ponto de entrada do projeto.vite-env.d.ts
: Arquivo que contém as variáveis de ambiente do projeto.tsconfig.json
: Arquivo que contém as configurações do typescript.
César Henrique 👨🏻💻 |
Katiene Souza 👩🏻💻 |