Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
54 commits
Select commit Hold shift + click to select a range
3b7d927
Merge pull request #1 from vitfera/feat/update-dependencies
vitfera Mar 13, 2026
d2fffeb
feat: substitui logos do footer por imagem institucional centralizada
vitfera Mar 13, 2026
9466b94
feat: remove módulo desenvolvedores
vitfera Mar 13, 2026
97e5a37
feat: renomeia card "Agentes Artísticos" para "Proponentes" na home
vitfera Mar 13, 2026
da480b9
feat: substitui logo e atualiza título para Cult Editais
vitfera Mar 19, 2026
c5db20e
chore: remove logos SVG da Rede das Artes e mantém pasta svg com .git…
vitfera Mar 19, 2026
90b77da
feat: atualiza hero da home para Cult Editais com cores escuras
vitfera Mar 19, 2026
f07937d
docs: adiciona pasta docs com levantamento e roadmap do projeto
vitfera Mar 20, 2026
976aa2e
docs: atualiza roadmap com progresso da Fase 0 e renomeação para Cult…
vitfera Mar 22, 2026
c832c4e
feat: atualiza textos do rodapé e hero para Cult Editais / Política N…
vitfera Mar 22, 2026
a659694
docs: atualiza roadmap com itens concluídos no rodapé e hero (Fase 0)
vitfera Mar 22, 2026
5ed3704
feat: atualiza cards FeaturedHome — título e descrições dos atores
vitfera Mar 22, 2026
c4082f9
docs: marca itens 0.4 FeaturedHome como concluídos no ROADMAP
vitfera Mar 22, 2026
617e15f
docs: adiciona hash 5ed3704 nos itens 0.4 concluídos do ROADMAP
vitfera Mar 22, 2026
7732901
feat: renomeia pasta gestores → gestor e atualiza referências
vitfera Mar 22, 2026
4419dbb
docs: atualiza ROADMAP após renomeação gestores → gestor (7732901)
vitfera Mar 22, 2026
5bc9279
feat: renomeia pasta usuarios → proponente e atualiza referências
vitfera Mar 22, 2026
b9967ec
docs: atualiza ROADMAP — Fase 1 concluída (5bc9279 / 7732901)
vitfera Mar 22, 2026
b1b7c78
feat: reestrutura seção proponente — Fase 2 + Fase 3
vitfera Mar 22, 2026
1752017
docs: atualiza ROADMAP — Fases 2 e 3 concluídas (b1b7c78)
vitfera Mar 22, 2026
a294a70
fix: adiciona links de navegação na intro do proponente
vitfera Mar 22, 2026
5164d20
refactor: reorganiza pastas de imagens do proponente por ordem de menu
vitfera Mar 22, 2026
6d92f51
feat: conta.mdx — criar conta via gov.br e painel de controle
vitfera Mar 22, 2026
06ca74b
docs: reestrutura ROADMAP — separa fases por ator (proponente / gestor)
vitfera Mar 22, 2026
f1c30ce
chore: atualiza npm para latest no Dockerfile
vitfera Mar 22, 2026
1f4ee86
feat(proponente): renomeia seção Agentes → Meus Agentes e corrige pre…
vitfera Mar 22, 2026
c40ec68
feat(proponente/agentes): reescreve seção com foco em criação e ediçã…
vitfera Mar 22, 2026
4471586
docs: atualiza ROADMAP — agentes.mdx concluído, oportunidades adiado …
vitfera Mar 22, 2026
2421d59
feat(gestor): reescreve intro.mdx, cria conta.mdx e adiciona imagens …
vitfera Mar 22, 2026
97b7136
feat(gestor): renomeia painel-controle → criar-oportunidade, reescrev…
vitfera Mar 22, 2026
082f96c
docs(roadmap): atualiza Fase 5 — marca intro, conta e criar-oportunid…
vitfera Mar 22, 2026
cd75919
feat(gestor/img): reorganiza pastas — 03_criar-oportunidade e 04_gere…
vitfera Mar 22, 2026
157bd1f
docs(roadmap): marca 5.1 como concluído — reorganização de imagens do…
vitfera Mar 22, 2026
d6aea6b
feat(gestor/gerenciar-oportunidades): remove prefixos numéricos, corr…
vitfera Mar 23, 2026
b9ba3c9
docs(roadmap): marca 5.4 gerenciar-oportunidades como concluído
vitfera Mar 23, 2026
de44f84
feat(gestor/criar-oportunidade): refina textos, adiciona seção modelo…
vitfera Mar 23, 2026
82e9c21
feat(gestor/criar-oportunidade): adiciona fluxo usar modelo PNAB — es…
vitfera Mar 23, 2026
be03826
feat(gestor/criar-oportunidade): finaliza fluxo manual — reordena ima…
vitfera Mar 23, 2026
b3c7bb0
feat(proponente/oportunidades): remove prefixos numéricos, ajusta hie…
vitfera Mar 23, 2026
b160f2f
fix: limita memória do Node.js no build Docker (OOM)
vitfera Mar 23, 2026
f66c5d8
refactor: divide gerenciar-oportunidades em arquivos por aba
vitfera Mar 26, 2026
a71acc0
feat: adiciona passo de autorização gov.br na criação de conta (gesto…
vitfera Mar 26, 2026
32a0fcc
feat: adiciona passos de termos, privacidade e autorização de imagem …
vitfera Mar 26, 2026
162af0a
feat: adiciona seleção de ente federado na criação de conta do gestor
vitfera Mar 26, 2026
4bda08e
fix: remove npm update desnecessário do Dockerfile e adiciona .docker…
vitfera Mar 26, 2026
6570a22
feat: atualiza seção de oportunidades do proponente com novo fluxo de…
vitfera Mar 26, 2026
1ed834f
Merge pull request #2 from vitfera/feat/new-implementations
vitfera Mar 26, 2026
aff4934
fix(security): atualiza next e picomatch para corrigir vulnerabilidades
vitfera Mar 26, 2026
0d87916
fix(mermaid): troca securityLevel de loose para strict
vitfera Mar 26, 2026
82b53a6
feat(layout): remove link do GitHub do cabeçalho
vitfera Mar 26, 2026
2b4ba48
feat(docs): remove botão "Edit on GitHub" das páginas de documentação
vitfera Mar 26, 2026
affd207
feat(i18n): traduções PT-BR via RootProvider e correções de hydration
vitfera Mar 26, 2026
4399704
feat(home): adiciona ícones SVG para cards de Proponentes e Gestores
vitfera Mar 27, 2026
dfd1d0f
feat: atuliza seção de oportunidade do proponente
vitfera Mar 27, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
13 changes: 13 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
node_modules
.next
.git
.gitignore
README.md
*.md
.env*
!.env.production
Dockerfile
.dockerignore
docs/
helm/
skaffold.yaml
4 changes: 3 additions & 1 deletion Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@

FROM node:20-alpine AS base

# Install dependencies only when needed
FROM base AS deps
# Check https://github.com/nodejs/docker-node/tree/b4117f9333da4138b03a546ec926ef50a31506c3#nodealpine to understand why libc6-compat might be needed.
RUN apk add --no-cache libc6-compat
Expand All @@ -24,6 +23,9 @@ WORKDIR /app
COPY --from=deps /app/node_modules ./node_modules
COPY . .

# Limit Node.js memory to avoid OOM in constrained build environments
ENV NODE_OPTIONS="--max-old-space-size=2048"

# Execute fumadocs-mdx after copying all files
RUN npx fumadocs-mdx

Expand Down
19 changes: 0 additions & 19 deletions app/(home)/layout.tsx
Original file line number Diff line number Diff line change
@@ -1,25 +1,6 @@
"use client";
import { useEffect } from 'react';
import { HomeLayout } from 'fumadocs-ui/layouts/home';
import { baseOptions } from '@/app/layout.config';

export default function Layout({ children }: { children: React.ReactNode }) {
useEffect(() => {
const interval = setInterval(() => {
const searchButton = document.querySelector('[data-search-full]');

if (searchButton && searchButton.textContent?.includes('Search')) {
searchButton.childNodes.forEach((node) => {
if (node.nodeType === Node.TEXT_NODE && node.textContent?.trim() === 'Search') {
node.textContent = 'Buscar';
}
});

clearInterval(interval);
}
}, 100);
return () => clearInterval(interval);
}, []);

return <HomeLayout {...baseOptions}>{children}</HomeLayout>;
}
8 changes: 1 addition & 7 deletions app/docs/[[...slug]]/page.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -24,13 +24,7 @@ export default async function Page(props: {
};

return (
<DocsPage toc={page.data.toc} full={page.data.full} footer={optionsFooter} editOnGithub={{
owner: 'redemapas',
repo: 'manual',
sha: 'main',
// file path, make sure it's valid
path: `content/docs/${page.path}`,
}}>
<DocsPage toc={page.data.toc} full={page.data.full} footer={optionsFooter}>
<DocsTitle>{page.data.title}</DocsTitle>
<DocsDescription>{page.data.description}</DocsDescription>
<DocsBody>
Expand Down
19 changes: 5 additions & 14 deletions app/layout.config.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -9,26 +9,17 @@ import type { BaseLayoutProps } from 'fumadocs-ui/layouts/shared';
*/
import Image from 'next/image';

import LogoRedeMapas from '../public/svg/dark-logo-rede-das-artes.svg';
import LogoRedeMapasDark from '../public/svg/light-logo-rede-das-artes.svg';
import LogoCultBR from '../public/img/cultbr-fundo-claro.png';
import LogoCultBRDark from '../public/img/cultbr-fundo-escuro.png';

export const baseOptions: BaseLayoutProps = {
githubUrl: 'https://github.com/redemapas/manual',
nav: {
title: (
<>
{/* <svg
width="24"
height="24"
xmlns="http://www.w3.org/2000/svg"
aria-label="Logo"
>
<circle cx={12} cy={12} r={12} fill="currentColor" />
</svg> */}
<Image alt="M" src={LogoRedeMapas} className="w-25 object-contain mx-auto block dark:hidden" />
<Image alt="M" src={LogoRedeMapasDark} className="w-25 object-contain mx-auto hidden dark:block" />
<Image alt="Cult Editais" src={LogoCultBR} className="h-8 w-auto object-contain block dark:hidden" />
<Image alt="Cult Editais" src={LogoCultBRDark} className="h-8 w-auto object-contain hidden dark:block" />

<h1>Manual Rede das Artes</h1>
<h1>Manual Cult Editais</h1>
</>
),
},
Expand Down
19 changes: 16 additions & 3 deletions app/layout.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -7,11 +7,24 @@ const inter = Inter({
subsets: ['latin'],
});

const ptBR = {
search: 'Buscar',
searchNoResult: 'Nenhum resultado encontrado.',
toc: 'Nesta página',
tocNoHeadings: 'Sem títulos',
lastUpdate: 'Última atualização',
chooseLanguage: 'Selecionar idioma',
nextPage: 'Próxima página',
previousPage: 'Página anterior',
chooseTheme: 'Selecionar tema',
editOnGithub: 'Editar no GitHub',
};

export default function Layout({ children }: { children: ReactNode }) {
return (
<html lang="en" className={inter.className} suppressHydrationWarning>
<body className="flex flex-col min-h-screen">
<RootProvider>{children}</RootProvider>
<html lang="pt-BR" className={inter.className} suppressHydrationWarning>
<body className="flex flex-col min-h-screen" suppressHydrationWarning>
<RootProvider i18n={{ locale: 'pt-BR', translations: ptBR }}>{children}</RootProvider>
</body>
</html>
);
Expand Down
37 changes: 12 additions & 25 deletions components/FeaturedHome.tsx
Original file line number Diff line number Diff line change
@@ -1,41 +1,28 @@
import Image from 'next/image';

import imgAgents from './img/home/agents.svg';
import imgManagers from './img/home/managers.svg';
import imgDevelopers from './img/home/developers.svg';
import iconProponente from './img/home/icon-proponente.svg';
import iconGestor from './img/home/icon-gestor.svg';

const roles = [
{
title: 'Agentes Artísticos',
image: imgAgents,
alt: 'Pessoa dançando com o sol ao fundo',
title: 'Proponentes',
image: iconProponente,
alt: 'Ícone de agente cultural proponente',
description:
'Pessoas que desejam divulgar a agenda de seus circuitos artísticos, eventos e outras oportunidades.',
link: '/docs/usuarios/intro',
'Agentes culturais, artistas e produtores que desejam se inscrever em editais da Política Nacional Aldir Blanc e gerenciar suas propostas.',
link: '/docs/proponente/intro',
linkText: 'Saiba mais',
bgColor: 'bg-blue-900',
textColor: 'text-white',
roundedClass: 'lg:rounded-l-[2rem]',
},
{
title: 'Gestores',
image: imgManagers,
alt: 'Pintora criando em tela com pincéis',
title: 'Gestores do Ente Federativo',
image: iconGestor,
alt: 'Ícone de gestor do ente federativo',
description:
'Coordenação do processo de editais e iniciativas, publicação dos resultados e monitoramento da execução de editais.',
link: '/docs/gestores/intro',
linkText: 'Saiba mais',
bgColor: 'bg-blue-900',
textColor: 'text-white',
roundedClass: 'lg:rounded-l-[2rem]',
},
{
title: 'Desenvolvedores',
image: imgDevelopers,
alt: 'Equipe trabalhando com tecnologia e engrenagens',
description:
'Pessoa responsável por manter a infraestrutura e dar manutenção nas tecnologias digitais utilizadas pela Rede das Artes.',
link: '/docs/devs',
'Servidores de secretarias de cultura estaduais e municipais que publicam editais, avaliam inscrições e acompanham a execução dos projetos selecionados.',
link: '/docs/gestor/intro',
linkText: 'Saiba mais',
bgColor: 'bg-blue-900',
textColor: 'text-white',
Expand Down
54 changes: 4 additions & 50 deletions components/Footer.tsx
Original file line number Diff line number Diff line change
@@ -1,63 +1,17 @@
import React from 'react';
import Image from 'next/image';

// Import light and dark images
import FelicilabLight from './img/light-felicilab.png';
import FelicilabDark from './img/dark-felicilab.png';
import MutiraoLight from './img/light-mutirao.png';
import MutiraoDark from './img/dark-mutirao.png';
import LabDoFuturoLight from './img/light-lab-do-futuro-ufc.png';
import LabDoFuturoDark from './img/dark-lab-do-futuro-ufc.png';
import UFCLight from './img/light-ufc.png';
import UFCDark from './img/dark-ufc.png';
import RedeDasArtesLight from './img/light-rede-das-artes-funarte.png';
import RedeDasArtesDark from './img/dark-rede-das-artes-funarte.png';
import FunarteLight from './img/light-funarte.png';
import FunarteDark from './img/dark-funarte.png';
import MincGovernoFederalLight from './img/light-minc-governo-federal.png';
import MincGovernoFederalDark from './img/dark-minc-governo-federal.png';
import LogoInstitucional from './img/SNC+PNAB+MinC+Gov.png';

const Footer = () => {
return (
<div className="mx-auto max-w-7xl p-6">
<hr className="border-blue-900 sm:mx-auto dark:border-gray-700 lg:my-8" />
<p className="text-left text-md mt-5 dark:text-white text-blue-900">
Esse material é fruto do Programa de Difusão Nacional - Funarte Redes das Artes, realizado pelo Laboratório do Futuro (entidade vinculada à Universidade Federal do Ceará) no ano de 2025.
Manual de usuário do <strong>Cult Editais</strong> — plataforma do Ministério da Cultura (MinC) para publicação e gestão de editais da Política Nacional Aldir Blanc por estados e municípios brasileiros.
</p>
<footer className="grid md:grid-cols-2 sm:grid-cols-1 px-6">
<div className="grid grid-cols-2 gap-6 md:grid-cols-4 lg:grid-cols-4 xl:grid-cols-4 pt-5">
<div className="relative">
<Image src={FelicilabLight} alt="Felicilab" className="w-auto h-18 object-contain mx-auto block dark:hidden" />
<Image src={FelicilabDark} alt="Felicilab" className="w-auto h-18 object-contain mx-auto hidden dark:block" />
</div>
<div className="relative">
<Image src={MutiraoLight} alt="Mutirão" className="w-auto py-5 h-max-18 mx-auto block dark:hidden" />
<Image src={MutiraoDark} alt="Mutirão" className="w-auto py-5 h-max-18 mx-auto hidden dark:block" />
</div>
<div className="relative">
<Image src={LabDoFuturoLight} alt="Lab do Futuro UFC" className="w-auto h-24 object-contain mx-auto block dark:hidden" />
<Image src={LabDoFuturoDark} alt="Lab do Futuro UFC" className="w-auto h-24 object-contain mx-auto hidden dark:block" />
</div>
<div className="relative">
<Image src={UFCLight} alt="UFC" className="w-auto h-20 object-contain mx-auto block dark:hidden" />
<Image src={UFCDark} alt="UFC" className="w-auto h-20 object-contain mx-auto hidden dark:block" />
</div>
</div>

<div className="grid grid-cols-1 gap-6 md:grid-cols-3 lg:grid-cols-3 xl:grid-cols-3 pt-5">
<div className="relative">
<Image src={RedeDasArtesLight} alt="Rede das Artes Funarte" className="w-auto h-15 pt-3 object-contain mx-auto block dark:hidden" />
<Image src={RedeDasArtesDark} alt="Rede das Artes Funarte" className="w-auto h-15 pt-3 object-contain mx-auto hidden dark:block" />
</div>
<div className="relative">
<Image src={FunarteLight} alt="Funarte" className="w-auto h-20 object-contain mx-auto block dark:hidden" />
<Image src={FunarteDark} alt="Funarte" className="w-auto h-20 object-contain mx-auto hidden dark:block" />
</div>
<div className="relative">
<Image src={MincGovernoFederalLight} alt="MinC Governo Federal" className="w-auto h-20 object-contain mx-auto block dark:hidden" />
<Image src={MincGovernoFederalDark} alt="MinC Governo Federal" className="w-auto h-20 object-contain mx-auto hidden dark:block" />
</div>
</div>
<footer className="flex justify-center px-6 pt-5">
<Image src={LogoInstitucional} alt="SNC + PNAB + MinC + Governo Federal" className="h-20 w-auto object-contain" />
</footer>
</div>
);
Expand Down
12 changes: 6 additions & 6 deletions components/HeroHome.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -4,16 +4,16 @@ export default function Example() {
<div className="mx-auto max-w-7xl p-6">
<div className="relative isolate overflow-hidden bg-cover sm:bg-top lg:bg-bottom bg-[url(/img/bg-home-hero.png)] px-6 pt-16 shadow-2xl sm:rounded-3xl sm:px-16 md:pt-24 lg:flex lg:gap-x-20 lg:px-24 lg:pt-0">
<div className="mx-auto max-w-md text-center lg:mx-0 lg:flex-auto py-16 lg:text-left">
<h2 className="text-3xl font-semibold tracking-tight text-balance text-white sm:text-4xl">
<strong>Rede das Artes</strong>
<h2 className="text-3xl font-semibold tracking-tight text-balance !text-gray-900 sm:text-4xl">
<strong>Cult Editais</strong>
</h2>
<p className="mt-6 text-lg/8 text-pretty text-gray-300">
Plataforma colaborativa criada para mapear, conectar e fortalecer iniciativas artísticas em todo o Brasil.
<p className="mt-6 text-lg/8 text-pretty !text-gray-700">
Plataforma do Ministério da Cultura para publicação e gestão de editais da Política Nacional Aldir Blanc em estados e municípios de todo o Brasil.
</p>
<div className="mt-10 flex items-center justify-center gap-x-6 lg:justify-start">
<a
href="/docs/usuarios/intro"
className="rounded-md bg-white px-3.5 py-2.5 text-sm font-semibold text-gray-900 shadow-xs hover:bg-gray-100 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-white"
href="/docs/proponente/intro"
className="rounded-md !bg-gray-900 px-3.5 py-2.5 text-sm font-semibold !text-white shadow-xs hover:!bg-gray-700 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-gray-900"
>
Introdução
</a>
Expand Down
Binary file added components/img/SNC+PNAB+MinC+Gov.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file removed components/img/dark-felicilab.png
Binary file not shown.
Binary file removed components/img/dark-funarte.png
Binary file not shown.
Binary file removed components/img/dark-lab-do-futuro-ufc.png
Binary file not shown.
Binary file removed components/img/dark-minc-governo-federal.png
Binary file not shown.
Binary file removed components/img/dark-mutirao.png
Binary file not shown.
Binary file removed components/img/dark-rede-das-artes-funarte.png
Binary file not shown.
Binary file removed components/img/dark-ufc.png
Binary file not shown.
57 changes: 57 additions & 0 deletions components/img/home/icon-gestor.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
40 changes: 40 additions & 0 deletions components/img/home/icon-proponente.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file removed components/img/light-felicilab.png
Binary file not shown.
Binary file removed components/img/light-funarte.png
Binary file not shown.
Binary file removed components/img/light-lab-do-futuro-ufc.png
Binary file not shown.
Binary file removed components/img/light-minc-governo-federal.png
Binary file not shown.
Binary file removed components/img/light-mutirao.png
Binary file not shown.
Binary file removed components/img/light-rede-das-artes-funarte.png
Binary file not shown.
Binary file removed components/img/light-ufc.png
Binary file not shown.
2 changes: 1 addition & 1 deletion components/mdx/mermaid.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ export function Mermaid({ chart }: { chart: string }) {
async function renderChart() {
const mermaidConfig: MermaidConfig = {
startOnLoad: false,
securityLevel: 'loose',
securityLevel: 'strict',
fontFamily: 'inherit',
themeCSS: 'margin: 1.5rem auto 0;',
theme: resolvedTheme === 'dark' ? 'dark' : 'default',
Expand Down
Loading