Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/nirewen/uni-auto
Ferramenta de automação de processos para universidades
https://github.com/nirewen/uni-auto
active highlight-1 monorepo nestjs react
Last synced: 2 months ago
JSON representation
Ferramenta de automação de processos para universidades
- Host: GitHub
- URL: https://github.com/nirewen/uni-auto
- Owner: nirewen
- Created: 2023-08-16T01:16:09.000Z (over 1 year ago)
- Default Branch: master
- Last Pushed: 2024-11-14T19:38:47.000Z (2 months ago)
- Last Synced: 2024-11-14T20:30:12.064Z (2 months ago)
- Topics: active, highlight-1, monorepo, nestjs, react
- Language: TypeScript
- Homepage: https://uni.nirewen.dev
- Size: 1.1 MB
- Stars: 4
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# University Automation
Esse é um projeto para automatizar alguns processos para estudantes que frequentam universidades
## Universidades atuais:
### UFSM - Universidade Federal de Santa Maria
Módulos disponíveis:
| Módulo | Descrição |
|---|---|
| **Restaurante Universitário** | Automatizar o agendamento de refeições no RU da UFSM |## Contribuindo
Este projeto é feito em NodeJS + TypeScript, em um monorepo gerenciado por [Nx](https://nx.dev)
Para iniciar o desenvolvimento, use `pnpm install` - necessita `pnpm` no contexto global (`npm install -g pnpm`)
Popule os arquivos `.env.production` e `.env.development` com os valores providos em `.env.template`
### Estrutura do projeto:
```
uni-auto
├─ apps
│ ├─ api
│ ├─ cron
│ └─ web
├─ packages
│ └─ shared
````apps` contém os projetos deste monorepo
`api` e `cron` são projetos NestJS
`web` é o frontend em React`packages` contém código compartilhado entre os projetos
`shared` é um pacote para ambos projetos NestJS### Comandos para desenvolvimento
Todos esses comandos aceitam a flag `--prod` para carregar o `.env.production`
> `nx serve nome`
> Inicia o projeto `nome` localmente> `nx container nome`
> Cria um container Docker para `nome` com tag `uni-auto/nome`> `nx migration:generate api`
> Gera uma migration com as diferenças entre o banco e as entidades no projeto
> Ref: [TypeORM](https://orkhan.gitbook.io/typeorm/docs/)> `nx migration:run api`
> Executa as migrations que estão na [pasta de migrations](./packages/shared/src/migrations)> `nx migration:revert api`
> Desfaz a última migration executada no bancoMais comandos relacionados a migrations podem ser adicionados no [project.json](./apps/api/project.json) da API
> `nx build nome`
> Compila o projeto `nome` para a pasta `./dist`Algumas vezes pode ocorrer problema de cache durante o desenvolvimento.
Caso aconteça, o comando `nx reset` e a exclusão da pasta `dist` geralmente resolvem> `docker compose up -d [nomes]`
> Cria e executa os containers Docker criados com `nx container`
> Utiliza o arquivo `.env.production`