FranGJ7 /
Site-Ead-Back-End
Back-end de site Ead utilizando Sequelize para interagir com banco de dados Postgres e Express criando as rotas e painel Admin. Front-End => https://github.com/FranGJ7/site-ead-front-end
Loading repository data…
paroquia-sao-jose-caragua / repository
Painel Front-end para gerenciar o conteúdo do site institucional da paróquia, rodando em Cloudflare Workers (TypeScript).
Painel administrativo do sistema institucional da Paréquia São José de Caraguatatuba. O projeto foi desenvolvido com Next.js, React, TypeScript e OpenNext, com deploy em Cloudflare Workers.
O painel consome a API backend da paréquia para autenticar usuérios administrativos e gerenciar comunidades, horérios de missa, eventos do calendério e demais conteudos paroquiais.
Instale previamente:
git clone <url-do-repositorio>
cd panel
npm install
Crie ou atualize o arquivo .env na raiz do projeto. A aplicação usa a variável publica abaixo para encontrar a API:
NEXT_PUBLIC_BASE_API_URL=http://localhost:3333
Quando necessário, também configure:
NEXT_PUBLIC_DOMAIN=localhost
Em staging e produção, a URL da API deve apontar para os domínios correspondentes do backend.
O arquivo de configuração do Worker e wrangler.jsonc. Ele define:
panel-devpanel-stagingpanel.open-next/assetsASSETSIMAGESWORKER_SELF_REFERENCEAntes de publicar em outra conta Cloudflare, revise no wrangler.jsonc:
route.pattern;zone_name;npx wrangler login
Para iniciar o servidor de desenvolvimento do Next.js:
npm run dev
Por padrão, o painel fica disponível em:
http://localhost:3000
Para testar a aplicação no runtime da Cloudflare:
npm run preview
Os scripts estao definidos em package.json:
| Script | Descricao |
|---|---|
npm run dev | Inicia o Next.js local com Turbopack. |
npm run build | Gera o build Next.js. |
npm run start | Inicia o servidor Next.js a partir do build local. |
npm run lint | Executa a verificação de lint configurada para Next.js. |
npm run preview | Gera o build OpenNext e executa preview local no runtime Cloudflare. |
npm run upload | Gera o build OpenNext e faz upload para Cloudflare. |
npm run deploy | Gera o build OpenNext e publica em producao. |
npm run deploy:staging | Gera o build OpenNext e publica em staging. |
npm run cf-typegen | Gera os tipos dos bindings Cloudflare em cloudflare-env.d.ts. |
Este projeto nao define o banco de dados diretamente. Os esquemas de banco ficam no repositório da API. No painel, os principais esquemas sao validações de formulários e contratos de dados consumidos da API.
Validacoes de formulario em src/schemas:
| Arquivo | Finalidade |
|---|---|
useLoginSchema.tsx | Valida email e senha do formulário de login. |
useChurchSchema.tsx | Valida cadastro e edição de comunidades/capelas. |
useAdressSchema.tsx | Valida campos de endereço usados nos formulários. |
Entidades TypeScript em src/entities:
| Entidade | Finalidade |
|---|---|
Community | Representa comunidade, capela ou matriz. |
MassSchedule | Representa regra recorrente de horario de missa. |
MassScheduleTime | Representa horários vinculados a uma missa. |
MassScheduleException | Representa exceções de horário por data. |
EventSchedule | Representa eventos específicos do calendário. |
CalendarSchedule | Representa itens consolidados exibidos no calendário. |
src/
app/ Rotas, layouts e paginas do App Router
api/ Clientes HTTP e hooks de integração com a API
components/ Componentes comuns, UI e componentes de features
dictionaries/ Arquivos de tradução e utilitérios de idioma
entities/ Tipos e contratos de domínio usados no painel
hooks/ Hooks reutilizáveis
lib/ Utilitarios compartilhados
providers/ Providers globais de autenticação, hidratação e React Query
schemas/ Validacoes Yup dos formulários
stores/ Estados globais com Zustand
utils/ Formatadores e funções auxiliares
public/ Imagens e assets públicos
Fluxo geral da aplicação:
src/app/layout.tsx define o layout raiz.src/providers/AppProvider.tsx registra hidratação, React Query e guarda de autenticação.src/providers/AuthGuardProvider.tsx controla sessão, refresh de token e redirecionamentos.src/api/utils/api.ts centraliza chamadas HTTP, headers, idioma, timezone e token.src/app/(private) usam components, stores e hooks para consumir a API.| Caminho | Finalidade |
|---|---|
/login | Autenticação dos usuários administrativos. |
/ | Área inicial privada do painel. |
/calendar | Visualização do calendÁrio paroquial. |
/calendar/add-event-schedule | Cadastro de evento no calendário. |
/calendar/event-schedule/[id]/edit | Edição de evento do calendário. |
/[slug] | Detalhes de uma comunidade/capela. |
/add | Cadastro de comunidade/capela. |
/[slug]/edit | Edição de comunidade/capela. |
/[slug]/add-ordinary-mass | Cadastro de missa ordinária. |
/[slug]/add-devotional-mass | Cadastro de missa devocional. |
/[slug]/add-annual-mass | Cadastro de missa anual. |
/pastorals | Área de pastorais. |
/clergies | Área de clero. |
Algumas telas em src/app/(private)/(pending-development) existem como páginas previstas para evolução futura, como blog, galeria, configurações e suporte.
O painel se comunica com o backend por meio dos módulos em src/api. Os principais grupos são:
| Modulo | Finalidade |
|---|---|
users | Login, logout e refresh de sessão. |
communities | Listagem, criação, consulta e edição de comunidades. |
communities/mass-schedules | Criacao e listagem de horários de missa por comunidade. |
mass-schedules | Edicao, exclusao e exceções de horários de missa. |
event-schedules | Criação, edição, consulta e exclusão de eventos. |
calendar | Listagem consolidada do calendário. |
attachments/images | Upload de imagens. |
A URL base da API e lida de NEXT_PUBLIC_BASE_API_URL.
Build local:
npm run build
Preview no runtime Cloudflare:
npm run preview
Deploy para staging:
npm run deploy:staging
Deploy para producao:
npm run deploy
Antes do deploy, confirme se o wrangler.jsonc aponta para os domínios corretos e se a variável NEXT_PUBLIC_BASE_API_URL foi configurada para o ambiente desejado.
Este projeto e distribuído sob a licença GNU General Public License v3.0 (GPLv3).
Consulte o arquivo LICENSE para o texto completo da licença.
Selected from shared topics, language and repository description—not editorial ratings.
FranGJ7 /
Back-end de site Ead utilizando Sequelize para interagir com banco de dados Postgres e Express criando as rotas e painel Admin. Front-End => https://github.com/FranGJ7/site-ead-front-end
CamilaDziubat /
Este é um projeto front-end desenvolvido com Vue.js e TypeScript. Ele utiliza o Vue Router para gerenciar a navegação entre diferentes vistas, incluindo um painel de controle de e-commerce, um perfil de usuário, um dashboard de tarefas e uma página de login.
ghpm99 /
Front end para o Painel Ghostz CDL
Kauanrodrigues01 /
Interface web do sistema colaborativo de monitoramento de filas dos Restaurantes Universitários. Exibe o status em tempo real de cada RU, permite o envio de relatos de fila com validação de geolocalização, e oferece um painel admin para gestão.
lfgiacomelli /
Front-end do painel administrativo da plataforma ZoomX, desenvolvido com React + Vite + TypeScript. Este painel oferece uma experiência rápida, moderna e responsiva para gestores, contando com: 📊 Dashboard completo com métricas e relatórios. 🔐 Autenticação segura e gerenciamento de permissões. 🔄 Integração total com APIs da plataforma ZoomX
ThPassos1 /
E-commerce de moda feminina (React + TypeScript + Vite + Tailwind) com vitrine, carrinho, checkout, área do cliente e painel admin — demo front-end completa para portfólio.