Skip to content

Commit

Permalink
docs: Add doxygen documentation
Browse files Browse the repository at this point in the history
  • Loading branch information
eduardo committed Nov 2, 2023
1 parent 8575f95 commit bdc2f95
Show file tree
Hide file tree
Showing 12,580 changed files with 532,258 additions and 0 deletions.
The diff you're trying to view is too large. We only load the first 3000 changed files.
2,807 changes: 2,807 additions & 0 deletions Doxyfile

Large diffs are not rendered by default.

126 changes: 126 additions & 0 deletions docs/doxygen/html/20230907134628___initialize_8_designer_8cs.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,126 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="pt">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>GPIC - Backend: Referência ao ficheiro src/Infrastructure/Persistence/Migrations/20230907134628_Initialize.Designer.cs</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
<link href="doxygen-awesome-sidebar-only.css" rel="stylesheet" type="text/css"/>
<link href="doxygen-awesome-sidebar-only-darkmode-toggle.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectlogo"><img alt="Logo" src="logo-gpic-original.svg"/></td>
<td id="projectalign">
<div id="projectname">GPIC - Backend<span id="projectnumber">&#160;1.0</span>
</div>
<div id="projectbrief">Aplicações .NET para o backend do GPIC</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Gerado por Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Localizar');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('20230907134628___initialize_8_designer_8cs.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Carregando...</div>
<div class="SRStatus" id="Searching">Procurando...</div>
<div class="SRStatus" id="NoMatches">Nenhuma entrada encontrada</div>
</div>
</div>
</div>
</div>

<div class="header">
<div class="summary">
<a href="#nested-classes">Componentes</a> &#124;
<a href="#namespaces">Namespaces</a> </div>
<div class="headertitle"><div class="title">Referência ao ficheiro 20230907134628_Initialize.Designer.cs</div></div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="nested-classes" name="nested-classes"></a>
Componentes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_persistence_1_1_migrations_1_1_initialize.html">Persistence.Migrations.Initialize</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:namespace_persistence"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_persistence.html">Persistence</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:namespace_persistence_1_1_migrations"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_persistence_1_1_migrations.html">Persistence.Migrations</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_7433a7d98e82d2923e770867e49308bb.html">Infrastructure</a></li><li class="navelem"><a class="el" href="dir_0e08a6a9c79c79266254e2ab5d98f94d.html">Persistence</a></li><li class="navelem"><a class="el" href="dir_f3197a33442e2ec71e2c00cd82d3647f.html">Migrations</a></li><li class="navelem"><a class="el" href="20230907134628___initialize_8_designer_8cs.html">20230907134628_Initialize.Designer.cs</a></li>
<li class="footer">Gerado por <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8 </li>
</ul>
</div>
</body>
</html>
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
var 20230907134628___initialize_8_designer_8cs =
[
[ "Persistence.Migrations.Initialize", "class_persistence_1_1_migrations_1_1_initialize.html", "class_persistence_1_1_migrations_1_1_initialize" ]
];
126 changes: 126 additions & 0 deletions docs/doxygen/html/20230907134628___initialize_8cs.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,126 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="pt">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>GPIC - Backend: Referência ao ficheiro src/Infrastructure/Persistence/Migrations/20230907134628_Initialize.cs</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
<link href="doxygen-awesome-sidebar-only.css" rel="stylesheet" type="text/css"/>
<link href="doxygen-awesome-sidebar-only-darkmode-toggle.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectlogo"><img alt="Logo" src="logo-gpic-original.svg"/></td>
<td id="projectalign">
<div id="projectname">GPIC - Backend<span id="projectnumber">&#160;1.0</span>
</div>
<div id="projectbrief">Aplicações .NET para o backend do GPIC</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Gerado por Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Localizar');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(document).ready(function(){initNavTree('20230907134628___initialize_8cs.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Carregando...</div>
<div class="SRStatus" id="Searching">Procurando...</div>
<div class="SRStatus" id="NoMatches">Nenhuma entrada encontrada</div>
</div>
</div>
</div>
</div>

<div class="header">
<div class="summary">
<a href="#nested-classes">Componentes</a> &#124;
<a href="#namespaces">Namespaces</a> </div>
<div class="headertitle"><div class="title">Referência ao ficheiro 20230907134628_Initialize.cs</div></div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="nested-classes" name="nested-classes"></a>
Componentes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_persistence_1_1_migrations_1_1_initialize.html">Persistence.Migrations.Initialize</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="namespaces" name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:namespace_persistence"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_persistence.html">Persistence</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:namespace_persistence_1_1_migrations"><td class="memItemLeft" align="right" valign="top">namespace &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_persistence_1_1_migrations.html">Persistence.Migrations</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_7433a7d98e82d2923e770867e49308bb.html">Infrastructure</a></li><li class="navelem"><a class="el" href="dir_0e08a6a9c79c79266254e2ab5d98f94d.html">Persistence</a></li><li class="navelem"><a class="el" href="dir_f3197a33442e2ec71e2c00cd82d3647f.html">Migrations</a></li><li class="navelem"><a class="el" href="20230907134628___initialize_8cs.html">20230907134628_Initialize.cs</a></li>
<li class="footer">Gerado por <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8 </li>
</ul>
</div>
</body>
</html>
4 changes: 4 additions & 0 deletions docs/doxygen/html/20230907134628___initialize_8cs.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
var 20230907134628___initialize_8cs =
[
[ "Persistence.Migrations.Initialize", "class_persistence_1_1_migrations_1_1_initialize.html", "class_persistence_1_1_migrations_1_1_initialize" ]
];
63 changes: 63 additions & 0 deletions docs/doxygen/html/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
# GPIC - Backend

Bem-vindo ao código do backend do sistema Gerenciamento Institucional de Processos de Iniciação Científica (GPIC)! Este repositório contém o código das aplicações de backend do sistema GPIC, uma solução web-based para a otimização do processo de gestão do Programa Institucional de Bolsas de Iniciação Científica (PIBIC) do Centro Federal de Educação Tecnológica Celso Suckow da Fonseca (CEFET/RJ) Campus Petrópolis.

Este repositório contém o código-fonte e a definição de testes automatizados para garantir a qualidade e a correção do Backend do GPIC. A base de código é continuamente construída, testada e integrada através de um processo de integração contínua que utiliza a estrutura GitHub Actions para acelerar o desenvolvimento e avaliar o padrão de qualidade do código.

O backend faz parte do sistema GPIC, composto pelo frontend, o backend propriamente dito e um servidor isolado para a execução de processos em segundo plano que não requerem a interação do utilizador. O frontend está armazenado no repositório [GPIC.WebUI](https://github.com/eduardo-paes/CopetSystem.WebUI), e o servidor de fundo (background worker) está localizado no subdiretório `src/GPIC.WebFunction` deste repositório.

## Tabela de Conteúdo

- [GPIC - Backend](#gpic---backend)
- [Tabela de Conteúdo](#tabela-de-conteúdo)
- [Introdução](#introdução)
- [Arquitetura do Sistema](#arquitetura-do-sistema)
- [Pré-Requisitos](#pré-requisitos)
- [Contribuição](#contribuição)
- [Licença](#licença)

## Introdução

O Backend do GPIC é responsável por gerenciar e servir dados para as aplicações web através de uma interface REST API utilizando C# e .NET e interage com um banco de dados PostgreSQL. Foi concebido utilizando uma arquitetura cliente-servidor, uma arquitetura de microsserviços que utiliza contentores Docker e estruturas de Arquitetura Limpa para garantir a separação em camadas das preocupações e a testabilidade.

## Arquitetura do Sistema

A arquitetura do sistema foi desenvolvida com base no modelo Cliente-Servidor. As responsabilidades foram separadas em camadas de front-end e back-end, permitindo a independência entre ambas. A adoção da Clean Architecture para arquitetura das aplicações que compõem o sistema foi baseada no intuito de alcançar coesão, redução de acoplamento e escalabilidade.

A interface de usuário foi desenvolvida como uma Single Page Application (SPA), utilizando o framework ReactJS para aprimorar a usabilidade e a experiência do usuário. O back-end foi desenvolvido utilizando C# e .NET, adotando a Arquitetura Limpa para camadas do sistema. O banco de dados utilizado foi PostgreSQL.

O sistema foi construído por meio de três aplicações distintas, cada uma operando em contêineres separados: GPIC.WebUI (responsável pela interface do usuário), GPIC.WebAPI (que oferece funcionalidades conforme as regras de negócio) e GPIC.WebFunctions (responsável por execuções periódicas de rotinas assíncronas).

A seguir, há um diagrama ilustrando a arquitetura do sistema:

![Diagrama arquitetural do sistema (GPIC)](/docs/images/system_design.png)

## Pré-Requisitos

Antes de executar o backend do sistema, você deverá garantir que os seguintes pontos sejam atendidos:

- O sistema operacional suporta a instalação da plataforma .NET;
- O banco de dados PostgreSQL está instalado e configurado;
- As variáveis de ambiente necessárias estão definidas (ex: string de conexão do banco de dados).

Para executar o backend, siga os seguintes passos:

1. Faça um clone do repositório.
2. Navegue até o diretório raiz `/src`.
3. Execute o comando "dotnet run" na linha de comando.

## Contribuição

As contribuições para este repositório são bem-vindas! Para contribuir, siga estes passos:

1. Faça um fork deste repositório na sua conta GitHub.
2. Crie um novo ramo para a sua contribuição.
3. Adicione os seus exemplos de código ou projectos ao diretório apropriado.
4. Escreva ficheiros README claros e informativos para as suas adições.
5. Crie um pull request para juntar as suas alterações a este repositório.

As suas contribuições ajudarão a aprimorar o processo de análise e controle dos projetos de IC do CEFET.

## Licença

Este projeto está licenciado sob a Licença MIT - veja o ficheiro [LICENSE](./LICENSE) para mais detalhes.
Loading

0 comments on commit bdc2f95

Please sign in to comment.