EduHub é um site inovador de instituto educacional projetado para fornecer aos alunos uma experiência de inscrição perfeita em uma ampla variedade de cursos para um aprendizado aprimorado. Ele incorpora um painel de instrutor fácil de usar que permite que os instrutores criem tarefas manualmente ou com a ajuda de tecnologia de IA de ponta. Além disso, os instrutores têm a capacidade de fazer anúncios oportunos, garantindo que os alunos sejam mantidos atualizados sobre atualizações importantes.
Ao vivo: https://edu-sphere-seven.vercel.app/
O backend é construído em Node.js.
Rota | Caso de uso | Acesso |
---|---|---|
GET /api/aluno | Buscar todos os alunos | autenticação, autorizar(["admin"]) |
POST /api/aluno/inscrição | Cadastrar um novo aluno | Público |
POST /api/aluno/login | Faça login como aluno | Público |
GET /api/aluno/curso/instrutor/:id | Coloque os alunos em um curso atribuído a um instrutor | autenticação, autorizar(["instrutor", "admin"]) |
GET /api/instrutor | Buscar todos os instrutores | autenticação, autorizar(["admin"]) |
POST /api/instrutor/inscrição | Cadastre um novo instrutor | Público |
POST /api/instrutor/signin | Faça login como instrutor | Público |
GET /api/instrutor/curso | Obtenha instrutores e cursos associados | autenticação, autorizar(["admin"]) |
GET /api/instrutor/curso/disponível | Obtenha cursos não atribuídos a um instrutor | Público |
GET /api/departamento | Buscar todos os departamentos | Público |
POST /api/departamento | Crie um novo departamento | autenticação, autorizar(["admin"]) |
GET /api/departamento/cursos | Obtenha departamentos com cursos associados | Público |
GET /api/curso | Buscar todos os cursos | Público |
POST /api/curso | Crie um novo curso | autorizar(["instrutor", "admin"]) |
GET /api/curso/inscrito/:id | Obtenha cursos matriculados para um aluno específico | autenticação, autorizar(["aluno", "admin"]) |
GET /api/inscrição | Buscar todas as inscrições | autenticação, autorizar(["admin"]) |
GET /api/matrícula/aluno/curso | Obtenha todas as matrículas de alunos com curso e data de inscrição | autenticação, autorizar(["admin"]) |
POST /api/inscrição | Inscrever um aluno em um curso | autenticação, autorizar(["aluno"]) |
GET /api/atribuição | Buscar todas as tarefas | autorizar(["admin", "instrutor"]) |
POST /api/atribuição | Criar uma nova tarefa | autorizar(["instrutor"]) |
GET /api/tarefa/curso | Receba tarefas com cursos associados | autorizar(["admin"]) |
GET /api/tarefa/curso/:id | Obtenha tarefas para um curso específico | autenticação, autorizar(["aluno", "instrutor", "admin"]) |
GET /api/tarefa/aluno/:id | Receba tarefas e envios para um aluno específico | autenticação, autorizar(["aluno", "instrutor", "admin"]) |
DELETE /api/atribuição/:id | Excluir uma tarefa | autorizar(["instrutor", "admin"]) |
PATCH /api/atribuição/:id | Atualizar uma tarefa | autorizar(["instrutor", "admin"]) |
GET /api/envio | Buscar todos os envios | autenticação, autorizar(["admin"]) |
POST /api/envio | Enviar uma tarefa | autenticação, autorizar(["aluno", "instrutor"]) |
GET /api/submissão/aluno | Receba envios de alunos | Público |
GET /api/submission/course/:id | Receba inscrições para um curso específico | autenticação, autorizar(["admin", "instrutor"]) |
GET /api/anúncio/departamento/:id | Receba anúncios de um departamento específico | autenticação, autorizar(["admin", "instrutor", "aluno"]) |
GET /api/anúncio/curso/:id | Receba anúncios de um curso específico | autenticação, autorizar(["admin", "instrutor", "aluno"]) |
GET /api/anúncio | Receba todos os anúncios | autenticação, autorizar(["aluno", "instrutor", "admin"]) |
GET /api/anúncio/aluno/:id | Receba anúncios de cursos matriculados por um aluno | autenticação, autorizar(["aluno", "instrutor", "admin"]) |
GET /api/anúncio/:id | Receba um anúncio específico | autenticação, autorizar(["aluno", "instrutor", "admin"]) |
POST /api/anúncio | Postar um novo anúncio | autenticação, autorizar(["admin", "instrutor"]) |
POST /api/ai/chat | Poste uma mensagem para chatbot AI | Público |
POST /api/ai/atribuição | Obtenha informações de tarefas usando IA | autenticação, autorizar(["instrutor", "admin", "aluno"]) |
GET /api/student
: busca todos os alunos.POST /api/student/signup
: Registra um novo aluno.POST /api/student/signin
: Faça login em um aluno.GET /api/instructor
: busca todos os instrutores.POST /api/instructor/signup
: Registre um novo instrutor.POST /api/instructor/signin
: Faça login em um instrutor.GET /api/department
: busca todos os departamentos.POST /api/department
: Crie um novo departamento.GET /api/course
: busca todos os cursos.POST /api/course
: Crie um novo curso.GET /api/enrollment
: busca todas as inscrições.POST /api/enrollment
: matricula um aluno em um curso.GET /api/assignment
: busca todas as atribuições.POST /api/assignment
: Crie uma nova atribuição.GET /api/submission
: busca todos os envios.POST /api/submission
: Envie uma tarefa.GET /api/announcement
: Obtenha todos os anúncios.GET /api/announcement/:id
: Obtenha um anúncio específico.POST /api/announcement
: Poste um novo anúncio.POST /api/ai/chat
: Poste uma mensagem para o chatbot AI.POST /api/ai/assignment
: Obtenha informações de atribuição usando IA.Ao longo do desenvolvimento do EduHub, tive a oportunidade de expandir significativamente meus conhecimentos e habilidades. Aqui estão algumas das principais conclusões:
Novas pilhas de tecnologia : explorei e implementei novas pilhas de tecnologia, incluindo o uso de IA generativa, em apenas um mês. Essa experiência enriqueceu minha proficiência no manuseio de ferramentas e estruturas de ponta.
IA generativa : Em particular, mergulhei na IA generativa como parte do curso GA-201. Aprender como aproveitar a IA para diversas tarefas, como geração de tarefas e interações de chatbot, tem sido uma experiência esclarecedora.
Comunicação : O desenvolvimento do Sistema de Anúncios me ensinou a importância de uma comunicação eficaz para garantir que alunos, instrutores e administradores sejam informados prontamente sobre atualizações essenciais.
Integração de IA : A integração de recursos de IA ao projeto, como o Generative AI Chatbot e o AI Assignment Generator, abriu possibilidades interessantes para automatizar e aprimorar as interações do usuário.
Aprendizagem Contínua : Este projeto reforçou a importância da aprendizagem contínua no mundo acelerado da tecnologia. A adaptação a novas ferramentas e tecnologias é essencial para se manter competitivo e inovador.
Também gostaria de mencionar que recebi assistência valiosa de um modelo de IA durante o processo, mostrando o potencial da IA na simplificação de vários aspectos do desenvolvimento de software.
Obrigado pela oportunidade de trabalhar no EduHub e estou ansioso para aplicar essas novas habilidades em projetos e empreendimentos futuros.
Nota: Este projeto individual foi desenvolvido em apenas 8 dias.