https://github.com/carla-coder/escola_prisma_pug
Tarefa Backend
https://github.com/carla-coder/escola_prisma_pug
css mysql nodejs phpadmin prisma pug xampp
Last synced: 4 months ago
JSON representation
Tarefa Backend
- Host: GitHub
- URL: https://github.com/carla-coder/escola_prisma_pug
- Owner: Carla-coder
- Created: 2024-05-23T11:08:15.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2024-06-07T00:16:46.000Z (about 1 year ago)
- Last Synced: 2024-10-10T23:01:16.032Z (8 months ago)
- Topics: css, mysql, nodejs, phpadmin, prisma, pug, xampp
- Language: Pug
- Homepage:
- Size: 696 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Projeto Escola ACME
Este é um projeto desenvolvido para gerenciar informações de uma escola fictícia chamada Escola ACME. O objetivo principal é fornecer uma plataforma onde é possível gerenciar turmas,
professores e alunos de forma fácil e organizada. As tecnologias utilizadas incluem Pug, Node.js e Prisma.## Funcionalidades Principais
- **CRUD**: O projeto inclui operações CRUD (Create, Read, Update, Delete) distribuídas entre as entidades Turmas, Professores e Alunos.
- **Renderização de Dados com Pug**: Utiliza-se o motor de template Pug para renderizar os dados dinâmicos nas páginas HTML.
- **Modal para Cadastro de Turmas**: Implementa um modal que permite cadastrar uma nova turma.
- **Turmas**: No modal de detalhes da Turma, assim que um professor e um aluno são cadastrados em determinado curso, é exibido o RA e o nome do Aluno e Nome e Especialidade do Professor da Turma cadastrada.
- **Botão Novo Professor**: Simplifica o processo de adição de novos membros ao corpo docente da escola.
- **Cadastro de Professores**: Ainda dentro da tabela Professores em 'Acões', ao clicar em (' * '), abre-se um modal para alterar Professores. Nele é possível alterar o Nome, a Especialidade e a Turma que fica localizada em um seletor.
- **Botão para Excluir Professores**: Foi acrescentado um botão para 'excluir professores' individualmente. Isso facilita a remoção de professores que não são mais necessários em determinada função.
- **Botão para Alterar dados do Aluno**: Na tabela de alunos, abre-se um modal onde são editados os dados de cada aluno e outro botão para excluir aluno com uma mensagem de alerta sobre a exclusão. Isso permite a atualização de informações pessoais conforme necessário.
## Tecnologias utilizadas
- **Pug**: Motor de template que simplifica a criação de interfaces HTML dinâmicas.
- **Node.js**: Ambiente de execução JavaScript que permite a construção de aplicativos de servidor escaláveis e eficientes.
- **Prisma**: ORM (Object-Relational Mapping) para banco de dados SQL, simplificando as operações de banco de dados e fornecendo uma interface fácil de usar para interagir com o banco de dados.
- **XAMPP MySQL**: Conjunto de software gratuito e de código aberto que inclui Apache, MySQL, PHP e Perl. É usado para criar um ambiente de desenvolvimento local para sites dinâmicos.
## Como rodar o projeto
- Clone este repositório em sua máquina local.
- Abra com o VsCode.
- No terminal em cmd ou bash, instale as dependências:```cmd
npm i
```
- Configure o arquivo .env com a string a seguir:```cmd
DATABASE_URL="mysql://root@localhost:3306/escola?schema=public&timezone=UTC"
```- Configure a conexão com o banco de dados no arquivo prisma/schema.prisma. Criar a migração, abrir o XAMPP, clicar em start no MySQL e Apache. No teminal do VsCode executar o comando:
```cmd
npx prisma migrate dev --name init
```- Executar o Servidor para iniciar o servidor Node.js.
```cmd
nodemon
```- Acesse a aplicação no navegador usando o endereço http://localhost:3000.
## Print das Telas
- Tela Turmas

- Modal Cadastro de Turmas
- Modal Detalhes da Turma
- Modal Cadastro de Alunos

- Modal Editar Aluno

- Modal Excluír Aluno

- Tela Professores

- Modal Cadastrar Professores

- Modal Alterar Professor

## Autores
- [@octokatherine](https://www.github.com/Carla-coder)
## Instituição de Ensino
- Escola Senai unidade Jaguariúna - Curso Técnico em Desenvolvimento de Sistemas FullStack Segundo Semestre (2024)
- Professor responsável pelo Projeto: Wellington Fabio https://github.com/wellifabio