An open API service indexing awesome lists of open source software.

https://github.com/grupo-syntax-squad/tupan-front


https://github.com/grupo-syntax-squad/tupan-front

Last synced: 3 months ago
JSON representation

Awesome Lists containing this project

README

        

Tupã

> [!TIP]
Este repositório é dedicado ao projeto "Tupã", um sistema desenvolvido para a coleta e análise de dados meteorológicos. Ele abrange tanto a montagem quanto a configuração de uma estação meteorológica equipada com diversos sensores, além de um sistema que processa e interpreta os dados enviados pela estação. Esses dados podem ser analisados em gráficos e tabelas, com suporte para visualização em dispositivos desktop, web e mobile.
Em especial, este repositório em questão, é destinado à toda a parte Front-End da aplicação.

> [!NOTE]
> Aplicação desenvolvida pela equipe: SyntaxSquad, composta por alunos do 4º semestre, do tecnólogo em Desenvolvimento de Software Multiplataforma, na FATEC Profº Jessen Vidal - São José dos Campos, SP, 2024 :rocket:


### :hammer_and_wrench: Tecnologias

As seguintes tecnologias e ferramentas foram utilizadas no Front-End:


TypeScript
NextJS
NodeJS
TailwindCSS


### ❓ Como rodar ❓

>[!WARNING]
>É preciso ter o [Node](https://nodejs.org/en/) instalado em sua máquina!

> O projeto foi desenvolvido no Node v22.7.0, portanto recomendamos utilizar entre a versão 18 e 22, pois garantimos que haverá suporte.

É possível rodar localmente o projeto, seguindo o passo a passo abaixo,
utilize estes comandos em um terminal:

>[!NOTE]
>Este exemplo é para utilização com Npm

```bash
# Baixe ou clone este repositório
$ git clone https://github.com/Grupo-Syntax-Squad/Tupan.git

# Acesse a pasta, instale as dependências e inicie o projeto
$ cd Tupan-Front

# caso queira intalar o husky:
$ npm i

# se não quiser o husky, continue daqui:
$ cd tupan
$ npm i
$ npm run dev
```

A aplicação inciará localmente na porta 3000. Use o navegador para acessar o link [http://localhost:3000](http://localhost:3000) e executar as funcionalidades da aplicação.


### 🗃️ Estrutura de Diretórios

| Diretório | Descrição |
| ---------------------------------------- | ------------------------------------------------------------------------------------------- |
| :open_file_folder: .husky/ | Arquivos de configuração para validação das mensagens de commit elaboradas como padrão |
| :open_file_folder: tupan/ | Diretório principal do projeto, abrangendo as dependências, código fonte e arquivos de mídia|
| :open_file_folder: tupan/public/assets | Arquivos visuais (imagens, ícones, fontes...) |
| :open_file_folder: tupan/src | Código fonte do projeto. |
| :open_file_folder: tupan/src/app | Todas as páginas do projeto e comunicação com serviços externos. |
| :open_file_folder: tupan/src/app/_api | Requests de serviços (servidor-backend e API) via métodos: get, post, delete e update. |
| :open_file_folder: tupan/src/components | Componentes do projeto (botões, rodapés, formulários, barra de navegação..) |
| :open_file_folder: tupan/src/hooks | Diretório para armazenar hooks do projeto. |
| :open_file_folder: tupan/src/styles | Arquivos de estilização adicionais. |
| :open_file_folder: tupan/src/test | Arquivos de testes TDD. |
| :open_file_folder: tupan/src/types | Arquivos de interface e ou tipagem de componentes e atributos. |
| :page_facing_up: package.json | Arquivo usado para gerenciar as dependências do husky, scripts e versões. |
| :page_facing_up: tupan/jest.config.ts | Arquivo para configuração do framework de testes: jest. |
| :page_facing_up: tupan/package.json | Arquivo usado para gerenciar as dependências do projeto, scripts e versões. |
| :page_facing_up: tupan/next.config.mjs | Arquivo para configuração do framework de React: NextJS. |
| :page_facing_up: tupan/tailwind.config.ts| Arquivo para configuração do framework de CSS: tailwind. |


### 🌟 Releases

| TAG | Descrição | Sprint |
| --------- | ------------------------------------------------------------------------------------------------------------- | ------ |
| 1.0.0 | Criação das páginas e integração dos CRUD's de todos os elementos (parâmetros, usuários, estaçõoes e alertas) | 1 |