generated from avior/template-web-astro
Update src/pages/index.astro (#1)
All checks were successful
Build, check & Test / run (push) Successful in 1m41s
All checks were successful
Build, check & Test / run (push) Successful in 1m41s
Reviewed-on: #1
This commit is contained in:
parent
dc58e29760
commit
3fc900a1e6
@ -1,60 +1,60 @@
|
||||
---
|
||||
import { getCollection } from 'astro:content'
|
||||
import Layout from 'layouts/Layout.astro'
|
||||
import Picture from 'components/Picture.astro'
|
||||
|
||||
const projects = await getCollection('projects')
|
||||
const clients = await Promise.all((await getCollection('clients')).map(async (it) => ({...it, obj: await it.render()})))
|
||||
---
|
||||
|
||||
<Layout title="Avior.me - Developpement de solutions selon vos besoins">
|
||||
<main class="container">
|
||||
|
||||
<div class="flex justify-center items-center h-64">
|
||||
<h1 class="text-4xl font-bold">Développement de solutions selon vos besoins</h1>
|
||||
</div>
|
||||
<h2 class="text-center md:text-left text-2xl font-semibold mb-4">Projets</h2>
|
||||
<div class="md:grid grid-cols-3 gap-4">
|
||||
{projects.map((it) => (
|
||||
<a href={`/projets/${it.slug}`} class="flex flex-col gap-4 mb-6 md:mb-0">
|
||||
{it.data.image && (
|
||||
<Picture src={it.data.image} alt="" />
|
||||
)}
|
||||
<p>{it.data.title}</p>
|
||||
</a>
|
||||
))}
|
||||
</div>
|
||||
<h2 class="text-center md:text-left text-2xl font-semibold my-8">Clients</h2>
|
||||
<div class="flex flex-col gap-4">
|
||||
<div class="grid grid-cols-2 items-center">
|
||||
<div></div>
|
||||
<div class="prose dark:prose-invert max-w-none">
|
||||
<p class="font-semibold">Tâches :</p>
|
||||
</div>
|
||||
</div>
|
||||
{clients.map((client, index) => {
|
||||
const { Content } = client.obj
|
||||
client.data.logo
|
||||
return (
|
||||
<>
|
||||
{index > 0 && (
|
||||
<div class="hidden md:block w-10/12 mx-auto h-0.5 bg-gray-300 dark:bg-gray-700"></div>
|
||||
)}
|
||||
<div class="mt-6 md:mt-0 md:grid grid-cols-2 items-center">
|
||||
<a href={client.data.site} target="_blank" rel="noreferrer nofollow" class="flex flex-col gap-4">
|
||||
{client.data.logo && (
|
||||
<Picture class:list={{'mx-auto': true, 'md:mx-0': true, 'dark:invert': client.data.logo.invert}} src={client.data.logo.src} height={48} alt="" />
|
||||
) || (
|
||||
<div>{client.data.title}</div>
|
||||
)}
|
||||
</a>
|
||||
<div class="prose dark:prose-invert max-w-none">
|
||||
<Content />
|
||||
</div>
|
||||
</div>
|
||||
</>
|
||||
)
|
||||
})}
|
||||
</div>
|
||||
</main>
|
||||
</Layout>
|
||||
---
|
||||
import { getCollection } from 'astro:content'
|
||||
import Layout from 'layouts/Layout.astro'
|
||||
import Picture from 'components/Picture.astro'
|
||||
|
||||
const projects = await getCollection('projects')
|
||||
const clients = await Promise.all((await getCollection('clients')).map(async (it) => ({...it, obj: await it.render()})))
|
||||
---
|
||||
|
||||
<Layout title="Avior.me - Developpement de solutions selon vos besoins">
|
||||
<main class="container">
|
||||
|
||||
<div class="flex justify-center items-center h-64">
|
||||
<h1 class="text-4xl font-bold">Développement de solutions selon vos besoins</h1>
|
||||
</div>
|
||||
<h2 class="text-center md:text-left text-2xl font-semibold mb-4">Projets</h2>
|
||||
<div class="md:grid grid-cols-3 gap-4">
|
||||
{projects.map((it) => (
|
||||
<a href={`/projets/${it.slug}`} class="flex flex-col gap-4 mb-6 md:mb-0">
|
||||
{it.data.image && (
|
||||
<Picture src={it.data.image} alt="" />
|
||||
)}
|
||||
<p>{it.data.title}</p>
|
||||
</a>
|
||||
))}
|
||||
</div>
|
||||
<h2 class="text-center md:text-left text-2xl font-semibold my-8">Clients</h2>
|
||||
<div class="flex flex-col gap-4">
|
||||
<div class="grid grid-cols-2 items-center">
|
||||
<div></div>
|
||||
<div class="prose dark:prose-invert max-w-none">
|
||||
<p class="font-semibold">Tâches :O :</p>
|
||||
</div>
|
||||
</div>
|
||||
{clients.map((client, index) => {
|
||||
const { Content } = client.obj
|
||||
client.data.logo
|
||||
return (
|
||||
<>
|
||||
{index > 0 && (
|
||||
<div class="hidden md:block w-10/12 mx-auto h-0.5 bg-gray-300 dark:bg-gray-700"></div>
|
||||
)}
|
||||
<div class="mt-6 md:mt-0 md:grid grid-cols-2 items-center">
|
||||
<a href={client.data.site} target="_blank" rel="noreferrer nofollow" class="flex flex-col gap-4">
|
||||
{client.data.logo && (
|
||||
<Picture class:list={{'mx-auto': true, 'md:mx-0': true, 'dark:invert': client.data.logo.invert}} src={client.data.logo.src} height={48} alt="" />
|
||||
) || (
|
||||
<div>{client.data.title}</div>
|
||||
)}
|
||||
</a>
|
||||
<div class="prose dark:prose-invert max-w-none">
|
||||
<Content />
|
||||
</div>
|
||||
</div>
|
||||
</>
|
||||
)
|
||||
})}
|
||||
</div>
|
||||
</main>
|
||||
</Layout>
|
||||
|
@ -13,11 +13,11 @@ export const ALL: APIRoute = async () => {
|
||||
sitemap.addEntry('/', {
|
||||
priority: 1
|
||||
})
|
||||
sitemap.addEntry('/projets/', {
|
||||
sitemap.addEntry('/projects/', {
|
||||
priority: 0.5
|
||||
})
|
||||
for (const project of projects) {
|
||||
sitemap.addEntry('/projets/' + project.slug, {
|
||||
sitemap.addEntry('/projects/' + project.slug, {
|
||||
priority: 0.7
|
||||
})
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user