model vue postulación #10

Merged
esteban merged 6 commits from status-postulacion into main 2026-02-20 00:15:37 +00:00
22 changed files with 331 additions and 73 deletions
Showing only changes of commit 75f4e74975 - Show all commits

7
.env Normal file
View File

@ -0,0 +1,7 @@
# Archivo de variables de entorno para la configuración de Google Sheets
GOOGLE_SERVICE_ACCOUNT_EMAIL=dbsheets@dbsheets-487314.iam.gserviceaccount.com
GOOGLE_PRIVATE_KEY="-----BEGIN PRIVATE KEY-----\nMIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCi2DVTbgH5WzE4\nrsT4BLcjplwszwkiZmhUxcVma/xI/6G+LQpzWTmmETmPWGFBpPukcoEDJDIugSFF\nuiKM+cSJIJJTYYWb5sBGXC6bi36AiA3W/zuRYGoFdNP+34iqepWpXpjKY8T0bbJJ\njhIgjW/SN2fYZeVBZqLATEzRqCcPYXI5gs9fyb2bzTEjiB3kCklVCudl/JDoxAWm\nJ9vO/OOXEgt/t97v9cMoo9OZ4Y3txqiQB41UdS97btDvpezc59u+8K9s5FT+yljC\nMyfRiRM+4MpycCoJobiT8NnCaNblMTd8mkfuujrFvnT/k9O794gBOJ2sgF7AYej4\nzm9tXpknAgMBAAECggEAM50bqcngTkydGT4rqAC2m1ILPRiR6JlU0CmvG3t2hxyf\nA0v7V/wbzYsAF3MHwGquZ7zzLy+1yA+doCAS+2Pe6yeruUnbs0I8BxEIpLxd6Bc3\na8GR+833TKtu1gW7p20bKoeVHfDpaB+stquVC0RJAPQWsfv54fTJ+PE2F+2YE8Np\njhWvM4OkUNZVBPZxG+RF0gzylIx2tw3QpLN3DMSr9Z2wGfohp7yryP96qqC1RFGQ\nCsaHsPRfzv+UNinGmA0Yzv79Stuqgsg+J3V/01Pm4ANutHix/kP0YAYCyg29UtVZ\nIJZtPOAfHWICYw+hQMpcfSLWzbkUQpwTTG0Bk6xmwQKBgQDUNf226UzdAm/V2Pag\nc1YF4P6Bru1A5jiFTpyrAYPSN+Wk84Gkl8XtuDDb7zXL+MaVb8aIVXTKhM2b0RDw\nHtDayoCCXci8VfP4sDRzjEGB1O1OPOl/wPD6L94CmNB0QeepNs4Q5xD0HEsoNN6s\nZGafIkIbVVUBCkuZwNxoLVXSKQKBgQDEcnKkgE/ror9vXSj0XY9Rn0wU2W6DreUt\nMizWyH9R0wBbaSJQ/4Wd3F6co2H2DSuZgXxLJvsPlqffUivs/oZnlx8HhWi6vjLL\nvSiqNC1D+Bh5TT7PEonENU99lruKtZfKcMpRtVF6WycW5ZlYok4lRCEBBvbjtGgr\nIHnqc8WazwKBgD0oHilDjQI4fJBtiY3uD0F8ePxYtEk6z9kjMaVat2my8DycbKVJ\nlCIRLguEIcXZuSlB4D5UGmdu5G5eTvpUdy5Go8huTLZyMvBdn5AZQJuxCH6+sTA/\nI3OGrf2jmpeWkrPCdpqKbOlc6g/5RJ78BFMiJVkJO4kkNWtnGF3xisUZAoGAJ8VT\n2GHxzC7CuvUNWYunfErXyFDMwvPttdy2nzUwMYyaQedi/yr8Dh2TOfsJ1hqMfSNt\n2nkl0t4ZVmj4Y56T71z09zzXGxduiTjehrbRgzUzHzu4P4vtQD/au/5MMaTZ+i4j\nh69Bs5fIriYFiaAyWfEVDXQvf6IChNiqVgDiPJkCgYEAooIiW4HHVUNGMnIeB7UI\nBXv5gSs2heHYSmEK+Er7In5cfJQzkcJvwiOMfOPCNuwVPn+ow5IN8le1acDon5I2\n0OsXhWmgyg9zmgguj273mH3h6+o6XTg5GrEYgPVpU3m2dJkd05oWhQvzy7/OxHs8\nE4ZMz97uqmU2r8XJCo//tv8=\n-----END PRIVATE KEY-----\n"
GOOGLE_SHEET_ID=12X6qeU0W4ZDw00vS4OreyC4nFjKBeBYo7rq3wyRsrNQ
# Archivo de variables de entorno para la configuración de envío de emails
EMAIL_API_KEY=9UShpS8oh5Iun92TJSfevElI3Lp99TCv

3
.gitignore vendored
View File

@ -14,8 +14,7 @@ pnpm-debug.log*
# environment variables # environment variables
.env .env.keys
.env.production
# macOS-specific files # macOS-specific files
.DS_Store .DS_Store

View File

@ -1,4 +1,6 @@
--- ---
import { ClientRouter } from "astro:transitions";
import { GoogleAnalytics } from 'astro-google-analytics'; import { GoogleAnalytics } from 'astro-google-analytics';
const { title = "Centro del Reino de Paz y Justicia", description = "" } = const { title = "Centro del Reino de Paz y Justicia", description = "" } =
Astro.props; Astro.props;
@ -14,3 +16,4 @@ const { title = "Centro del Reino de Paz y Justicia", description = "" } =
<title>{title}</title> <title>{title}</title>
<meta name="description" content={description} /> <meta name="description" content={description} />
</head> </head>
<ClientRouter />

View File

@ -5,6 +5,9 @@ import { Icon } from "astro-icon/components";
import { createTranslator } from "../i18n/index.ts"; import { createTranslator } from "../i18n/index.ts";
const tl = createTranslator(Astro.currentLocale); const tl = createTranslator(Astro.currentLocale);
const currentLocale = Astro.currentLocale; const currentLocale = Astro.currentLocale;
const { locale } = Astro.params;
--- ---
<div> <div>
@ -18,9 +21,9 @@ const currentLocale = Astro.currentLocale;
class="flex justify-evenly gap-10 items-center uppercase text-md text-white" class="flex justify-evenly gap-10 items-center uppercase text-md text-white"
> >
<div class="hidden md:flex gap-8 font-primary font-bold"> <div class="hidden md:flex gap-8 font-primary font-bold">
<a class="hover:text-colorPrimary transition" href="#somos">{tl("nav.about")}</a> <a class="hover:text-colorPrimary transition" href=`/${locale}#somos`>{tl("nav.about")}</a>
<a class="hover:text-colorPrimary transition" href="#programs">{tl("nav.programs")}</a> <a class="hover:text-colorPrimary transition" href=`/${locale}#programs`>{tl("nav.programs")}</a>
<a class="hover:text-colorPrimary transition" href="#news">{tl("nav.news")}</a> <a class="hover:text-colorPrimary transition" href=`/${locale}#news`>{tl("nav.news")}</a>
</div> </div>
<div class="drawer lg:hidden"> <div class="drawer lg:hidden">
<input id="my-drawer-1" type="checkbox" class="drawer-toggle" /> <input id="my-drawer-1" type="checkbox" class="drawer-toggle" />
@ -51,7 +54,7 @@ const currentLocale = Astro.currentLocale;
<div class="dropdown mt-10"> <div class="dropdown mt-10">
<div tabindex="0" role="button" class="btn-ghost m-1 cursor-pointer"><Icon name="ph:translate" class="text-2xl" /></div> <div tabindex="0" role="button" class="btn-ghost m-1 cursor-pointer"><Icon name="ph:translate" class="text-2xl" /></div>
<ul tabindex="-1" class="dropdown-content text-tertiary text-lg bg-colorPrimary menu z-1 w-52 p-2 shadow-sm"> <ul tabindex="-1" class="dropdown-content text-tertiary text-lg bg-colorPrimary menu z-1 w-52 p-2 shadow-sm">
<li><a href="/es">🇪🇸 Espanol</a></li> <li><a href="/es">🇪🇸 Español</a></li>
<li><a href="/en">🇬🇧 English</a></li> <li><a href="/en">🇬🇧 English</a></li>
</ul> </ul>
</div> </div>
@ -64,7 +67,7 @@ const currentLocale = Astro.currentLocale;
<div class="dropdown dropdown-end lg:block hidden"> <div class="dropdown dropdown-end lg:block hidden">
<div tabindex="0" role="button" class="btn-ghost m-1 cursor-pointer"><Icon name="ph:translate" class="text-2xl" /></div> <div tabindex="0" role="button" class="btn-ghost m-1 cursor-pointer"><Icon name="ph:translate" class="text-2xl" /></div>
<ul tabindex="-1" class="dropdown-content text-tertiary text-lg bg-colorPrimary menu z-1 w-52 p-2 shadow-sm"> <ul tabindex="-1" class="dropdown-content text-tertiary text-lg bg-colorPrimary menu z-1 w-52 p-2 shadow-sm">
<li><a href="/es">🇪🇸 Espanol</a></li> <li><a href="/es">🇪🇸 Español</a></li>
<li><a href="/en">🇬🇧 English</a></li> <li><a href="/en">🇬🇧 English</a></li>
</ul> </ul>
</div> </div>

View File

@ -3,13 +3,15 @@ import { Image } from "astro:assets"
import { Icon } from "astro-icon/components"; import { Icon } from "astro-icon/components";
import "dayjs/locale/es"; import "dayjs/locale/es";
import dayjs from "dayjs"; import dayjs from "dayjs";
import utc from "dayjs/plugin/utc";
const regionNames = new Intl.DisplayNames(['es'], { type: 'region' }); const regionNames = new Intl.DisplayNames(['es'], { type: 'region' });
const { locale } = Astro.params;
const locale = Astro.currentLocale;
dayjs.extend(utc);
dayjs.locale(locale); dayjs.locale(locale);
const { data } = Astro.props; const { data } = Astro.props;
const nicedate = dayjs(data.data.date).format("D MMMM YYYY"); const nicedate = dayjs.utc(data.data.date).format("D MMMM YYYY");
const countryName = regionNames.of(data.data.country); const countryName = regionNames.of(data.data.country);
--- ---

View File

@ -1,5 +1,5 @@
--- ---
import { Image } from "astro:assets" import { Image } from "astro:assets";
import "swiper/css"; import "swiper/css";
import "swiper/css/navigation"; import "swiper/css/navigation";
import "swiper/css/pagination"; import "swiper/css/pagination";
@ -20,7 +20,11 @@ const { images, class: className } = Astro.props;
{image.text} {image.text}
</div> </div>
)} )}
<img class="w-full h-full object-cover object-center" src={image.image} alt={image.text} /> <img
class="w-full h-full object-cover object-center"
src={image.image}
alt={image.text}
/>
</div> </div>
</div> </div>
)) ))
@ -43,26 +47,35 @@ const { images, class: className } = Astro.props;
<script> <script>
import Swiper from "swiper"; import Swiper from "swiper";
import { Navigation, Pagination, Scrollbar } from 'swiper/modules'; import { Navigation, Pagination, Scrollbar } from "swiper/modules";
const swiper = new Swiper(".swiper", {
// Optional parameters
modules: [Navigation, Pagination, Scrollbar],
loop: true,
// If we need pagination // Re-initialize after every page swap via View Transitions
pagination: { document.addEventListener("astro:after-swap", init);
el: ".swiper-pagination",
},
// Navigation arrows function init() {
navigation: { const swiper = new Swiper(".swiper", {
nextEl: ".swiper-button-next", // Optional parameters
prevEl: ".swiper-button-prev", modules: [Navigation, Pagination, Scrollbar],
}, loop: true,
// And if we need scrollbar // If we need pagination
scrollbar: { pagination: {
el: ".swiper-scrollbar", el: ".swiper-pagination",
}, },
});
// Navigation arrows
navigation: {
nextEl: ".swiper-button-next",
prevEl: ".swiper-button-prev",
},
// And if we need scrollbar
scrollbar: {
el: ".swiper-scrollbar",
},
});
}
// Initialize on the first page load
init();
</script> </script>

View File

@ -3,6 +3,7 @@ import { Icon } from "astro-icon/components";
import { Image } from "astro:assets"; import { Image } from "astro:assets";
import jbp from "../../assets/DRJBP-1.webp"; import jbp from "../../assets/DRJBP-1.webp";
import FormContact from "./FormContact.vue"; import FormContact from "./FormContact.vue";
import { createTranslator, t } from '../../i18n'; import { createTranslator, t } from '../../i18n';
const tl = createTranslator(Astro.currentLocale); const tl = createTranslator(Astro.currentLocale);
--- ---

View File

@ -2,7 +2,6 @@
import { getCollection, getEntry } from "astro:content"; import { getCollection, getEntry } from "astro:content";
import NewsCard from "../cards/NewsCard.astro"; import NewsCard from "../cards/NewsCard.astro";
const newsItems = await getCollection("news", (post)=>{ const newsItems = await getCollection("news", (post)=>{
//Filter by locale
const currentLocale = Astro.currentLocale; const currentLocale = Astro.currentLocale;
return post.data.locale == currentLocale return post.data.locale == currentLocale
}); });
@ -21,10 +20,14 @@ const tl = createTranslator(Astro.currentLocale);
<div class="grid md:grid-cols-2 lg:grid-cols-3 md:gap-10 gap-20"> <div class="grid md:grid-cols-2 lg:grid-cols-3 md:gap-10 gap-20">
{ {
newsItems.map((item) => ( [...newsItems] // copiamos para no mutar el original
<NewsCard data={item} /> .sort((a, b) =>
)) new Date(b.data.date).getTime() - new Date(a.data.date).getTime()
} )
.map((item) => (
<NewsCard data={item} />
))
}
</div> </div>
</div> </div>
</div> </div>

View File

@ -4,18 +4,19 @@ import { z } from 'astro/zod';
const news = defineCollection({ const news = defineCollection({
loader: glob({ pattern: "**/*.md", base: "./src/content/news" }), loader: glob({ pattern: "**/*.md", base: "./src/content/news" }),
schema: z.object({ schema: ({ image }) => z.object({
locale: z.string(), locale: z.string().describe("News main language"),
title: z.string(), title: z.string(),
date: z.date(), date: z.date(),
draft: z.boolean().optional(),
place: z.string().optional(), place: z.string().optional(),
city: z.string().optional(), city: z.string().optional(),
state: z.string().optional(), state: z.string().optional(),
country: z.string().optional(), country: z.string().optional(),
thumbnail: z.string().optional(), thumbnail: image().optional().describe("Main news thumbnail image"),
youtube: z.string().optional(), youtube: z.string().optional(),
gallery: z.array(z.object({ gallery: z.array(z.object({
image: z.string().optional(), image: image().optional(),
text: z.string().optional() text: z.string().optional()
})).optional().nullable() })).optional().nullable()
}), }),

View File

@ -1,11 +1,55 @@
--- ---
locale: en locale: en
title: 'A news article in english' title: 'A New Son for Jacareí: The Tribute to Dr. José Benjamín Pérez Matos'
date: 2025-09-18 slug: a-new-son-for-jacarei-the-tribute-to-dr-jose-benjamin-perez-matos
slug: 2025-09-18-a-news-article-in-english date: 2025-09-05
place: The basement place: The basement
city: Cota city: Jacareí
country: CO country: BR
thumbnail: https://ik.imagekit.io/crpy/tr:w-600/Condecoracion-JBP-congreso-18-sep-2025_-15-scaled.jpg thumbnail: https://ik.imagekit.io/crpy/tr:w-900/2025-09-04-19.53.04.jpg?updatedAt=1770780193361
gallery: [
{
image: 'https://ik.imagekit.io/crpy/tr:w-1280/2025-09-04-19.53.04.jpg?updatedAt=1770780193361',
}
]
--- ---
Some dummy news content in here
The city of Jacareí, in the state of São Paulo, Brazil, woke up with a different atmosphere, as if its streets—dressed in history, trees and palm trees—knew that someone special was coming to wander them, not as a tourist, but as a future adopted son.
At around 1:15 p.m. on Friday the 29th of August, Dr. José Benjamín Pérez Matos, accompanied by his wife and an entourage, made his first stop at the imposing City Hall building (Prefeitura Municipal), the beating heart of local executive power.
He was received there by Lucas Torralbo, director of Commerce and Services of Jacareí, who also introduced himself as a pastor and man of faith. Despite the barriers of translation, his words reflected sincere admiration for the prosperity of the visitors ministry, especially upon learning of the activities in which he has managed to draw crowds. He also expressed his enthusiasm and excitement at the possibility of organizing a public event in the city in the near future.
Minutes later, after the arrival of Mayor Celso Florêncio, the cheerful formal greetings gave way to an immediate entrance into his private office. The space, discreet and representative, conveyed the seriousness of power exercised with responsibility. In this setting, Dr. José Benjamín recognized the work of those who, elected by popular vote, work on behalf of the people, and emphasized the importance of leaders always seeking divine guidance.
“May God guide you in seeking wisdom from above, as Daniel did in the time of King Nebuchadnezzar. It is a blessing for me to be in the presence of one of the leaders who is ministering in this position in this place. Therefore, I ask God for His blessing upon you to guide you in everything. And thank you for the welcome and hospitality you have given me. I am now a Jacareiense, so it is as if this were my home.”
The mayor didnt stay behind. He welcomed him warmly—not only him, but all those who accompanied him. In his words, he gratefully acknowledged the Churchs mission as a transforming agent.
“It is a pleasure for us to have you here with us. I know about that great work in our city... —so you are now a citizen of Jacareí—. Our doors are always open to you and all those who accompany you,” he concluded warmly.
The meeting ended with a serene and profound prayer by Dr. José Benjamín, who lifted up the names and decisions to Heaven. He asked for wisdom, protection, and peace, so that Jacareí would not only be a city among many, but a beacon for the rest of the country. A sincere embrace between the two leaders sealed what the words had already sown.
**Jacareí Gains a Son and an Ambassador**
A few meters away, the second act awaited. The Câmara Municipal of Jacareí, seat of the legislative branch, welcomed Dr. Pérez Matos at 1:30 p.m. in the Vereador Djalma DAvila Leal auditorium. Councilwoman Maria Amélia was waiting for him there, who at that moment was giving statements to the local news program TV Câmara:
“Since he was coming to Brazil, we immediately placed this proposal up for vote at home. All the governors approved it, and today we are here to make this symbolic presentation, because on his next visit to Brazil we intend to make this official presentation.”
The councilwoman not only greeted him with a warm hug upon seeing him, but also paid him a special tribute by including part of her speech in Spanish—a language she confessed she had not yet mastered—while two of her colleagues took their seats at the main table along with the guests of honor.
“We prepared it with great affection,” she said, visibly moved, as she presented him with the title of Citizen of Jacareí.
Then, a handmade gift with the inscription “I love Jacareí” brought a broad and sincere smile to the honorees face; and finally, two artistic mugs: one illustrated with tourist landscapes and the other with images of the Museum of Anthropology, created by local artisans. A piece of the city, literally placed in his hands.
The response was immediate: With an emotional and firm voice, the doctor commented:
“I appreciate the hospitality, the welcome, and the fact that you have granted me the title of a Jacareiense citizen. I will carry this honor with me, and you will experience that a Jacareiense is traveling the world, placing Jacareí up high… In other words, I will also be an ambassador for Jacareí in the world.”
The ceremony closed with a prayer quoting chapter 6 of the book of Numbers, invoking Gods blessing upon the leaders, the city, and its inhabitants, just as it was bestowed upon Israel in the past. It was a plea for discernment for those who legislate, so that their decisions may be aligned with the common good and with Heaven.
In the end, before the local press, Dr. José Benjamín summed up his feelings with a phrase that joined identity and gratitude:
“Being a citizen of a city where you were not born is a joy, because there is one more place where you can become familiar with the culture and everything related to that city. I feel very honored to be a Jacareiense.”
Thus concluded the visit to a city that opened its doors to a visitor who became a son. Since the age of 22, Dr. Pérez Matos has traveled throughout Brazil accompanying the Word of God. And today he adds Jacareí as a place he can call “home.”

53
src/content/news/en/2.md Normal file
View File

@ -0,0 +1,53 @@
---
locale: en
title: 'Awarding of decoration: Order of Democracy Simón Bolívar'
date: 2025-05-08
slug: awarding-of-decoration-order-of-democracy-simon-bolivar
city: Bogotá
country: CO
thumbnail: https://ik.imagekit.io/crpy/tr:w-900/JBP-CONDECORACION-25.webp?updatedAt=1770780239998
gallery: [
{
image: 'https://ik.imagekit.io/crpy/tr:w-1280/JBP-CONDECORACION-16.webp',
},
{
image: 'https://ik.imagekit.io/crpy/tr:w-1280/JBP-CONDECORACION-05.webp',
},
{
image: 'https://ik.imagekit.io/crpy/tr:w-1280/JBP-CONDECORACION-22.webp',
},
{
image: 'https://ik.imagekit.io/crpy/tr:w-1280/JBP-CONDECORACION-04.webp',
},
{
image: 'https://ik.imagekit.io/crpy/tr:w-1280/JBP-CONDECORACION-25.webp'
}
]
---
**Thursday, May 8, 2025
Bogotá, Colombia**
(Second activity)
**Awarding of decoration: Order of Democracy Simón Bolívar**
Dr. Jose Benjamin Perez Matos
[The Order of Democracy Simón Bolívar, in the rank of Officer's Cross, is an official Colombian distinction awarded by the House of Representatives to citizens who have distinguished themselves in service to their country. It is a civil honor that recognizes the efforts, loyalty, and virtues of individuals or institutions that have contributed to democracy. The order was created in 1980 and has been awarded to a variety of figures and entities from the educational, scientific, military, civil, and political spheres, among others.]
Good afternoon to all. I thank my heavenly Father from the bottom of my heart for the opportunity and privilege of being in this room, the headquarters of this nations democracy.
I would also like to thank the House of Representatives of the Congress of the Republic of Colombia, through the honorable representative of the House, Jhon Jairo Berrio Lopez, for the recognition that I have been awarded with today, titled: Orden de la Democracia Simón Bolívar [Order of Democracy Simón Bolívar] in the Officers Cross rank.
I am thankful for this recognition, and I would like to reiterate my commitment to continue in the constant work of teaching for building and strengthening the values of the integral human being; being aware that the prosperity and the peace of nations is built on the respect of the truth, justice and solidarity.
The Great Tent Cathedral, more than an architectural project in Cayey, Puerto Rico, with a captivating infrastructure and physical dimensions (meaning, something impressive), it is the fulfillment, the reality, of a Divine Vision, where thousands of people receive the Teaching that nourishes their souls, and responds to the existential distress of the human being; in other words, it is the reality of a vision; which is no longer past, but present; its alive, tangible.
May God bless Colombia, the Congress of the Republic and its other bodies of government!; and may the spiritual peace and physical peace be upon each one of you. And may He guide your members with the true Light, so that you continue to work for the wellbeing and peace of the community, the development of this nation: the beautiful Colombia.
May you continue making all efforts at your disposal for the improvement of this country, which has the potential to transcend all of Latin America. May it be, as I recently said: a door for all of Latin America.
I will continue to bring this Message of love to your neighbor, and of strengthening and respecting the values of the human being; such as: faith, solidarity, ethics, truth, justice and peace.
May the peace of the God of Abraham, of Isaac and Israel, dwell in your hearts. Thank you very much.

View File

@ -7,7 +7,7 @@ place: ''
city: 'San Juan Chamula' city: 'San Juan Chamula'
state: 'Chiapas' state: 'Chiapas'
country: 'MX' country: 'MX'
thumbnail: https://ik.imagekit.io/crpy/tr:w-600/photo_2026-01-18_09-07-31.jpg thumbnail: https://ik.imagekit.io/crpy/tr:w-900/photo_2026-01-18_09-07-31.jpg
--- ---
San Juan Chamula, Chiapas — Entre montañas cubiertas de neblina y tradiciones ancestrales que siguen vivas en cada rincón, el viernes 4 de octubre de 2024 esta comunidad indígena se convirtió en un escenario de encuentro y esperanza con la visita del doctor José Benjamín Pérez Matos. San Juan Chamula, Chiapas — Entre montañas cubiertas de neblina y tradiciones ancestrales que siguen vivas en cada rincón, el viernes 4 de octubre de 2024 esta comunidad indígena se convirtió en un escenario de encuentro y esperanza con la visita del doctor José Benjamín Pérez Matos.

View File

@ -7,7 +7,7 @@ place: 'Cámara de Representantes'
city: 'Bogotá' city: 'Bogotá'
state: 'Distrito Capital' state: 'Distrito Capital'
country: 'CO' country: 'CO'
thumbnail: https://ik.imagekit.io/crpy/tr:w-600/JBP-CONDECORACION-25.webp thumbnail: https://ik.imagekit.io/crpy/tr:w-900/JBP-CONDECORACION-25.webp
youtube: https://www.youtube.com/watch?v=ENQE4stFb4A youtube: https://www.youtube.com/watch?v=ENQE4stFb4A
gallery: [ gallery: [
{ {

View File

@ -6,7 +6,7 @@ slug: 2025-08-29-un-nuevo-hijo-para-jacarei
place: '' place: ''
city: Jacareí city: Jacareí
country: BR country: BR
thumbnail: https://ik.imagekit.io/crpy/tr:w-600/2025-09-04-19.53.04.jpg thumbnail: https://ik.imagekit.io/crpy/tr:w-900/2025-09-04-19.53.04.jpg
--- ---
La ciudad de Jacareí, en el estado de São Paulo, Brasil, amaneció con un aire distinto, como si sus calles —vestidas de historia, árboles y palmeras— supieran que alguien especial venía a recorrerlas no como turista, sino como futuro hijo adoptivo. La ciudad de Jacareí, en el estado de São Paulo, Brasil, amaneció con un aire distinto, como si sus calles —vestidas de historia, árboles y palmeras— supieran que alguien especial venía a recorrerlas no como turista, sino como futuro hijo adoptivo.

View File

@ -6,7 +6,7 @@ slug: 2025-09-18-la-democracia-se-vistio-de-gala
place: Congreso de Colombia place: Congreso de Colombia
city: Bogotá city: Bogotá
country: CO country: CO
thumbnail: https://ik.imagekit.io/crpy/tr:w-600/Condecoracion-JBP-congreso-18-sep-2025_-15-scaled.jpg thumbnail: https://ik.imagekit.io/crpy/tr:w-900/Condecoracion-JBP-congreso-18-sep-2025_-15-scaled.jpg
--- ---
En el imponente Salón Elíptico del Capitolio Nacional, recinto donde se escriben las páginas más solemnes de la vida republicana, el 18 de septiembre se vivió una jornada marcada por la solemnidad, los símbolos y el reconocimiento. Hacia las 10 de la mañana, bajo la cúpula que resguarda la sede del poder legislativo colombiano, se le impuso al doctor José Benjamín Pérez Matos, pastor y conferencista internacional, dos de las más altas distinciones que otorgan Senado y Cámara de Representantes. En el imponente Salón Elíptico del Capitolio Nacional, recinto donde se escriben las páginas más solemnes de la vida republicana, el 18 de septiembre se vivió una jornada marcada por la solemnidad, los símbolos y el reconocimiento. Hacia las 10 de la mañana, bajo la cúpula que resguarda la sede del poder legislativo colombiano, se le impuso al doctor José Benjamín Pérez Matos, pastor y conferencista internacional, dos de las más altas distinciones que otorgan Senado y Cámara de Representantes.

View File

@ -0,0 +1,40 @@
---
locale: es
title: 'III Congreso Internacional de Rabinos en Puerto Rico'
date: 2026-02-13
slug: 2026-02-13-congreso-internacional-de-rabinos-en-puerto-rico
city: San Juan
country: PR
thumbnail: ' https://ik.imagekit.io/crpy/tr:w-900/Viernes-3.webp'
gallery: [
{
image: 'https://ik.imagekit.io/crpy/tr:w-1280/Viernes-1.webp',
},
{
image: 'https://ik.imagekit.io/crpy/tr:w-1280/Viernes-3.webp',
},
{
image: 'https://ik.imagekit.io/crpy/tr:w-1280/Viernes.webp',
},
{
image: 'https://ik.imagekit.io/crpy/tr:w-1280/Viernes-2.webp',
},
]
---
**Líderes religiosos de cuatro continentes se reunieron para abordar diálogo intercultural, formación comunitaria y cooperación internacional**
El viernes 13 de febrero de 2026 comenzó en Puerto Rico el III Congreso Internacional de Rabinos, un encuentro que reunió a líderes religiosos y referentes comunitarios provenientes de Israel, Filipinas, Australia, Canadá, Argentina, Uruguay, Guatemala, El Salvador, India y Kenia.
La convocatoria tuvo como eje central el fortalecimiento del diálogo intercultural, la formación de liderazgo comunitario y la articulación de redes internacionales con impacto social.
La apertura formal se realizó durante la bienvenida al Shabat, en un primer encuentro encabezado por el Dr. José Benjamín Pérez Matos, presidente del Centro del Reino de Paz y Justicia, junto al Eliahu Birnbaum, director de los institutos Straus-Amiel y Beren-Amiel, pertenecientes a la red Ohr Torah Stone.
Durante la jornada inaugural se destacó la importancia de generar espacios de cooperación entre comunidades judías de contextos geográficos y culturales diversos. Los participantes coincidieron en la necesidad de promover iniciativas educativas, fortalecer la identidad comunitaria en la diáspora y consolidar vínculos institucionales que trasciendan fronteras.
El congreso se estructuró en paneles de estudio, sesiones de intercambio de experiencias y mesas de trabajo orientadas a analizar desafíos contemporáneos que enfrentan las comunidades religiosas en distintos países, incluyendo la formación de nuevas generaciones, la preservación de tradiciones y la interacción con entornos sociales plurales.
La presencia de delegaciones provenientes de Asia, América Latina, Oceanía y África otorgó al encuentro un carácter global, evidenciando la diversidad de realidades en las que se desarrolla la vida comunitaria judía en la actualidad.
Desde la organización se subrayó que el objetivo principal del congreso fue consolidar una plataforma de colaboración sostenida, que permita compartir buenas prácticas, coordinar acciones educativas y fortalecer la representación institucional en distintos ámbitos internacionales.
El III Congreso Internacional de Rabinos concluyó su primera jornada con actividades litúrgicas y espacios de intercambio informal, sentando las bases para un programa de trabajo que continuará desarrollándose en los próximos días con enfoque académico, comunitario y social.

View File

@ -0,0 +1,53 @@
---
locale: es
title: 'Apertura oficial del III Congreso Internacional de Rabinos en Puerto Rico'
date: 2026-02-15
slug: 2026-02-15-apertura-oficial-del-iii-congreso-internacional-rabinos-en-puerto-rico
city: San Juan
country: PR
thumbnail: https://ik.imagekit.io/crpy/tr:w-900/2026_02_15_congreso8.webp
gallery: [
{
image: 'https://ik.imagekit.io/crpy/tr:w-1280/2026_02_15_congreso8.webp',
},
{
image: 'https://ik.imagekit.io/crpy/tr:w-1280/2026_02_15_congreso9.webp',
},
{
image: 'https://ik.imagekit.io/crpy/tr:w-1280/2026_02_15_congreso7.webp',
},
{
image: 'https://ik.imagekit.io/crpy/tr:w-1280/2026_02_15_congreso6.webp',
},
{
image: 'https://ik.imagekit.io/crpy/tr:w-1280/2026_02_15_congreso5.webp',
},
{
image: 'https://ik.imagekit.io/crpy/tr:w-1280/2026_02_15_congreso4.webp',
},
{
image: 'https://ik.imagekit.io/crpy/tr:w-1280/2026_02_15_congreso3.webp',
},
{
image: 'https://ik.imagekit.io/crpy/tr:w-1280,h-720,cm-pad_resize/2026_02_15_congreso2.webp',
},
{
image: 'https://ik.imagekit.io/crpy/tr:w-1280/2026_02_15_congreso1.webp',
},
]
---
**El encuentro reunió a referentes educativos y comunitarios de distintos países para fortalecer redes institucionales y promover el intercambio académico**
El domingo 15 de febrero de 2026 se realizó la apertura oficial del III Congreso Internacional de Rabinos en Puerto Rico, consolidando el inicio formal de una agenda académica y de trabajo que convoca a líderes religiosos y educativos de diferentes regiones del mundo.
Durante la sesión inaugural se destacó que el congreso busca trascender el formato tradicional de conferencias para constituirse en un espacio de articulación institucional, intercambio de experiencias y fortalecimiento de vínculos entre comunidades. En ese marco, el Dr. José Benjamín Pérez Matos —presidente del Centro del Reino de Paz y Justicia— subrayó la importancia de que el encuentro funcione como instancia de reencuentro y cooperación sostenida, más allá de los paneles y exposiciones programadas.
En su intervención, hizo referencia al valor formativo de la tradición bíblica y a la dimensión universal de ciertos principios espirituales vinculados a la responsabilidad ética y la proyección internacional de las comunidades. Asimismo, invitó a los participantes a orientar el trabajo del congreso hacia el fortalecimiento del aprendizaje profundo, el diálogo respetuoso y la construcción de redes colaborativas.
También dirigieron palabras a los presentes el rabino Eliahu Birnbaum, director de los institutos Straus-Amiel y Beren-Amiel, y Yinon Ahiman, director general de la red Ohr Torah Stone, quienes resaltaron el papel de la formación rabínica contemporánea frente a los desafíos sociales y culturales actuales.
La primera jornada incluyó paneles académicos con la participación del Dr. Roi Abecassis, jefe del Departamento de Educación de la Organización Sionista Mundial; del rabino Dorón Pérez, presidente de dicha organización —quien intervino mediante mensaje en video—; y del rabino Dr. Katriel Kenneth Brander, presidente y director de las instituciones Ohr Torah Stone.
El evento contó además con la presencia institucional del rabino Moshé Bakshi-Dorón, director general de la Yeshivat Yesod HaTorah.
Con una agenda centrada en educación, liderazgo comunitario y cooperación internacional, el III Congreso Internacional de Rabinos se proyecta como una plataforma de articulación global orientada a consolidar vínculos entre instituciones y promover iniciativas conjuntas en el ámbito formativo y social.

View File

@ -0,0 +1,22 @@
---
locale: es
title: 'Cierre del III Congreso Internacional de Rabinos en Puerto Rico'
date: 2026-02-17
slug: 2026-02-17-cierre-del-iii-congreso-internacional-rabinos-en-puerto-rico
city: San Juan
country: PR
thumbnail: ''
---
**La jornada final incluyó una visita institucional a La Gran Carpa Catedral, una conferencia académica y la entrega del Premio Amiel 2026**
El lunes 16 de febrero de 2026 se llevó a cabo la jornada de cierre del III Congreso Internacional de Rabinos con una visita institucional a La Gran Carpa Catedral, en Puerto Rico.
La actividad reunió a más de cincuenta rabinos provenientes de distintos países, junto a sus familias, en un encuentro orientado a consolidar los vínculos generados durante los días de trabajo académico y comunitario.
En el marco del programa, el Dr. José Benjamín Pérez Matos ofreció una conferencia dirigida a los participantes, en la que abordó reflexiones vinculadas al liderazgo comunitario y a los desafíos contemporáneos que enfrentan las instituciones religiosas en contextos internacionales diversos.
Durante la misma jornada se realizó la entrega del Premio Amiel 2026, distinción otorgada en reconocimiento a la labor institucional desarrollada en el ámbito educativo y comunitario. La entrega fue realizada por el rabino Eliahu Birnbaum y por el rabino Dr. Katriel Kenneth Brander, presidente y director de las instituciones Ohr Torah Stone, quien dirigió unas palabras alusivas al significado del reconocimiento.
El encuentro concluyó con una cena de gala que funcionó como espacio de intercambio informal y fortalecimiento de relaciones institucionales, permitiendo cerrar el congreso en un clima de colaboración y proyección conjunta.
Con esta última jornada, el III Congreso Internacional de Rabinos culminó su agenda 2026 consolidando una red internacional orientada a la cooperación educativa, el diálogo intercultural y la articulación sostenida entre comunidades de distintos continentes.

View File

@ -194,7 +194,7 @@
"footer.text2": "Email: <br> <strong>developer@centrodelreinodepazyjusticia.com</strong><br /> Social media: regular updates on events and announcements.", "footer.text2": "Email: <br> <strong>developer@centrodelreinodepazyjusticia.com</strong><br /> Social media: regular updates on events and announcements.",
"footer.form.name": "Name and Lastname", "footer.form.name": "Name and Lastname",
"footer.form.mesagge": "Write a message", "footer.form.mesagge": "Write a message",
"footer.form.button": "Enviar", "footer.form.button": "Send",
"footer.reserved": "©2026 All Rights Reserved. Kingdom of Peace and Justice Center" "footer.reserved": "©2026 All Rights Reserved. Kingdom of Peace and Justice Center"
} }

View File

@ -2,21 +2,19 @@
import BaseHead from "../components/BaseHead.astro"; import BaseHead from "../components/BaseHead.astro";
import Footer from "../components/Footer.astro"; import Footer from "../components/Footer.astro";
import "../styles/global.css"; import "../styles/global.css";
import '@fontsource/poppins/100.css'; import "@fontsource/poppins/100.css";
import '@fontsource/poppins/400.css'; import "@fontsource/poppins/400.css";
import '@fontsource/poppins/500.css'; import "@fontsource/poppins/500.css";
import '@fontsource/poppins/700.css'; import "@fontsource/poppins/700.css";
import '@fontsource-variable/kameron'; import "@fontsource-variable/kameron";
const { title } = Astro.props; const { title } = Astro.props;
--- ---
<html lang="en" class="scroll-smooth"> <html lang="en" class="scroll-smooth">
<BaseHead title={title} /> <BaseHead title={title} />
<body class="font-primary"> <body class="font-primary">
<article> <slot />
<slot /> <Footer />
</article> </body>
<Footer />
</body>
</html> </html>

View File

@ -16,9 +16,24 @@ export async function getStaticPaths() {
props: { post }, props: { post },
})); }));
} }
const { locale } = Astro.params;
// 2. For your template, you can get the entry directly from the prop // 2. For your template, you can get the entry directly from the prop
const { post } = Astro.props; const { post } = Astro.props;
const { Content } = await render(post); const { Content } = await render(post);
const routeTranslations = {
news: {
es: "noticias",
en: "news",
fr: "actualites",
pt: "noticias",
de: "nachrichten",
}
};
const baseSlug = routeTranslations.news[locale] || routeTranslations.news.en;
--- ---
<MainLayout> <MainLayout>
@ -29,7 +44,7 @@ const { Content } = await render(post);
<TitleSection title={post.data.title} /> <TitleSection title={post.data.title} />
<div class="container mx-auto"> <div class="container mx-auto">
{post.data.gallery && <CarouselSection images={post.data.gallery} />} {post.data.gallery?.length ? ( <CarouselSection images={post.data.gallery} />) : post.data.thumbnail ? (<Image src={post.data.thumbnail} alt="" /> ) : null}
<div class="grid md:grid-cols-10"> <div class="grid md:grid-cols-10">
<div class="md:col-span-7 bg-white p-8 md:p-20 prose-p:mb-4 text-[#003421]"> <div class="md:col-span-7 bg-white p-8 md:p-20 prose-p:mb-4 text-[#003421]">
<Content /> <Content />

View File

@ -1,13 +1,14 @@
{ {
"extends": "astro/tsconfigs/strict", "extends": "astro/tsconfigs/strict",
"include": [ "include": [".astro/types.d.ts", "**/*"],
".astro/types.d.ts", "exclude": ["dist"],
"**/*"
],
"exclude": [
"dist"
],
"compilerOptions": { "compilerOptions": {
"jsx": "preserve" "baseUrl": ".",
"paths": {
"@/*": ["src/*"],
"@assets/*": ["src/assets/*"],
"@components/*": ["src/components/*"],
"@layouts/*": ["src/layouts/*"]
}
} }
} }