- Badges
- Índice
- Descrição do Projeto
- Tecnologias utilizadas
- Funcionalidades e Demonstração da Aplicação
- Pessoas Desenvolvedoras do Projeto
Desenvolvimento de uma plataforma web com novo layout - que respeita a identidade visual do governo de PE, para todas as páginas, que direciona o usuário até os editais e otimiza os formulários de inscrições considerando as particularidades dos editais.
- Javascript
- CSS
- Git e Github
- React.js
- React-Bootstrap
- Node version managers(NPM)
- VS Code
- Vercel
- Git clone
- Acessar o diretorio clonado, utilize o git bash
- npm i
- npm start
Tela Principal
:
representa a tela principal da plataforma dedicada à promoção cultural e divulgação de eventos e editais.
A tela home é composta por 3 arquivos js: index, styled e constants.
🛠️ O index.js representa a Tela Principal e está dividido em várias seções, cada uma representando um bloco ou uma parte específica da página. Todas as seções da página se encontram dentro do ContainerHome.
⭐ O styled.js representa os elementos de estilo da página principal.
⌨️ O constants.js representa os filtros de mês e categoria da seção de editais da página principal.
- CardHome
- CarouselHome
- Header
- Footer
- editalCard
- eventsCard
- Dropdown
- DropdownButton
- SelectGroup
- CardBox
- ContainerHome
- AboutBox
- ButtonBox
- meses
- categorias
- Banner1
- Banner2
- bridge
- Header: Contém informações do cabeçalho, como o nome de usuário, links para seções específicas (como institucionais), botões para registrar e sair, e uma opção para iniciar a sessão.
- CarouselHome: Exibe informações de forma dinâmica e atrativa em um carrossel. Contém título, detalhe adicional e uma descrição mais aprofundada sobre a iniciativa do Governo de Pernambuco relacionada à cultura.
- SelectGroup, CardBox e ButtonBox: Permite filtrar os editais por mês e categoria, exibindo uma lista de editais em cartões (CardHome). Além disso, inclui um botão para possibilitar a visualização de mais detalhes sobre os editais.
- AboutBox: Seção informativa sobre o Funcultura PE, contendo um link para obter mais informações, uma imagem relacionada e um parágrafo detalhado explicando a origem, funcionamento e impacto do Funcultura.
- Div flex_container, flex_section e flex_imag: Seção visualmente rica, contendo imagens, vídeos e texto. Ela utiliza a flexibilidade do layout para organizar elementos visualmente de maneira atrativa e dinâmica.
- CardBox: Seção de eventos, onde cada evento é exibido por meio do componente CardHome. Os eventos são mapeados a partir do array eventsCard e apresentados em cartões. Cada cartão inclui informações relacionadas ao evento (título, imagem, data e descrição).
- Footer: Representa o rodapé que contém informações institucionais, linguagens, suporte, logos e links para redes sociais.
Tela de Login
:
representa a tela de acesso do usuário à plataforma através das suas credenciais de autenticação seja ele um agente ou administrador.
A tela de login é composta por 3 arquivos js: Login, Login.Adm e styled.
🛠️ O Login.js representa a tela de login do Agente, indíviduo que participa de editais lançados pela Funcultura, competindo por recursos financeiros para a execução de projetos culturais específicos.
🛠️ O LoginAdm.js representa a tela de login do Administrador, indivíduo que realiza a gestão e manutenção da plataforma e dos editais divulgados.
⭐ O styled.js representa os elementos de estilo utilizados na tela de login.
- Header
- Footer
- React, useState
- cpfCnpjMask
- validatePassword
- useNavigate
- ContainerLogin
- ReCaptcha
- Acessos
- LoginAdm
- reCaptcha
- Form
Tela de Cadastro
:
A tela de cadastro foi idealizada para ser intuitiva e receptiva para o usuário, ela foi construída com uma interface familiar o que torna o processo de cadastramento confortável.
Para a construção da tela foi utilizado 2 arquivos js:
🛠️ index.js está dentro da pasta pages que são as telas de retorno para os usuários.
⭐ O styled.js foi onde trabalhamos a apresentação visual dos elementos.
⭐ Também importamos um arquivo styled.js do Login que foi onde trabalhamos a apresentação visual dos elementos compartilhados.
- React Bootstrap Form
- useNavigate (react-router)
- useState (react)
- cpfCnpjMask
- validatePassword
- Header
- LoginHeader
- Footer
- Acessos
- ContainerRegister
Uma const Register, uma função JavaScript que permite a identificação do tipo de perfil que será cadastrado, foi definido também uma const navigate, que é caracterizada pelo uso da função useNavigate( ). Também implementamos no código condições para validar se o usuário é um agente ou um administrador, funções como validação de senha e CPF.
Dentro dessa pasta podemos ver importes do React Bootstrap que nos auxiliou na construção da aplicação web e importes de outros componentes.
Tela de Detalhes do Edital
:
Cada edital possui sua particularidade, eles se dividem em Audiovisual, Geral, Microprojeto Cultural, Música e Parecerista.
Para a composição da tela de detalhes do edital temos 3 arquivos js:
🛠️ Um index.js está alocado dentro de uma pasta específica para a construção estrutural de detalhes de edital, nomeada como PublicNotice.
🛠️ Um segundo index.js está dentro da pasta pages que são as telas de retorno para os usuários.
⭐ O styled.js foi onde trabalhamos a apresentação visual dos elementos.
Na pasta Componentes do PublicNotice importamos bibliotecas, elementos e caminhos de outros componentes
- React Bootstrap Icons
- React Bootstrap (botão)
- useNavigate (react-router)
- editalCard
- Container
- SectionOne
- SectionTwo
- SectionThree
- SectionFour
- Title
- Image
- FileIcon
- LampIcon
Uma const id, uma função JavaScript que permite nossa navegação entre (item.id), quando definida o que auxilia a otimizar o código, quando atribuirmos condições e determinamos como a aplicação deve se comportar na estruturação dos possíveis cenários e rotas para assim retornar ao usuário.
Dentro dessa pasta podemos ver importes do React Bootstrap que nos auxiliou na construção da aplicação web e importes de outros componentes como os de edital que foi criado na tela de Home, de acordo com os requisitos funcionais da nossa aplicação estipulados pelo cliente.
A página de detalhes de edital é composta pelos seguintes componentes (alguns já importados e citados acima):
Container: utilizamos uma função map do JavaScript que funcionará em conjunto com a const id na navegação (useNavigate) entre os editais.
SectionOne: utilizamos uma 🔑 para poder habilitar essa navegação e trazer retornos distintos dependendo do edital que o usuário selecionar na aplicação.
SectionTwo: trouxemos a logo da secretaria da cultura que é a responsável pelos editais do Funcultura, trouxemos um link direcionável para que o usuário possa explorar o Mapa Cultural de Pernambuco.
SectionTree: são informações complementares do edital e de suporte ao usuário.
SectionFour: é composta pela estruturação de direcionamento do usuário para mais informações para sua inscrição e o botão de inscrição de fato onde usamos a mesma ideia do (map) que foi utilizada na SectionTwo, para direcionar o usuário para a inscrição do edital específico selecionado.
Tela de Inscrição do Edital
:
representa a tela onde é exibido o formulário de inscrição para o edital escolhido pelo agente.
A tela de inscrição do edital é composta pelo arquivo index.js, que representa o formulário de inscrição.
- Header
- Footer
- ContainerFormPage
- FormsPublicNotices
- CheckBoxForm
- publicForms
- publicFormsTwo
- checkboxForm
- checkboxFormGeral
- checkboxFormAudioV
- checkboxFormM
- checkboxFormParecerista
- FileIcon
- LampIcon
- editalCard
- Button
- FileText
- Lightbulb
- Download
A página de inscrição é composta pelos seguintes componentes (alguns já importados e citados acima):
Se a categoria for "musica", renderiza checkboxes de checkboxForm. Se a categoria for "geral", renderiza checkboxes de checkboxFormGeral. Se a categoria for "audiovisual", renderiza checkboxes de checkboxFormAudioV. Se a categoria for "microprojeto", renderiza checkboxes de checkboxFormM. Se a categoria for "parecerista", renderiza checkboxes de checkboxFormParecerista.
Tela de Perfil (Agente)
:
representa a tela onde o agente visualiza suas informações pessoais além de suas inscrições, notificações, conexões e documentações.
A tela de perfil do agente é formada por 3 arquivos js: constantsAccount, index e styled.
🛠️ O arquivo index.js representa a tela de perfil do agente.
⭐ O arquivo styled.js representa os elementos de estilo utilizados na tela de perfil.
📜 O arquivo constantAccount.js representa a lista de etapas (steps) e etapas concluídas (stepsFinished) em um processo de submissão a um edital. Cada etapa é representada como um objeto dentro de um array.
- Header
- Footer
- ProfileHeaders
- avatarUser
- cardEdital
- cardEdital2
- NoticeSummary
- Wrapper
- Legend
- steps
- stepsFinished
- ContainerTable
- Table
- ThOne
- ThTwo
- ThTree
- ThFour
- ThFive
- stepsFinished
- useState
A página de perfil do agente é composta pelos seguintes componentes (alguns já importados e citados acima):
Tela de Perfil (Administrador)
:
representa a tela onde o administrador visualiza suas informações pessoais além de suas inscrições, notificações, pareceristas e documentações para análise.
A tela de perfil do administrador é formada por 2 arquivos js: index e styled.
🛠️ O arquivo index.js representa a tela de perfil do administrador.
⭐ O arquivo styled.js representa os elementos de estilo utilizados na tela de perfil.
- Header
- Footer
- ProfileHeaders
- avatar
- Documentations
- WrapInscription
- WrapCard
- SelectGroup
- WrapDoc
- ContainerTable
- Table
- ThOne
- ThTwo
- ThTree
- ThFour
- ThFive
- ButtonBox
- CardBox
- CardHome
- editalCard
- categorias
- meses
- DropdownButton
- Dropdown
- Form
- useState
A página de perfil do administrador é composta pelos seguintes componentes (alguns já importados e citados acima):
Ana Beatriz Lira |
Anderson Fernandes |
Artur Ramos |
Beatriz Rodrigues |
Beatriz Silva |
Carlos Lima |
Flavia Favacho |
Gabriel Oliveira |
Joana D'Arc |
Kelvia Santos |
Rennan Reis |
---|