Api de um sitema de turmas
Um sistema desenvolvido para fins de estudos no backend e TypeSript
🧩 Introdução | 🚀 Resultados | 🧪 Dependências | 💡 Possíveis Melhorias | 🏆 Créditos
🚧 Essa api não esta mais funcionando no heroko. Quando o projeto foi feito o heroko ainda era gratuito. Como o projeto é muito simples, basico e na epoca foi para fins de estudos optei por não hospedar em outra plataforma gratuita, mas caso queira testar e usar é só seguir os passos te instalação.
⠀⠀⠀⠀A api tem como finalidade gerenciar produtos em um banco de dados, tem 4 rotas principais, GET, POST, PUT, DELETE ou seja um crud. De modo geral o projeto é bem simples, no GET é possível ver todos os produtos cadastrados, no POST tem como finalidade o cadastro de produto, além disso, pode-se mudar alguns dados através do PUT, como nome do produto, preço entre outros. Já o DELETE como o próprio nome diz ele deleta os dados de todo o produto através do seu id.
Todos os resultados foram alcançados com sucesso. De modo geral são esses os resultados de cada requisição.
https://labenu-system-9.herokuapp.com/turmas
{
{
"nome":"Aluno",
"email":"Aluno@gmail.com",
"data_nasc":"02/02/2022",
"turma_id":"1662651616681"
},...
}
https://labenu-system-9.herokuapp.com/docentes
{
{
"nome":"Bruno",
"email":"Bruno@gmail.com",
"data_nasc":"01/01/2000",
"turma_id":"1662651616681"
},...
}
https://labenu-system-9.herokuapp.com/turmas
{
"nome":"Freire"
}
https://labenu-system-9.herokuapp.com/docentes
{
"nome":"Bruno",
"email":"Bruno@gmail.com",
"data_nasc":"01/01/2000",
"turma_id":"1662651616681"
}
https://labenu-system-9.herokuapp.com/turmas/turma
{
"id":"1662651616681",
"modulo":"6"
}
https://labenu-system-9.herokuapp.com/docente
{
"id_turma":"1662666336896",
"id": "1662741262439"
}
Requisitos para rotar o codigo...
Caso tenha Git basta da git clone, caso não tenha basta clicar em code e depois dowloand zip e seguir os proximos passos
git clone https://github.com/MayconCoutinho/Sistema-de-Turma
Caso já tenha o Node em sua maquina basta instalar o projeto com npm i
npm i
OBS - Muito importante, caso não tenha um banco de dados MySQL disponivel, não vai da para rodar o projeto, pois o projeto conecta diretamente com o banco de dados sendo assim crie um arquivo ".env" para por os dados do MySQL.
DB_HOST = Dados MySQL
DB_USER = Dados MySQL
DB_PASSWORD = Dados MySQL
DB_SCHEMA = Dados MySQL
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"start": "tsc && node ./build/index.js",
"dev": "ts-node-dev ./src/index.ts",
"migrations": "tsnd ./src/data/migration.ts"
}
"dependencies": {
"@types/knex": "^0.16.1",
"cors": "^2.8.5",
"dotenv": "^16.0.2",
"express": "^4.18.1",
"knex": "^2.3.0",
"mysql": "^2.18.1"
}
"devDependencies": {
"@types/cors": "^2.8.12",
"@types/express": "^4.17.13",
"ts-node-dev": "^2.0.0",
"typescript": "^4.8.2"
}
Possíveis melhorias no código e no projeto, caso queira voltar e melhorá lo.
- ***- ***