Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
40 commits
Select commit Hold shift + click to select a range
d266164
first commit
ViniciusMAlmeida Jul 20, 2022
daaa3f6
instaling dev and prod dependencies
ViniciusMAlmeida Jul 20, 2022
6aaa747
gitignore file
ViniciusMAlmeida Jul 20, 2022
5f69dc9
server configuration, error handler, and .env file
ViniciusMAlmeida Jul 20, 2022
8b6ca4d
orm configuration
ViniciusMAlmeida Jul 20, 2022
cb6b39d
fix .env-example
ViniciusMAlmeida Jul 21, 2022
b68106e
changing from ES modules to common js
ViniciusMAlmeida Jul 21, 2022
3e32ff1
Student model and migration, env verification
ViniciusMAlmeida Jul 21, 2022
1c29419
model and migrations ajustments: required fields
ViniciusMAlmeida Jul 21, 2022
583613c
Student Controller, store method, '/student' route
ViniciusMAlmeida Jul 21, 2022
e962f98
add StudentService and input validation
ViniciusMAlmeida Jul 21, 2022
bf75f8d
removing unnecessary next function,
ViniciusMAlmeida Jul 21, 2022
9b03e58
refactoring controller and service responsibility
ViniciusMAlmeida Jul 21, 2022
2e83dee
listStudents method
ViniciusMAlmeida Jul 21, 2022
2fd0beb
find student by id method
ViniciusMAlmeida Jul 21, 2022
44d377e
error handling on listStudents method
ViniciusMAlmeida Jul 21, 2022
9624648
update student method
ViniciusMAlmeida Jul 21, 2022
d82f91a
refactoring input validator function
ViniciusMAlmeida Jul 21, 2022
8df7f43
remove student method
ViniciusMAlmeida Jul 21, 2022
19c72ad
enable cors
ViniciusMAlmeida Jul 21, 2022
0b49c24
create vue app, add vuetify
ViniciusMAlmeida Jul 21, 2022
f33cdc4
list students page
ViniciusMAlmeida Jul 22, 2022
1b0e2af
portuguese texts customization
ViniciusMAlmeida Jul 22, 2022
84e99ca
install vue-router, add ListStudent component
ViniciusMAlmeida Jul 22, 2022
dd691e5
add RegisterStudent page
ViniciusMAlmeida Jul 22, 2022
04965db
dynamic page title
ViniciusMAlmeida Jul 22, 2022
4db7854
router improviments
ViniciusMAlmeida Jul 22, 2022
46eeb42
install axios, add base api
ViniciusMAlmeida Jul 22, 2022
5c5019a
load students from api
ViniciusMAlmeida Jul 22, 2022
f04c5c9
register students using API
ViniciusMAlmeida Jul 22, 2022
dad036c
edit student page
ViniciusMAlmeida Jul 22, 2022
f162a40
delete student feature
ViniciusMAlmeida Jul 22, 2022
9b00e3b
add HomePage
ViniciusMAlmeida Jul 23, 2022
28eb973
add docker-compose, postgres container, DB GUI
ViniciusMAlmeida Jul 23, 2022
bccd277
add COMMENTS.md
ViniciusMAlmeida Jul 23, 2022
2bdc68d
update COMMENTS.md
ViniciusMAlmeida Jul 23, 2022
5857a28
fix dialog focusin loop
ViniciusMAlmeida Jul 23, 2022
10d72a1
fix delete student feature
ViniciusMAlmeida Jul 23, 2022
7e61ae5
fix confirm button text
ViniciusMAlmeida Jul 23, 2022
8a7468b
improving CPF and RA validations
ViniciusMAlmeida Jul 23, 2022
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
32 changes: 32 additions & 0 deletions COMMENTS.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
### Decisão da arquitetura utilizada

Uma arquitetura simples para resolver um problema simples

### Lista de bibliotecas de terceiros utilizadas

API

- express
- pg
- sequelize
- dotenv
- cors
- nodemon
- sequelize-cli

Frontend

- vue
- vuetify
- vue-router
- axios

### O que você melhoraria se tivesse mais tempo

API - Uma arquitetura mais robusta, visto que essa feature deve fazer parte de um sistema bem maior

Frontend - Criaria mais componentes, deixando o codigo mais organizado. Também faria pesquisa, ordenação e paginação em server-side.

### Quais requisitos obrigatórios que não foram entregues

Todos os requisitos obrigatórios foram entregues
9 changes: 9 additions & 0 deletions api/.env-example
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
#API
PORT=3000

#DB
DB_USER=user
DB_PASSWORD=password
DB_DATABASE=database
DB_HOST=host
DB_DIALECT=dialect
104 changes: 104 additions & 0 deletions api/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,104 @@
# Logs
logs
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
lerna-debug.log*

# Diagnostic reports (https://nodejs.org/api/report.html)
report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json

# Runtime data
pids
*.pid
*.seed
*.pid.lock

# Directory for instrumented libs generated by jscoverage/JSCover
lib-cov

# Coverage directory used by tools like istanbul
coverage
*.lcov

# nyc test coverage
.nyc_output

# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
.grunt

# Bower dependency directory (https://bower.io/)
bower_components

# node-waf configuration
.lock-wscript

# Compiled binary addons (https://nodejs.org/api/addons.html)
build/Release

# Dependency directories
node_modules/
jspm_packages/

# TypeScript v1 declaration files
typings/

# TypeScript cache
*.tsbuildinfo

# Optional npm cache directory
.npm

# Optional eslint cache
.eslintcache

# Microbundle cache
.rpt2_cache/
.rts2_cache_cjs/
.rts2_cache_es/
.rts2_cache_umd/

# Optional REPL history
.node_repl_history

# Output of 'npm pack'
*.tgz

# Yarn Integrity file
.yarn-integrity

# dotenv environment variables file
.env
.env.test

# parcel-bundler cache (https://parceljs.org/)
.cache

# Next.js build output
.next

# Nuxt.js build / generate output
.nuxt
dist

# Gatsby files
.cache/
# Comment in the public line in if your project uses Gatsby and *not* Next.js
# https://nextjs.org/blog/next-9-1#public-directory-support
# public

# vuepress build output
.vuepress/dist

# Serverless directories
.serverless/

# FuseBox cache
.fusebox/

# DynamoDB Local files
.dynamodb/

# TernJS port file
.tern-port
8 changes: 8 additions & 0 deletions api/.sequelizerc
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
const path = require('path');

module.exports = {
config: path.resolve('src', 'db', 'config', 'config.js'),
'models-path': path.resolve('src', 'db', 'models'),
'seeders-path': path.resolve('src', 'db', 'seeders'),
'migrations-path': path.resolve('src', 'db', 'migrations'),
};
19 changes: 19 additions & 0 deletions api/docker-compose.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
version: '3.1'

services:

db:
image: postgres
restart: always
environment:
POSTGRES_USER: userApi
POSTGRES_PASSWORD: passwordApi
POSTGRES_DB: studentRegistration
ports:
- 5432:5432

adminer:
image: adminer
restart: always
ports:
- 8080:8080
Loading