Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
83 commits
Select commit Hold shift + click to select a range
468a7c5
Resultado da primeira reuinão de sprint.
vmg192 Nov 15, 2025
1a70eab
Merge pull request #1 from vmg192/features-vitor
vmg192 Nov 15, 2025
b2bcf0f
chore: initial-setup
mrcs-abr Nov 16, 2025
b48a873
test: add user login bdd scenarios
mrcs-abr Nov 17, 2025
4ee490b
Criação dos bdds para as issues #103 e #111
vmg192 Nov 17, 2025
3f9997c
Merge pull request #2 from vmg192:issue_vitor2
vmg192 Nov 17, 2025
63a1654
test: change redefinir_senha BDD to definir_senha
mrcs-abr Nov 17, 2025
509f4f3
chore: add require:false to gemfile
mrcs-abr Nov 17, 2025
cd39577
Merge pull request #3 from vmg192/test/bdd-sistema-login
vmg192 Nov 18, 2025
cec5ea8
Mudanças pequenas nos cenários da issue #111
vmg192 Nov 18, 2025
e0af3ee
Update atualizar_base_de_dados.feature
PPeregrino Nov 18, 2025
a9b0107
Update cria_template_formulario.feature
PPeregrino Nov 18, 2025
e6c4685
Update gera_relatorio_adm.feature
PPeregrino Nov 18, 2025
3e22e2e
Update visualização_formulário.feature
PPeregrino Nov 18, 2025
0855189
Merge manual da branch feature-william
vmg192 Nov 19, 2025
ddd4e71
Merge manual pt2
vmg192 Nov 19, 2025
a9d970b
Update cadastra_usuários.feature
brunotarquinio Nov 19, 2025
34075b3
Update responder_formulario.feature
brunotarquinio Nov 19, 2025
461bb1b
Merge pull request #4 from vmg192/features-bruno
vmg192 Nov 19, 2025
8e8ee11
Merge pull request #5 from vmg192/sprint1-1
vmg192 Nov 29, 2025
6f21b2a
Configuração básica do Tailwind e adição do controller home para veri…
vmg192 Dec 3, 2025
e61491e
Merge pull request #19 from vmg192/issue_13
vmg192 Dec 4, 2025
2e459b3
infra: adiciona configuracao de tema do tailwind
mrcs-abr Dec 5, 2025
a208df9
infra: modifica link da font-roboto
mrcs-abr Dec 5, 2025
29160d5
fix: corrige problemas com linter
mrcs-abr Dec 5, 2025
19e7715
[infra]corrige typo na definicao de cor
mrcs-abr Dec 5, 2025
ea35b12
backend: adiciona sistema de autenticacao primario
mrcs-abr Dec 6, 2025
cba9585
fullstack: finaliza logout e adiciona layout principal(issues:#42,#22…
mrcs-abr Dec 6, 2025
28d41c3
Merge pull request #68 from vmg192/infra/CriarArquivodeCoresTheme-MVP_21
vmg192 Dec 7, 2025
3d0c662
cria a model de usuario com autenticacao e validacoes para login emai…
brunotarquinio Dec 7, 2025
8ab38fb
atualiza tabela usuarios com nome, formacao e boolean de verificar admin
brunotarquinio Dec 7, 2025
a87402d
update rb file
brunotarquinio Dec 7, 2025
715279f
Create migrate
PPeregrino Dec 7, 2025
c0ee76b
Delete db/migrate
PPeregrino Dec 7, 2025
dcd4d0c
Create 20231026000001_create_turmas.rb
PPeregrino Dec 7, 2025
3146624
Create migration for turmas
PPeregrino Dec 7, 2025
0a2b323
issues MVP #30 e #31
brunotarquinio Dec 7, 2025
83fd122
Create Turma model
PPeregrino Dec 7, 2025
94662fb
Create migration for matricula_turmas
PPeregrino Dec 7, 2025
9a3324d
Create Usuario model
PPeregrino Dec 7, 2025
913d053
Fix missing newline at end of MatriculaTurma.rb
PPeregrino Dec 7, 2025
9f580f5
issues MVP #32 e #33
brunotarquinio Dec 7, 2025
e529188
issues MVP #26, #27, #28 e #29
PPeregrino Dec 7, 2025
feedb39
issues MVP #26, #27, #28 e #29
PPeregrino Dec 7, 2025
8e9762e
issues MVP #26, #27, #28 e #29
PPeregrino Dec 7, 2025
61a6025
issues MVP #26, #27, #28 e #29
PPeregrino Dec 7, 2025
e1796a9
issues MVP #26, #27, #28 e #29
PPeregrino Dec 7, 2025
adb3fd7
issues MVP #35
PPeregrino Dec 7, 2025
ae52ee3
issues MVP #35
PPeregrino Dec 7, 2025
07bb55a
issues MVP #35
PPeregrino Dec 7, 2025
820ec78
issues MVP #35
PPeregrino Dec 7, 2025
bd5728a
linter e testes unitarios
brunotarquinio Dec 7, 2025
224c0bd
corrige formatacao final do linter
brunotarquinio Dec 7, 2025
1b3f388
feat: implement respostas controller and views for form responses
vmg192 Dec 7, 2025
70bcdd3
Teste
vmg192 Dec 7, 2025
76c7ce2
Merge pull request #69 from vmg192/branch_bruno_1
vmg192 Dec 7, 2025
b6ed00c
Merge branch 'sprint2' into branch_pedro_1
vmg192 Dec 7, 2025
0caa67f
Merge pull request #70 from vmg192/branch_pedro_1
vmg192 Dec 7, 2025
8184db2
Merge pull request #72 from vmg192/branch_william_2
vmg192 Dec 7, 2025
e1d41c3
Implementação das Issues #44, #45 e #46.
vmg192 Dec 8, 2025
f949dd8
Ajusta tabela <Usuarios> para <Users>
mrcs-abr Dec 8, 2025
58f0cae
Merge pull request #73 from vmg192/fullstack/implementar-autenticacao…
vmg192 Dec 8, 2025
814baef
Merge remote-tracking branch 'origin/sprint2' into branch_vitor_1
vmg192 Dec 8, 2025
b9a05da
Merge pull request #74 from vmg192/branch_vitor_1
vmg192 Dec 8, 2025
df243a3
Implementação Issues #51, #56 e #57
vmg192 Dec 8, 2025
dd08e99
deletando arquivo duplicado de user
PPeregrino Dec 8, 2025
2e5bc8e
atualizando arquivo user
PPeregrino Dec 8, 2025
3591ba3
Adiciona cards, usuario logado na navbar, sidebar ainda estatica, cor…
mrcs-abr Dec 8, 2025
151dd2f
Implementação Issue #36
PPeregrino Dec 8, 2025
d524a52
Implementação Issue #36
PPeregrino Dec 8, 2025
90a74de
Implementação Issues #36 e #37
PPeregrino Dec 8, 2025
c42ae34
Implementação Issues #36 e #37
PPeregrino Dec 8, 2025
e50ea0d
Adiciona componente visual do dashboard admin, precisa integrar com b…
mrcs-abr Dec 8, 2025
9383faf
Implementação Issues #34, #51, #56 e #57
vmg192 Dec 8, 2025
dc053a2
Merge pull request #75 from vmg192/branch_vitor_2
vmg192 Dec 8, 2025
349ee64
Merge pull request #77 from vmg192/frontend/adiciona-dashboard-admin
vmg192 Dec 8, 2025
9a3a2a0
Merge pull request #80 from vmg192/branch_pedro_1
vmg192 Dec 8, 2025
a402c93
Merge pull request #81 from vmg192/fullstack/impletar-card-navbar-sid…
vmg192 Dec 8, 2025
e162a76
tabelas de submissao, templates dos formularios #47
william-virissimo Dec 9, 2025
190daab
Revert "tabelas de submissao, templates dos formularios #47"
william-virissimo Dec 9, 2025
604a755
Reapply "tabelas de submissao, templates dos formularios #47"
william-virissimo Dec 9, 2025
903eb18
Implementações:
vmg192 Dec 9, 2025
6069013
Merge pull request #82 from vmg192/branch_vitor_testes
vmg192 Dec 9, 2025
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
51 changes: 51 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
# See https://docs.docker.com/engine/reference/builder/#dockerignore-file for more about ignoring files.

# Ignore git directory.
/.git/
/.gitignore

# Ignore bundler config.
/.bundle

# Ignore all environment files.
/.env*

# Ignore all default key files.
/config/master.key
/config/credentials/*.key

# Ignore all logfiles and tempfiles.
/log/*
/tmp/*
!/log/.keep
!/tmp/.keep

# Ignore pidfiles, but keep the directory.
/tmp/pids/*
!/tmp/pids/.keep

# Ignore storage (uploaded files in development and any SQLite databases).
/storage/*
!/storage/.keep
/tmp/storage/*
!/tmp/storage/.keep

# Ignore assets.
/node_modules/
/app/assets/builds/*
!/app/assets/builds/.keep
/public/assets

# Ignore CI service files.
/.github

# Ignore Kamal files.
/config/deploy*.yml
/.kamal

# Ignore development files
/.devcontainer

# Ignore Docker-related files
/.dockerignore
/Dockerfile*
9 changes: 9 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# See https://git-scm.com/docs/gitattributes for more about git attribute files.

# Mark the database schema as having been generated.
db/schema.rb linguist-generated

# Mark any vendored files as having been vendored.
vendor/* linguist-vendored
config/credentials/*.yml.enc diff=rails_credentials
config/credentials.yml.enc diff=rails_credentials
12 changes: 12 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
version: 2
updates:
- package-ecosystem: bundler
directory: "/"
schedule:
interval: daily
open-pull-requests-limit: 10
- package-ecosystem: github-actions
directory: "/"
schedule:
interval: daily
open-pull-requests-limit: 10
90 changes: 90 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,90 @@
name: CI

on:
pull_request:
push:
branches: [ main ]

jobs:
scan_ruby:
runs-on: ubuntu-latest

steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: .ruby-version
bundler-cache: true

- name: Scan for common Rails security vulnerabilities using static analysis
run: bin/brakeman --no-pager

scan_js:
runs-on: ubuntu-latest

steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: .ruby-version
bundler-cache: true

- name: Scan for security vulnerabilities in JavaScript dependencies
run: bin/importmap audit

lint:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: .ruby-version
bundler-cache: true

- name: Lint code for consistent style
run: bin/rubocop -f github

test:
runs-on: ubuntu-latest

# services:
# redis:
# image: redis
# ports:
# - 6379:6379
# options: --health-cmd "redis-cli ping" --health-interval 10s --health-timeout 5s --health-retries 5
steps:
- name: Install packages
run: sudo apt-get update && sudo apt-get install --no-install-recommends -y build-essential git libyaml-dev pkg-config google-chrome-stable

- name: Checkout code
uses: actions/checkout@v4

- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: .ruby-version
bundler-cache: true

- name: Run tests
env:
RAILS_ENV: test
# REDIS_URL: redis://localhost:6379/0
run: bin/rails db:test:prepare test test:system

- name: Keep screenshots from failed system tests
uses: actions/upload-artifact@v4
if: failure()
with:
name: screenshots
path: ${{ github.workspace }}/tmp/screenshots
if-no-files-found: ignore
39 changes: 39 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
# See https://help.github.com/articles/ignoring-files for more about ignoring files.
#
# Temporary files generated by your text editor or operating system
# belong in git's global ignore instead:
# `$XDG_CONFIG_HOME/git/ignore` or `~/.config/git/ignore`

# Ignore bundler config.
/.bundle

# Ignore all environment files.
/.env*

# Ignore all logfiles and tempfiles.
/log/*
/tmp/*
!/log/.keep
!/tmp/.keep

# Ignore pidfiles, but keep the directory.
/tmp/pids/*
!/tmp/pids/
!/tmp/pids/.keep

# Ignore storage (uploaded files in development and any SQLite databases).
/storage/*
!/storage/.keep
/tmp/storage/*
!/tmp/storage/
!/tmp/storage/.keep

/public/assets

# Ignore master key for decrypting credentials and more.
/config/master.key

/app/assets/builds/*
!/app/assets/builds/.keep

.idea/
3 changes: 3 additions & 0 deletions .kamal/hooks/docker-setup.sample
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
#!/bin/sh

echo "Docker set up on $KAMAL_HOSTS..."
3 changes: 3 additions & 0 deletions .kamal/hooks/post-app-boot.sample
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
#!/bin/sh

echo "Booted app version $KAMAL_VERSION on $KAMAL_HOSTS..."
14 changes: 14 additions & 0 deletions .kamal/hooks/post-deploy.sample
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
#!/bin/sh

# A sample post-deploy hook
#
# These environment variables are available:
# KAMAL_RECORDED_AT
# KAMAL_PERFORMER
# KAMAL_VERSION
# KAMAL_HOSTS
# KAMAL_ROLES (if set)
# KAMAL_DESTINATION (if set)
# KAMAL_RUNTIME

echo "$KAMAL_PERFORMER deployed $KAMAL_VERSION to $KAMAL_DESTINATION in $KAMAL_RUNTIME seconds"
3 changes: 3 additions & 0 deletions .kamal/hooks/post-proxy-reboot.sample
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
#!/bin/sh

echo "Rebooted kamal-proxy on $KAMAL_HOSTS"
3 changes: 3 additions & 0 deletions .kamal/hooks/pre-app-boot.sample
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
#!/bin/sh

echo "Booting app version $KAMAL_VERSION on $KAMAL_HOSTS..."
51 changes: 51 additions & 0 deletions .kamal/hooks/pre-build.sample
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
#!/bin/sh

# A sample pre-build hook
#
# Checks:
# 1. We have a clean checkout
# 2. A remote is configured
# 3. The branch has been pushed to the remote
# 4. The version we are deploying matches the remote
#
# These environment variables are available:
# KAMAL_RECORDED_AT
# KAMAL_PERFORMER
# KAMAL_VERSION
# KAMAL_HOSTS
# KAMAL_ROLES (if set)
# KAMAL_DESTINATION (if set)

if [ -n "$(git status --porcelain)" ]; then
echo "Git checkout is not clean, aborting..." >&2
git status --porcelain >&2
exit 1
fi

first_remote=$(git remote)

if [ -z "$first_remote" ]; then
echo "No git remote set, aborting..." >&2
exit 1
fi

current_branch=$(git branch --show-current)

if [ -z "$current_branch" ]; then
echo "Not on a git branch, aborting..." >&2
exit 1
fi

remote_head=$(git ls-remote $first_remote --tags $current_branch | cut -f1)

if [ -z "$remote_head" ]; then
echo "Branch not pushed to remote, aborting..." >&2
exit 1
fi

if [ "$KAMAL_VERSION" != "$remote_head" ]; then
echo "Version ($KAMAL_VERSION) does not match remote HEAD ($remote_head), aborting..." >&2
exit 1
fi

exit 0
47 changes: 47 additions & 0 deletions .kamal/hooks/pre-connect.sample
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
#!/usr/bin/env ruby

# A sample pre-connect check
#
# Warms DNS before connecting to hosts in parallel
#
# These environment variables are available:
# KAMAL_RECORDED_AT
# KAMAL_PERFORMER
# KAMAL_VERSION
# KAMAL_HOSTS
# KAMAL_ROLES (if set)
# KAMAL_DESTINATION (if set)
# KAMAL_RUNTIME

hosts = ENV["KAMAL_HOSTS"].split(",")
results = nil
max = 3

elapsed = Benchmark.realtime do
results = hosts.map do |host|
Thread.new do
tries = 1

begin
Socket.getaddrinfo(host, 0, Socket::AF_UNSPEC, Socket::SOCK_STREAM, nil, Socket::AI_CANONNAME)
rescue SocketError
if tries < max
puts "Retrying DNS warmup: #{host}"
tries += 1
sleep rand
retry
else
puts "DNS warmup failed: #{host}"
host
end
end

tries
end
end.map(&:value)
end

retries = results.sum - hosts.size
nopes = results.count { |r| r == max }

puts "Prewarmed %d DNS lookups in %.2f sec: %d retries, %d failures" % [ hosts.size, elapsed, retries, nopes ]
Loading