Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/silva4dev/rails-clean-academic-assessment-project
📚 Building an academic system using DDD, TDD, Clean Architecture, Design Patterns and SOLID Principles 🎯✨
https://github.com/silva4dev/rails-clean-academic-assessment-project
clean-architecture design-patterns domain-driven-design postgresql rails react ruby storybook swagger swagger-ui tailwindcss test-driven-development testing-library typescript
Last synced: 23 days ago
JSON representation
📚 Building an academic system using DDD, TDD, Clean Architecture, Design Patterns and SOLID Principles 🎯✨
- Host: GitHub
- URL: https://github.com/silva4dev/rails-clean-academic-assessment-project
- Owner: silva4dev
- Created: 2024-12-16T11:51:55.000Z (about 2 months ago)
- Default Branch: main
- Last Pushed: 2024-12-18T06:45:49.000Z (about 2 months ago)
- Last Synced: 2024-12-18T07:48:48.583Z (about 2 months ago)
- Topics: clean-architecture, design-patterns, domain-driven-design, postgresql, rails, react, ruby, storybook, swagger, swagger-ui, tailwindcss, test-driven-development, testing-library, typescript
- Language: Ruby
- Homepage:
- Size: 828 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
## 🧮 Introdução
Este projeto é um sistema de avaliação de desempenho acadêmico que calcula as notas dos alunos com base em diferentes critérios e mantém um histórico mensal das notas.
## 💻 Tecnologias
As principais tecnologias utilizadas no projeto são:
### Backend
- **Ruby on Rails** 🛤️
- **PostgreSQL** 🐘
- **RSpec** 🔍
- **Swagger** 📑 (Para documentação da API)### Frontend
- **React.js** ⚛️
- **TypeScript** 💻
- **TailwindCSS** 🎨
- **Jest + RTL** 🧪
- **Storybook** 📖 (Para documentação interativa dos componentes)### Outros
- **Docker** 🐋## 🧑💻 Versões Utilizadas
- **Ruby**: 3.3.0 🦋
- **Rails**: 7.2.2.1 🛤️
- **Node.js**: 21.7.3 🌐
- **React.js**: 19.0.0 ⚛️
- **TypeScript**: 4.4.2 💻## 🛠️ Setup
Para começar, copie o arquivo `.env.example` para `.env` e altere os valores das variáveis de ambiente conforme necessário.
Nota: Para executar os testes no Docker, ajuste para utilizar o `env.test`.## 🧑💻 Arquitetura
Aqui está uma visão da arquitetura do sistema, utilizando **Clean Architecture**:![Clean Architecture](docs/clean-architecture.png)
## 📖 Documentação da API
A documentação da API pode ser acessada através do seguinte endpoint (caso implementada):
- **Swagger**: [http://localhost:3000/api-docs](http://localhost:3000/api-docs) 📄 (Opcional)## 📖 Documentação do Frontend
A documentação do frontend foi criada utilizando o **Storybook** para visualizar os componentes e suas interações,
acesse a documentação interativa dos componentes no seguinte endereço:
- **Storybook**: [http://localhost:6006](http://localhost:6006) 📚## 🖥️ Tela do Sistema
Aqui está uma captura da tela do sistema:![Tela do Sistema](docs/application.png)