Components folder refactoring
This commit is contained in:
@ -4,16 +4,16 @@ import { getImage } from "@astrojs/image";
|
|||||||
const { src: defaultImage } = await getImage({
|
const { src: defaultImage } = await getImage({
|
||||||
src: import("~/assets/images/default.png"),
|
src: import("~/assets/images/default.png"),
|
||||||
width: 1200,
|
width: 1200,
|
||||||
height: 628
|
height: 628,
|
||||||
});
|
});
|
||||||
|
|
||||||
const {
|
const {
|
||||||
title = "AstroWind",
|
title = "AstroWind",
|
||||||
description = "",
|
description = "",
|
||||||
image = defaultImage,
|
image = defaultImage,
|
||||||
|
canonical,
|
||||||
} = Astro.props;
|
} = Astro.props;
|
||||||
|
|
||||||
const canonicalURL = new URL(Astro.url.pathname, Astro.site);
|
|
||||||
const absoluteImageUrl = new URL(image, Astro.site);
|
const absoluteImageUrl = new URL(image, Astro.site);
|
||||||
---
|
---
|
||||||
|
|
||||||
@ -23,7 +23,7 @@ const absoluteImageUrl = new URL(image, Astro.site);
|
|||||||
|
|
||||||
<title>{title}</title>
|
<title>{title}</title>
|
||||||
<meta name="description" content={description} />
|
<meta name="description" content={description} />
|
||||||
<link rel="canonical" href={canonicalURL} />
|
{canonical && <link rel="canonical" href={canonical} />}
|
||||||
|
|
||||||
<!-- Google / Search Engine Tags -->
|
<!-- Google / Search Engine Tags -->
|
||||||
<meta itemprop="name" content={title} />
|
<meta itemprop="name" content={title} />
|
||||||
@ -31,23 +31,27 @@ const absoluteImageUrl = new URL(image, Astro.site);
|
|||||||
<meta itemprop="image" content={absoluteImageUrl} />
|
<meta itemprop="image" content={absoluteImageUrl} />
|
||||||
|
|
||||||
<!-- Facebook Meta Tags -->
|
<!-- Facebook Meta Tags -->
|
||||||
<meta property="og:url" content={canonicalURL} />
|
{canonical && <meta property="og:url" content={canonical} />}
|
||||||
<meta property="og:type" content="website" />
|
<meta property="og:type" content="website" />
|
||||||
<meta property="og:title" content={title} />
|
<meta property="og:title" content={title} />
|
||||||
<meta property="og:description" content={description} />
|
<meta property="og:description" content={description} />
|
||||||
<meta property="og:image" content={absoluteImageUrl} />
|
<meta property="og:image" content={absoluteImageUrl} />
|
||||||
|
|
||||||
<!-- Twitter Meta Tags -->
|
<!-- Twitter Meta Tags -->
|
||||||
|
{canonical && <meta name="twitter:url" content={canonical} />}
|
||||||
<meta name="twitter:card" content="summary_large_image" />
|
<meta name="twitter:card" content="summary_large_image" />
|
||||||
<meta name="twitter:url" content={canonicalURL} />
|
|
||||||
<meta name="twitter:title" content={title} />
|
<meta name="twitter:title" content={title} />
|
||||||
<meta name="twitter:description" content={description} />
|
<meta name="twitter:description" content={description} />
|
||||||
<meta name="twitter:image" content={absoluteImageUrl} />
|
<meta name="twitter:image" content={absoluteImageUrl} />
|
||||||
|
|
||||||
<!-- Fonts -->
|
<!-- Fonts -->
|
||||||
<link rel="preconnect" href="https://fonts.googleapis.com" />
|
<link
|
||||||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
|
href="https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@400;500;700&display=swap"
|
||||||
<link href="https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@400;500;700&display=swap" rel="stylesheet" />
|
rel="stylesheet"
|
||||||
|
/>
|
||||||
|
|
||||||
<!-- Google Site Verification -->
|
<!-- Google Site Verification -->
|
||||||
<meta name="google-site-verification" content="orcPxI47GSa-cRvY11tUe6iGg2IO_RPvnA1q95iEM3M" />
|
<meta
|
||||||
|
name="google-site-verification"
|
||||||
|
content="orcPxI47GSa-cRvY11tUe6iGg2IO_RPvnA1q95iEM3M"
|
||||||
|
/>
|
@ -14,18 +14,25 @@ const {
|
|||||||
...attrs
|
...attrs
|
||||||
} = Astro.props;
|
} = Astro.props;
|
||||||
|
|
||||||
const { image, sources } = await getPicture({
|
const { image, sources = [] } =
|
||||||
src,
|
!src ? { image: {}}
|
||||||
widths,
|
: (typeof src === "string"
|
||||||
formats,
|
? { image: { src } }
|
||||||
aspectRatio,
|
:
|
||||||
});
|
await getPicture({
|
||||||
|
src,
|
||||||
|
widths,
|
||||||
|
formats,
|
||||||
|
aspectRatio,
|
||||||
|
}))
|
||||||
---
|
---
|
||||||
|
|
||||||
|
{ (src || !image) &&
|
||||||
<picture {...attrs}>
|
<picture {...attrs}>
|
||||||
{sources.map((attrs) => <source {...attrs} {sizes} />)}
|
{sources.map((attrs) => <source {...attrs} {sizes} />)}
|
||||||
<img {...image} {loading} {decoding} {alt} class={className} />
|
<img {...image} {loading} {decoding} {alt} class={className} />
|
||||||
</picture>
|
</picture>
|
||||||
|
}
|
||||||
|
|
||||||
<style>
|
<style>
|
||||||
img {
|
img {
|
@ -5,17 +5,24 @@ const {} = Astro.props;
|
|||||||
<section class="relative">
|
<section class="relative">
|
||||||
<div class="max-w-6xl mx-auto px-4 sm:px-6">
|
<div class="max-w-6xl mx-auto px-4 sm:px-6">
|
||||||
<div class="py-12 md:py-20">
|
<div class="py-12 md:py-20">
|
||||||
<div class="max-w-3xl mx-auto text-center p-6 rounded-md shadow-xl dark:shadow-none">
|
<div
|
||||||
<h2 class="text-4xl md:text-5xl font-bold leading-tighter tracking-tighter mb-4">
|
class="max-w-3xl mx-auto text-center p-6 rounded-md shadow-xl dark:shadow-none"
|
||||||
<span>Astro</span> + <span class="whitespace-nowrap">Tailwind CSS</span>
|
>
|
||||||
|
<h2
|
||||||
|
class="text-4xl md:text-5xl font-bold leading-tighter tracking-tighter mb-4"
|
||||||
|
>
|
||||||
|
<span>Astro</span> + <span class="whitespace-nowrap"
|
||||||
|
>Tailwind CSS
|
||||||
|
</span>
|
||||||
</h2>
|
</h2>
|
||||||
<p class="text-xl text-gray-600 dark:text-slate-400">
|
<p class="text-xl text-gray-600 dark:text-slate-400">
|
||||||
Be very surprised by these huge fake numbers you are seeing on this page. <br class="hidden md:inline" />Don't waste more time! :P
|
Be very surprised by these huge fake numbers you are seeing on this
|
||||||
|
page. <br class="hidden md:inline" />Don't waste more time! :P
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<div class="mt-6">
|
<div class="mt-6">
|
||||||
<a
|
<a
|
||||||
class="btn text-white bg-blue-600 hover:bg-blue-800 sm:mb-0"
|
class="btn text-white bg-blue-600 hover:bg-blue-800 sm:mb-0 font-bold"
|
||||||
href="https://github.com/onwidget/astrowind"
|
href="https://github.com/onwidget/astrowind"
|
||||||
target="_blank"
|
target="_blank"
|
||||||
rel="noopener"
|
rel="noopener"
|
@ -1,11 +1,14 @@
|
|||||||
---
|
---
|
||||||
import { IconArrowDownRight } from "~/components/astro/icons";
|
import { IconArrowDownRight } from "~/components/icons";
|
||||||
|
const {} = Astro.props;
|
||||||
---
|
---
|
||||||
|
|
||||||
<div class="px-4 py-16 mx-auto max-w-6xl lg:py-20">
|
<div class="px-4 py-16 mx-auto max-w-6xl lg:py-20">
|
||||||
<div class="max-w-xl sm:mx-auto lg:max-w-2xl">
|
<div class="max-w-xl sm:mx-auto lg:max-w-2xl">
|
||||||
<div class="max-w-xl mb-10 md:mx-auto sm:text-center lg:max-w-2xl md:mb-12">
|
<div class="max-w-xl mb-10 md:mx-auto sm:text-center lg:max-w-2xl md:mb-12">
|
||||||
<h2 class="max-w-lg mb-4 font-sans text-3xl font-bold leading-none tracking-tight sm:text-4xl md:mx-auto">
|
<h2
|
||||||
|
class="max-w-lg mb-4 font-sans text-3xl font-bold leading-none tracking-tight sm:text-4xl md:mx-auto"
|
||||||
|
>
|
||||||
Frequently Asked Questions
|
Frequently Asked Questions
|
||||||
</h2>
|
</h2>
|
||||||
</div>
|
</div>
|
||||||
@ -19,33 +22,40 @@ import { IconArrowDownRight } from "~/components/astro/icons";
|
|||||||
What do I need to start?
|
What do I need to start?
|
||||||
</p>
|
</p>
|
||||||
<p class="text-gray-700 dark:text-gray-400 mb-2">
|
<p class="text-gray-700 dark:text-gray-400 mb-2">
|
||||||
Space, the final frontier. These are the voyages of the Starship Enterprise. Its five-year mission: to
|
Space, the final frontier. These are the voyages of the Starship
|
||||||
explore strange new worlds.
|
Enterprise. Its five-year mission: to explore strange new worlds.
|
||||||
</p>
|
</p>
|
||||||
<p class="text-gray-700 dark:text-gray-400 mb-2">
|
<p class="text-gray-700 dark:text-gray-400 mb-2">
|
||||||
Many say exploration is part of our destiny, but it’s actually our duty to future generations.
|
Many say exploration is part of our destiny, but it’s actually our
|
||||||
|
duty to future generations.
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
<p class="mb-4 text-xl font-bold">
|
<p class="mb-4 text-xl font-bold">
|
||||||
<IconArrowDownRight class="w-7 h-7 text-blue-500 inline-block" />
|
<IconArrowDownRight class="w-7 h-7 text-blue-500 inline-block" />
|
||||||
How to install the Astro + Tailwind CSS template?</p>
|
How to install the Astro + Tailwind CSS template?
|
||||||
<p class="text-gray-700 dark:text-gray-400 mb-2">
|
|
||||||
Well, the way they make shows is, they make one show. That show's called a pilot.
|
|
||||||
</p>
|
</p>
|
||||||
<p class="text-gray-700 dark:text-gray-400 mb-2">
|
<p class="text-gray-700 dark:text-gray-400 mb-2">
|
||||||
Then they show that show to the people who make shows, and on the strength of that one show they decide if
|
Well, the way they make shows is, they make one show. That show's
|
||||||
they're going to make more shows. Some pilots get picked and become television programs.Some don't, become
|
called a pilot.
|
||||||
nothing. She starred in one of the ones that became nothing.
|
</p>
|
||||||
|
<p class="text-gray-700 dark:text-gray-400 mb-2">
|
||||||
|
Then they show that show to the people who make shows, and on the
|
||||||
|
strength of that one show they decide if they're going to make more
|
||||||
|
shows. Some pilots get picked and become television programs.Some
|
||||||
|
don't, become nothing. She starred in one of the ones that became
|
||||||
|
nothing.
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
<p class="mb-4 text-xl font-bold">
|
<p class="mb-4 text-xl font-bold">
|
||||||
<IconArrowDownRight class="w-7 h-7 text-blue-500 inline-block" />
|
<IconArrowDownRight class="w-7 h-7 text-blue-500 inline-block" />
|
||||||
Is the Space Pope reptilian!?</p>
|
Is the Space Pope reptilian!?
|
||||||
|
</p>
|
||||||
<p class="text-gray-700 dark:text-gray-400 mb-2">
|
<p class="text-gray-700 dark:text-gray-400 mb-2">
|
||||||
A flower in my garden, a mystery in my panties. Heart attack never stopped old Big Bear. I didn't even know
|
A flower in my garden, a mystery in my panties. Heart attack never
|
||||||
we were calling him Big Bear.
|
stopped old Big Bear. I didn't even know we were calling him Big
|
||||||
|
Bear.
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -53,31 +63,38 @@ import { IconArrowDownRight } from "~/components/astro/icons";
|
|||||||
<div>
|
<div>
|
||||||
<p class="mb-4 text-xl font-bold">
|
<p class="mb-4 text-xl font-bold">
|
||||||
<IconArrowDownRight class="w-7 h-7 text-blue-500 inline-block" />
|
<IconArrowDownRight class="w-7 h-7 text-blue-500 inline-block" />
|
||||||
How much money you got on you?</p>
|
How much money you got on you?
|
||||||
|
</p>
|
||||||
<p class="text-gray-700 dark:text-gray-400 mb-2">
|
<p class="text-gray-700 dark:text-gray-400 mb-2">
|
||||||
Michael Knight a young loner on a crusade to champion the cause of the innocent. The helpless. The powerless
|
Michael Knight a young loner on a crusade to champion the cause of
|
||||||
in a world of criminals who operate above the law. Here he comes Here comes Speed Racer. He's a demon on
|
the innocent. The helpless. The powerless in a world of criminals
|
||||||
wheels.
|
who operate above the law. Here he comes Here comes Speed Racer.
|
||||||
|
He's a demon on wheels.
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
<p class="mb-4 text-xl font-bold">
|
<p class="mb-4 text-xl font-bold">
|
||||||
<IconArrowDownRight class="w-7 h-7 text-blue-500 inline-block" />
|
<IconArrowDownRight class="w-7 h-7 text-blue-500 inline-block" />
|
||||||
Galaxies Orion's sword globular star cluster?</p>
|
Galaxies Orion's sword globular star cluster?
|
||||||
<p class="text-gray-700 dark:text-gray-400 mb-2">
|
|
||||||
A business big enough that it could be listed on the NASDAQ goes belly up. Disappears!
|
|
||||||
</p>
|
</p>
|
||||||
<p class="text-gray-700 dark:text-gray-400 mb-2">
|
<p class="text-gray-700 dark:text-gray-400 mb-2">
|
||||||
It ceases to exist without me. No, you clearly don't know who you're talking to, so let me clue you in.
|
A business big enough that it could be listed on the NASDAQ goes
|
||||||
|
belly up. Disappears!
|
||||||
|
</p>
|
||||||
|
<p class="text-gray-700 dark:text-gray-400 mb-2">
|
||||||
|
It ceases to exist without me. No, you clearly don't know who you're
|
||||||
|
talking to, so let me clue you in.
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
<p class="mb-4 text-xl font-bold">
|
<p class="mb-4 text-xl font-bold">
|
||||||
<IconArrowDownRight class="w-7 h-7 text-blue-500 inline-block" />
|
<IconArrowDownRight class="w-7 h-7 text-blue-500 inline-block" />
|
||||||
When has justice ever been as simple as a rule book?</p>
|
When has justice ever been as simple as a rule book?
|
||||||
|
</p>
|
||||||
<p class="text-gray-700 dark:text-gray-400 mb-2">
|
<p class="text-gray-700 dark:text-gray-400 mb-2">
|
||||||
This is not about revenge. This is about justice. A lot of things can change in twelve years, Admiral. Well,
|
This is not about revenge. This is about justice. A lot of things
|
||||||
that's certainly good to know. About four years. I got tired of hearing how young I looked.
|
can change in twelve years, Admiral. Well, that's certainly good to
|
||||||
|
know. About four years. I got tired of hearing how young I looked.
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
@ -15,7 +15,7 @@ const {} = Astro.props;
|
|||||||
</div>
|
</div>
|
||||||
<div class="grid gap-6 md:grid-cols-2 lg:grid-cols-3 items-start my-12 dark:text-white">
|
<div class="grid gap-6 md:grid-cols-2 lg:grid-cols-3 items-start my-12 dark:text-white">
|
||||||
<div
|
<div
|
||||||
class="relative flex flex-col p-6 bg-white dark:bg-slate-900 rounded shadow-xl dark:border dark:border-slate-800"
|
class="relative flex flex-col p-6 bg-white dark:bg-slate-900 rounded shadow-xl hover:shadow-lg transition dark:border dark:border-slate-800"
|
||||||
>
|
>
|
||||||
<div class="flex items-center mb-4">
|
<div class="flex items-center mb-4">
|
||||||
<svg class="w-12 h-12 p-1" viewBox="0 0 64 64" xmlns="http://www.w3.org/2000/svg">
|
<svg class="w-12 h-12 p-1" viewBox="0 0 64 64" xmlns="http://www.w3.org/2000/svg">
|
||||||
@ -36,7 +36,7 @@ const {} = Astro.props;
|
|||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
<div
|
<div
|
||||||
class="relative flex flex-col p-6 bg-white dark:bg-slate-900 rounded shadow-xl dark:border dark:border-slate-800"
|
class="relative flex flex-col p-6 bg-white dark:bg-slate-900 rounded shadow-xl hover:shadow-lg transition dark:border dark:border-slate-800"
|
||||||
>
|
>
|
||||||
<div class="flex items-center mb-4">
|
<div class="flex items-center mb-4">
|
||||||
<svg class="w-12 h-12 p-1" viewBox="0 0 64 64" xmlns="http://www.w3.org/2000/svg">
|
<svg class="w-12 h-12 p-1" viewBox="0 0 64 64" xmlns="http://www.w3.org/2000/svg">
|
||||||
@ -58,7 +58,7 @@ const {} = Astro.props;
|
|||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
<div
|
<div
|
||||||
class="relative flex flex-col p-6 bg-white dark:bg-slate-900 rounded shadow-xl dark:border dark:border-slate-800"
|
class="relative flex flex-col p-6 bg-white dark:bg-slate-900 rounded shadow-xl hover:shadow-lg transition dark:border dark:border-slate-800"
|
||||||
>
|
>
|
||||||
<div class="flex items-center mb-4">
|
<div class="flex items-center mb-4">
|
||||||
<svg class="w-12 h-12 p-1" viewBox="0 0 64 64" xmlns="http://www.w3.org/2000/svg">
|
<svg class="w-12 h-12 p-1" viewBox="0 0 64 64" xmlns="http://www.w3.org/2000/svg">
|
||||||
@ -79,7 +79,7 @@ const {} = Astro.props;
|
|||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
<div
|
<div
|
||||||
class="relative flex flex-col p-6 bg-white dark:bg-slate-900 rounded shadow-xl dark:border dark:border-slate-800"
|
class="relative flex flex-col p-6 bg-white dark:bg-slate-900 rounded shadow-xl hover:shadow-lg transition dark:border dark:border-slate-800"
|
||||||
>
|
>
|
||||||
<div class="flex items-center mb-4">
|
<div class="flex items-center mb-4">
|
||||||
<svg class="w-12 h-12 p-1" viewBox="0 0 64 64" xmlns="http://www.w3.org/2000/svg">
|
<svg class="w-12 h-12 p-1" viewBox="0 0 64 64" xmlns="http://www.w3.org/2000/svg">
|
||||||
@ -101,7 +101,7 @@ const {} = Astro.props;
|
|||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
<div
|
<div
|
||||||
class="relative flex flex-col p-6 bg-white dark:bg-slate-900 rounded shadow-xl dark:border dark:border-slate-800"
|
class="relative flex flex-col p-6 bg-white dark:bg-slate-900 rounded shadow-xl hover:shadow-lg transition dark:border dark:border-slate-800"
|
||||||
>
|
>
|
||||||
<div class="flex items-center mb-4">
|
<div class="flex items-center mb-4">
|
||||||
<svg class="w-12 h-12 p-1" viewBox="0 0 64 64" xmlns="http://www.w3.org/2000/svg">
|
<svg class="w-12 h-12 p-1" viewBox="0 0 64 64" xmlns="http://www.w3.org/2000/svg">
|
||||||
@ -122,7 +122,7 @@ const {} = Astro.props;
|
|||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
<div
|
<div
|
||||||
class="relative flex flex-col p-6 bg-white dark:bg-slate-900 rounded shadow-xl dark:border dark:border-slate-800"
|
class="relative flex flex-col p-6 bg-white dark:bg-slate-900 rounded shadow-xl hover:shadow-lg transition dark:border dark:border-slate-800"
|
||||||
>
|
>
|
||||||
<div class="flex items-center mb-4">
|
<div class="flex items-center mb-4">
|
||||||
<svg class="w-12 h-12 p-1" viewBox="0 0 64 64" xmlns="http://www.w3.org/2000/svg">
|
<svg class="w-12 h-12 p-1" viewBox="0 0 64 64" xmlns="http://www.w3.org/2000/svg">
|
@ -1,66 +1,93 @@
|
|||||||
---
|
---
|
||||||
import Picture from "~/components/astro/utils/Picture.astro";
|
import Picture from "~/components/core/Picture.astro";
|
||||||
const {} = Astro.props;
|
const {} = Astro.props;
|
||||||
---
|
---
|
||||||
|
|
||||||
<section class="px-4 py-16 mx-auto max-w-6xl lg:py-20">
|
<section class="px-4 py-16 mx-auto max-w-6xl lg:py-20">
|
||||||
<div class="flex flex-col mb-6 lg:justify-between lg:flex-row md:mb-8">
|
<div class="flex flex-col mb-6 lg:justify-between lg:flex-row md:mb-8">
|
||||||
<h2 class="max-w-lg mb-2 font-sans text-3xl font-bold tracking-tight sm:text-4xl sm:leading-none lg:mb-5 group">
|
<h2
|
||||||
<span class="inline-block mb-1 sm:mb-4">Find out more content<br class="hidden md:block" /> in our Blog</span>
|
class="max-w-lg mb-2 font-sans text-3xl font-bold tracking-tight sm:text-4xl sm:leading-none lg:mb-5 group"
|
||||||
|
>
|
||||||
|
<span class="inline-block mb-1 sm:mb-4"
|
||||||
|
>Find out more content<br class="hidden md:block" /> in our Blog
|
||||||
|
</span>
|
||||||
</h2>
|
</h2>
|
||||||
<p class="text-gray-700 dark:text-slate-400 lg:text-sm lg:max-w-md">
|
<p class="text-gray-700 dark:text-slate-400 lg:text-sm lg:max-w-md">
|
||||||
The blog will be used to display AstroWind documentation. Each new article will be an important step that you will
|
The blog will be used to display AstroWind documentation. Each new article
|
||||||
need to know to be an expert in creating a website using Astro + Tailwind CSS The blog does not exist yet, but
|
will be an important step that you will need to know to be an expert in
|
||||||
very soon. Astro is a very interesting technology. Thanks.
|
creating a website using Astro + Tailwind CSS The blog does not exist yet,
|
||||||
|
but very soon. Astro is a very interesting technology. Thanks.
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="grid gap-6 row-gap-5 md:grid-cols-2 lg:grid-cols-4 -mb-6">
|
<div class="grid gap-6 row-gap-5 md:grid-cols-2 lg:grid-cols-4 -mb-6">
|
||||||
<div class="mb-6">
|
<div class="mb-6 transition">
|
||||||
<Picture
|
<Picture
|
||||||
src={import("~/assets/images/post-2.jpg")}
|
src={import("~/assets/images/steps.jpg")}
|
||||||
class="object-cover w-full h-64 mb-6 rounded shadow-lg bg-gray-400 dark:bg-slate-700"
|
class="object-cover w-full h-64 mb-6 rounded shadow-lg bg-gray-400 dark:bg-slate-700"
|
||||||
widths={[400, 768]}
|
widths={[400, 768]}
|
||||||
sizes="(max-width: 767px) 400px, 768px"
|
sizes="(max-width: 767px) 400px, 768px"
|
||||||
alt="Post 2 Image"
|
alt="Post 2 Image"
|
||||||
aspectRatio="16:9"
|
aspectRatio="16:9"
|
||||||
/>
|
/>
|
||||||
<h3 class="mb-2 text-xl font-bold leading-none sm:text-2xl">Get started with AstroWind</h3>
|
<h3 class="mb-2 text-xl font-bold leading-none sm:text-2xl">
|
||||||
|
<a
|
||||||
|
href="/blog/get-started-with-astrowind"
|
||||||
|
class="hover:text-blue-600 underline underline-offset-4 decoration-1 decoration-dotted transition ease-in duration-200"
|
||||||
|
>Get started with AstroWind
|
||||||
|
</a>
|
||||||
|
</h3>
|
||||||
<p class="text-gray-700 dark:text-gray-400">
|
<p class="text-gray-700 dark:text-gray-400">
|
||||||
I'll be sure to note that in my log. Smooth as an android's bottom, eh, Data? When has justice ever been as
|
I'll be sure to note that in my log. Smooth as an android's bottom, eh,
|
||||||
simple as a rule book?
|
Data? When has justice ever been as simple as a rule book?
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="mb-6">
|
|
||||||
|
<div class="mb-6 transition">
|
||||||
<Picture
|
<Picture
|
||||||
src={import("~/assets/images/post-1.jpg")}
|
src={import("~/assets/images/colors.jpg")}
|
||||||
class="object-cover w-full h-64 mb-6 rounded shadow-lg bg-gray-400 dark:bg-slate-700"
|
class="object-cover w-full h-64 mb-6 rounded shadow-lg bg-gray-400 dark:bg-slate-700"
|
||||||
widths={[400, 768]}
|
widths={[400, 768]}
|
||||||
sizes="(max-width: 767px) 400px, 768px"
|
sizes="(max-width: 767px) 400px, 768px"
|
||||||
alt="Post 1 Image"
|
alt="Post 1 Image"
|
||||||
aspectRatio="16:9"
|
aspectRatio="16:9"
|
||||||
/>
|
/>
|
||||||
<h3 class="mb-2 text-xl font-bold leading-none sm:text-2xl">How to customize the template</h3>
|
<h3 class="mb-2 text-xl font-bold leading-none sm:text-2xl">
|
||||||
|
<a
|
||||||
|
href="/blog/how-to-customize-the-template"
|
||||||
|
class="hover:text-blue-600 underline underline-offset-4 decoration-1 decoration-dotted transition ease-in duration-200"
|
||||||
|
>How to customize the template
|
||||||
|
</a>
|
||||||
|
</h3>
|
||||||
<p class="text-gray-700 dark:text-gray-400">
|
<p class="text-gray-700 dark:text-gray-400">
|
||||||
O for awesome, this chocka full cuzzie is as rip-off as a cracker. Meanwhile, in behind the bicycle shed,
|
O for awesome, this chocka full cuzzie is as rip-off as a cracker.
|
||||||
Hercules Morse.
|
Meanwhile, in behind the bicycle shed, Hercules Morse.
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="mb-6">
|
|
||||||
|
<div class="mb-6 transition">
|
||||||
<Picture
|
<Picture
|
||||||
src={import("~/assets/images/post-3.jpg")}
|
src={import("~/assets/images/tools.jpg")}
|
||||||
class="object-cover w-full h-64 mb-6 rounded shadow-lg bg-gray-400 dark:bg-slate-700"
|
class="object-cover w-full h-64 mb-6 rounded shadow-lg bg-gray-400 dark:bg-slate-700"
|
||||||
widths={[400, 768]}
|
widths={[400, 768]}
|
||||||
sizes="(max-width: 767px) 400px, 768px"
|
sizes="(max-width: 767px) 400px, 768px"
|
||||||
alt="Post 3 Image"
|
alt="Post 3 Image"
|
||||||
aspectRatio="16:9"
|
aspectRatio="16:9"
|
||||||
/>
|
/>
|
||||||
<h3 class="mb-2 text-xl font-bold leading-none sm:text-2xl">Helpful tools and resources to design</h3>
|
<h3 class="mb-2 text-xl font-bold leading-none sm:text-2xl">
|
||||||
|
<a
|
||||||
|
href="/blog/helpful-tools-and-resources-to-design"
|
||||||
|
class="hover:text-blue-600 underline underline-offset-4 decoration-1 decoration-dotted transition ease-in duration-200"
|
||||||
|
>Helpful tools and resources to design
|
||||||
|
</a>
|
||||||
|
</h3>
|
||||||
<p class="text-gray-700 dark:text-gray-400">
|
<p class="text-gray-700 dark:text-gray-400">
|
||||||
Yolo ipsum dolor sit amet, consectetur adipiscing elit. Ut ac suscipit leo. Carpe diem vulputate est nec commodo
|
Yolo ipsum dolor sit amet, consectetur adipiscing elit. Ut ac suscipit
|
||||||
rutrum.
|
leo. Carpe diem vulputate est nec commodo rutrum.
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="mb-6">
|
|
||||||
|
<div class="mb-6 transition">
|
||||||
<Picture
|
<Picture
|
||||||
src={import("~/assets/images/hero.jpg")}
|
src={import("~/assets/images/hero.jpg")}
|
||||||
class="object-cover w-full h-64 mb-6 rounded shadow-lg bg-gray-400 dark:bg-slate-700"
|
class="object-cover w-full h-64 mb-6 rounded shadow-lg bg-gray-400 dark:bg-slate-700"
|
||||||
@ -69,10 +96,16 @@ const {} = Astro.props;
|
|||||||
alt="Post 2 Image"
|
alt="Post 2 Image"
|
||||||
aspectRatio="16:9"
|
aspectRatio="16:9"
|
||||||
/>
|
/>
|
||||||
<h3 class="mb-2 text-xl font-bold leading-none sm:text-2xl">AstroWind template in depth</h3>
|
<h3 class="mb-2 text-xl font-bold leading-none sm:text-2xl">
|
||||||
|
<a
|
||||||
|
href="/blog/astrowind-template-in-depth"
|
||||||
|
class="hover:text-blue-600 underline underline-offset-4 decoration-1 decoration-dotted transition ease-in duration-200"
|
||||||
|
>AstroWind template in depth
|
||||||
|
</a>
|
||||||
|
</h3>
|
||||||
<p class="text-gray-700 dark:text-gray-400">
|
<p class="text-gray-700 dark:text-gray-400">
|
||||||
I'll be sure to note that in my log. Smooth as an android's bottom, eh, Data? When has justice ever been as
|
I'll be sure to note that in my log. Smooth as an android's bottom, eh,
|
||||||
simple as a rule book?
|
Data? When has justice ever been as simple as a rule book?
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
62
src/components/widgets/BlogPostCard.astro
Normal file
62
src/components/widgets/BlogPostCard.astro
Normal file
@ -0,0 +1,62 @@
|
|||||||
|
---
|
||||||
|
import Picture from "~/components/core/Picture.astro";
|
||||||
|
|
||||||
|
const { post } = Astro.props;
|
||||||
|
|
||||||
|
const images = import.meta.glob("../../assets/images/*");
|
||||||
|
const imageSrc =
|
||||||
|
typeof images[post.image] === "function"
|
||||||
|
? (await images[post.image]())["default"]
|
||||||
|
: typeof post.image === "string"
|
||||||
|
? post.image
|
||||||
|
: null;
|
||||||
|
---
|
||||||
|
|
||||||
|
<article
|
||||||
|
class="max-w-md mx-auto md:max-w-none grid md:grid-cols-2 gap-6 md:gap-8"
|
||||||
|
>
|
||||||
|
<a class="relative block group" href="#0">
|
||||||
|
<div
|
||||||
|
class="relative h-0 pb-[56.25%] md:pb-[75%] md:h-80 lg:pb-[56.25%] overflow-hidden bg-gray-400 dark:bg-slate-700 rounded shadow-lg"
|
||||||
|
>
|
||||||
|
<Picture
|
||||||
|
src={imageSrc}
|
||||||
|
class="absolute inset-0 w-full h-full object-cover mb-6 rounded shadow-lg"
|
||||||
|
widths={[400, 768]}
|
||||||
|
sizes="(max-width: 767px) 400px, 768px"
|
||||||
|
alt={post.description}
|
||||||
|
aspectRatio="1"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</a>
|
||||||
|
<div>
|
||||||
|
<header>
|
||||||
|
<h2 class="text-xl sm:text-2xl font-bold leading-tight mb-2">
|
||||||
|
<a
|
||||||
|
class="hover:text-blue-600 underline underline-offset-4 decoration-1 decoration-dotted transition ease-in duration-200"
|
||||||
|
href={`/blog/${post.slug}`}
|
||||||
|
>
|
||||||
|
{post.title}
|
||||||
|
</a>
|
||||||
|
</h2>
|
||||||
|
</header>
|
||||||
|
<p class="text-md sm:text-lg flex-grow">
|
||||||
|
{post.excerpt || post.description}
|
||||||
|
</p>
|
||||||
|
<footer class="flex items-center mt-4">
|
||||||
|
<div>
|
||||||
|
<span class="text-gray-500 dark:text-slate-400">
|
||||||
|
<time datetime={""}>
|
||||||
|
{
|
||||||
|
new Date(post.pubDate).toLocaleDateString("en-us", {
|
||||||
|
year: "numeric",
|
||||||
|
month: "short",
|
||||||
|
day: "numeric",
|
||||||
|
})
|
||||||
|
}
|
||||||
|
</time>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
</footer>
|
||||||
|
</div>
|
||||||
|
</article>
|
28
src/components/widgets/Error404.astro
Normal file
28
src/components/widgets/Error404.astro
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
---
|
||||||
|
---
|
||||||
|
|
||||||
|
<section class="flex items-center h-full p-16">
|
||||||
|
<div
|
||||||
|
class="container flex flex-col items-center justify-center px-5 mx-auto my-8"
|
||||||
|
>
|
||||||
|
<div class="max-w-md text-center">
|
||||||
|
<h2
|
||||||
|
class="mb-8 font-extrabold text-9xl bg-clip-text text-transparent bg-gradient-to-r from-blue-500 to-pink-500 whitespace-nowrap"
|
||||||
|
>
|
||||||
|
<span class="sr-only">Error</span>404
|
||||||
|
</h2>
|
||||||
|
<p class="text-3xl font-semibold md:text-3xl">
|
||||||
|
Sorry, we couldn't find this page.
|
||||||
|
</p>
|
||||||
|
<p class="mt-4 mb-8 text-lg text-gray-600 dark:text-slate-400">
|
||||||
|
But dont worry, you can find plenty of other things on our homepage.
|
||||||
|
</p>
|
||||||
|
<a
|
||||||
|
rel="noopener noreferrer"
|
||||||
|
href="/"
|
||||||
|
class="btn text-white bg-gray-900 hover:bg-gray-800 dark:bg-gray-700 dark:hover:bg-gray-800 ml-4"
|
||||||
|
>Back to homepage
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</section>
|
@ -1,14 +1,21 @@
|
|||||||
---
|
---
|
||||||
import { IconTwitter, IconInstagram, IconFacebook, IconArrowRight } from "~/components/astro/icons";
|
import {
|
||||||
|
IconTwitter,
|
||||||
|
IconInstagram,
|
||||||
|
IconFacebook,
|
||||||
|
IconArrowRight,
|
||||||
|
} from "~/components/icons";
|
||||||
const {} = Astro.props;
|
const {} = Astro.props;
|
||||||
---
|
---
|
||||||
|
|
||||||
<footer>
|
<footer>
|
||||||
<div class="max-w-6xl mx-auto px-4 sm:px-6">
|
<div class="max-w-6xl mx-auto px-4 sm:px-6">
|
||||||
<div class="grid sm:grid-cols-12 gap-8 py-8 md:py-12 border-t border-gray-200 dark:border-slate-800">
|
<div
|
||||||
<div class="sm:col-span-12 lg:col-span-3">
|
class="grid grid-cols-12 gap-4 gap-y-8 sm:gap-8 py-8 md:py-12 border-t border-gray-200 dark:border-slate-800"
|
||||||
|
>
|
||||||
|
<div class="col-span-12 lg:col-span-3">
|
||||||
<div class="mb-2">
|
<div class="mb-2">
|
||||||
<a class="inline-block font-bold" href="/">AstroWind</a>
|
<a class="inline-block font-bold text-xl" href="/">AstroWind</a>
|
||||||
</div>
|
</div>
|
||||||
<div class="text-sm text-gray-600">
|
<div class="text-sm text-gray-600">
|
||||||
<a
|
<a
|
||||||
@ -23,105 +30,145 @@ const {} = Astro.props;
|
|||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="sm:col-span-6 md:col-span-3 lg:col-span-2">
|
<div class="col-span-6 md:col-span-3 lg:col-span-2">
|
||||||
<div class="text-gray-800 dark:text-gray-300 font-medium mb-2">Products</div>
|
<div class="text-gray-800 dark:text-gray-300 font-medium mb-2">
|
||||||
|
Products
|
||||||
|
</div>
|
||||||
<ul class="text-sm">
|
<ul class="text-sm">
|
||||||
<li class="mb-2">
|
<li class="mb-2">
|
||||||
<a class="text-gray-600 hover:text-gray-700 dark:text-gray-400 transition duration-150 ease-in-out" href="#"
|
<a
|
||||||
|
class="text-gray-600 hover:text-gray-700 dark:text-gray-400 transition duration-150 ease-in-out"
|
||||||
|
href="#"
|
||||||
>Web Studio
|
>Web Studio
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li class="mb-2">
|
<li class="mb-2">
|
||||||
<a class="text-gray-600 hover:text-gray-700 dark:text-gray-400 transition duration-150 ease-in-out" href="#"
|
<a
|
||||||
|
class="text-gray-600 hover:text-gray-700 dark:text-gray-400 transition duration-150 ease-in-out"
|
||||||
|
href="#"
|
||||||
>DynamicBox Flex
|
>DynamicBox Flex
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li class="mb-2">
|
<li class="mb-2">
|
||||||
<a class="text-gray-600 hover:text-gray-700 dark:text-gray-400 transition duration-150 ease-in-out" href="#"
|
<a
|
||||||
|
class="text-gray-600 hover:text-gray-700 dark:text-gray-400 transition duration-150 ease-in-out"
|
||||||
|
href="#"
|
||||||
>Programming Forms
|
>Programming Forms
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li class="mb-2">
|
<li class="mb-2">
|
||||||
<a class="text-gray-600 hover:text-gray-700 dark:text-gray-400 transition duration-150 ease-in-out" href="#"
|
<a
|
||||||
|
class="text-gray-600 hover:text-gray-700 dark:text-gray-400 transition duration-150 ease-in-out"
|
||||||
|
href="#"
|
||||||
>Integrations
|
>Integrations
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li class="mb-2">
|
<li class="mb-2">
|
||||||
<a class="text-gray-600 hover:text-gray-700 dark:text-gray-400 transition duration-150 ease-in-out" href="#"
|
<a
|
||||||
|
class="text-gray-600 hover:text-gray-700 dark:text-gray-400 transition duration-150 ease-in-out"
|
||||||
|
href="#"
|
||||||
>Command-line
|
>Command-line
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
<div class="sm:col-span-6 md:col-span-3 lg:col-span-2">
|
<div class="col-span-6 md:col-span-3 lg:col-span-2">
|
||||||
<div class="text-gray-800 dark:text-gray-300 font-medium mb-2">Resources</div>
|
<div class="text-gray-800 dark:text-gray-300 font-medium mb-2">
|
||||||
|
Resources
|
||||||
|
</div>
|
||||||
<ul class="text-sm">
|
<ul class="text-sm">
|
||||||
<li class="mb-2">
|
<li class="mb-2">
|
||||||
<a class="text-gray-600 hover:text-gray-700 dark:text-gray-400 transition duration-150 ease-in-out" href="#"
|
<a
|
||||||
|
class="text-gray-600 hover:text-gray-700 dark:text-gray-400 transition duration-150 ease-in-out"
|
||||||
|
href="#"
|
||||||
>Documentation
|
>Documentation
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li class="mb-2">
|
<li class="mb-2">
|
||||||
<a class="text-gray-600 hover:text-gray-700 dark:text-gray-400 transition duration-150 ease-in-out" href="#"
|
<a
|
||||||
|
class="text-gray-600 hover:text-gray-700 dark:text-gray-400 transition duration-150 ease-in-out"
|
||||||
|
href="#"
|
||||||
>Tutorials & Guides
|
>Tutorials & Guides
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li class="mb-2">
|
<li class="mb-2">
|
||||||
<a class="text-gray-600 hover:text-gray-700 dark:text-gray-400 transition duration-150 ease-in-out" href="#"
|
<a
|
||||||
|
class="text-gray-600 hover:text-gray-700 dark:text-gray-400 transition duration-150 ease-in-out"
|
||||||
|
href="#"
|
||||||
>Blog
|
>Blog
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li class="mb-2">
|
<li class="mb-2">
|
||||||
<a class="text-gray-600 hover:text-gray-700 dark:text-gray-400 transition duration-150 ease-in-out" href="#"
|
<a
|
||||||
|
class="text-gray-600 hover:text-gray-700 dark:text-gray-400 transition duration-150 ease-in-out"
|
||||||
|
href="#"
|
||||||
>Support Center
|
>Support Center
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li class="mb-2">
|
<li class="mb-2">
|
||||||
<a class="text-gray-600 hover:text-gray-700 dark:text-gray-400 transition duration-150 ease-in-out" href="#"
|
<a
|
||||||
|
class="text-gray-600 hover:text-gray-700 dark:text-gray-400 transition duration-150 ease-in-out"
|
||||||
|
href="#"
|
||||||
>Partners
|
>Partners
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
<div class="sm:col-span-6 md:col-span-3 lg:col-span-2">
|
<div class="col-span-6 md:col-span-3 lg:col-span-2">
|
||||||
<div class="text-gray-800 dark:text-gray-300 font-medium mb-2">Company</div>
|
<div class="text-gray-800 dark:text-gray-300 font-medium mb-2">
|
||||||
|
Company
|
||||||
|
</div>
|
||||||
<ul class="text-sm">
|
<ul class="text-sm">
|
||||||
<li class="mb-2">
|
<li class="mb-2">
|
||||||
<a class="text-gray-600 hover:text-gray-700 dark:text-gray-400 transition duration-150 ease-in-out" href="#"
|
<a
|
||||||
|
class="text-gray-600 hover:text-gray-700 dark:text-gray-400 transition duration-150 ease-in-out"
|
||||||
|
href="#"
|
||||||
>Home
|
>Home
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li class="mb-2">
|
<li class="mb-2">
|
||||||
<a class="text-gray-600 hover:text-gray-700 dark:text-gray-400 transition duration-150 ease-in-out" href="#"
|
<a
|
||||||
|
class="text-gray-600 hover:text-gray-700 dark:text-gray-400 transition duration-150 ease-in-out"
|
||||||
|
href="#"
|
||||||
>About us
|
>About us
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li class="mb-2">
|
<li class="mb-2">
|
||||||
<a class="text-gray-600 hover:text-gray-700 dark:text-gray-400 transition duration-150 ease-in-out" href="#"
|
<a
|
||||||
|
class="text-gray-600 hover:text-gray-700 dark:text-gray-400 transition duration-150 ease-in-out"
|
||||||
|
href="#"
|
||||||
>Company values
|
>Company values
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li class="mb-2">
|
<li class="mb-2">
|
||||||
<a class="text-gray-600 hover:text-gray-700 dark:text-gray-400 transition duration-150 ease-in-out" href="#"
|
<a
|
||||||
|
class="text-gray-600 hover:text-gray-700 dark:text-gray-400 transition duration-150 ease-in-out"
|
||||||
|
href="#"
|
||||||
>Pricing
|
>Pricing
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
<li class="mb-2">
|
<li class="mb-2">
|
||||||
<a class="text-gray-600 hover:text-gray-700 dark:text-gray-400 transition duration-150 ease-in-out" href="#"
|
<a
|
||||||
|
class="text-gray-600 hover:text-gray-700 dark:text-gray-400 transition duration-150 ease-in-out"
|
||||||
|
href="#"
|
||||||
>Privacy Policy
|
>Privacy Policy
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
<div class="sm:col-span-6 md:col-span-3 lg:col-span-3">
|
<div class="col-span-12 md:col-span-3 lg:col-span-3">
|
||||||
<div class="text-gray-800 dark:text-gray-300 font-medium mb-2">Subscribe</div>
|
<div class="text-gray-800 dark:text-gray-300 font-medium mb-2">
|
||||||
|
Subscribe
|
||||||
|
</div>
|
||||||
<p class="text-sm text-gray-600 dark:text-gray-400 mb-4">
|
<p class="text-sm text-gray-600 dark:text-gray-400 mb-4">
|
||||||
Get the latest news and articles to your inbox every month.
|
Get the latest news and articles to your inbox every month.
|
||||||
</p>
|
</p>
|
||||||
<form>
|
<form>
|
||||||
<div class="flex flex-wrap mb-4">
|
<div class="flex flex-wrap mb-4">
|
||||||
<div class="w-full">
|
<div class="w-full">
|
||||||
<label class="block text-sm sr-only" for="newsletter">Email</label>
|
<label class="block text-sm sr-only" for="newsletter"
|
||||||
|
>Email
|
||||||
|
</label>
|
||||||
<div class="relative flex items-center max-w-xs">
|
<div class="relative flex items-center max-w-xs">
|
||||||
<input
|
<input
|
||||||
id="newsletter"
|
id="newsletter"
|
||||||
@ -129,12 +176,18 @@ const {} = Astro.props;
|
|||||||
class="form-input w-full text-gray-800 px-3 py-2 pr-12 text-sm border rounded-sm dark:bg-transparent dark:border-slate-600 dark:text-gray-400"
|
class="form-input w-full text-gray-800 px-3 py-2 pr-12 text-sm border rounded-sm dark:bg-transparent dark:border-slate-600 dark:text-gray-400"
|
||||||
placeholder="Your email"
|
placeholder="Your email"
|
||||||
/>
|
/>
|
||||||
<button type="submit" class="absolute inset-0 left-auto" aria-label="Subscribe">
|
<button
|
||||||
|
type="submit"
|
||||||
|
class="absolute inset-0 left-auto"
|
||||||
|
aria-label="Subscribe"
|
||||||
|
>
|
||||||
<span
|
<span
|
||||||
class="absolute inset-0 right-auto w-px -ml-px my-2 bg-gray-300 dark:bg-slate-600"
|
class="absolute inset-0 right-auto w-px -ml-px my-2 bg-gray-300 dark:bg-slate-600"
|
||||||
aria-hidden="true"></span>
|
aria-hidden="true"></span>
|
||||||
|
|
||||||
<IconArrowRight class="w-5 h-5 text-blue-600 mx-3 flex-shrink-0" />
|
<IconArrowRight
|
||||||
|
class="w-5 h-5 text-blue-600 mx-3 flex-shrink-0"
|
||||||
|
/>
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -173,8 +226,16 @@ const {} = Astro.props;
|
|||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
<div class="text-sm text-gray-700 mr-4 dark:text-slate-400">
|
<div class="text-sm text-gray-700 mr-4 dark:text-slate-400">
|
||||||
Made by <a class="text-blue-600 hover:underline dark:text-gray-200" href="https://onwidget.com/"> onWidget</a>.
|
<span
|
||||||
All rights reserved.
|
class="w-5 h-5 md:w-6 md:h-6 md:-mt-0.5 bg-cover mr-1.5 float-left rounded-sm bg-[url(https://onwidget.com/favicon/favicon-32x32.png)]"
|
||||||
|
>
|
||||||
|
</span>
|
||||||
|
Made by <a
|
||||||
|
class="text-blue-600 hover:underline dark:text-gray-200"
|
||||||
|
href="https://onwidget.com/"
|
||||||
|
>
|
||||||
|
onWidget
|
||||||
|
</a>. All rights reserved.
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
@ -1,15 +1,18 @@
|
|||||||
---
|
---
|
||||||
import { IconSun, IconGithub, IconMenu } from "~/components/astro/icons";
|
import { IconSun, IconGithub, IconMenu } from "~/components/icons";
|
||||||
const {} = Astro.props;
|
const {} = Astro.props;
|
||||||
---
|
---
|
||||||
|
|
||||||
<header
|
<header
|
||||||
class="fixed top-0 z-40 flex-none mx-auto w-full bg-white/90 dark:bg-slate-900/90 backdrop-blur-sm border-b dark:border-b-0"
|
class="fixed top-0 z-40 flex-none mx-auto w-full bg-white/90 dark:bg-slate-900/90 backdrop-blur-sm border-b dark:border-b-0"
|
||||||
>
|
>
|
||||||
<div class="py-3 px-3 mx-auto w-full md:flex md:justify-between max-w-6xl md:px-4">
|
<div
|
||||||
|
class="py-3 px-3 mx-auto w-full md:flex md:justify-between max-w-6xl md:px-4"
|
||||||
|
>
|
||||||
<div class="flex justify-between">
|
<div class="flex justify-between">
|
||||||
<a class="flex items-center" href="/">
|
<a class="flex items-center" href="/">
|
||||||
<span class="self-center ml-2 text-2xl font-extrabold text-gray-900 whitespace-nowrap dark:text-white"
|
<span
|
||||||
|
class="self-center ml-2 text-2xl font-extrabold text-gray-900 whitespace-nowrap dark:text-white"
|
||||||
>AstroWind
|
>AstroWind
|
||||||
</span>
|
</span>
|
||||||
</a>
|
</a>
|
||||||
@ -36,7 +39,9 @@ const {} = Astro.props;
|
|||||||
aria-label="Main navigation"
|
aria-label="Main navigation"
|
||||||
id="menu"
|
id="menu"
|
||||||
>
|
>
|
||||||
<ul class="flex flex-col pt-8 md:pt-0 md:flex-row md:self-center collapse w-full md:w-auto collapsed text-xl md:text-base">
|
<ul
|
||||||
|
class="flex flex-col pt-8 md:pt-0 md:flex-row md:self-center collapse w-full md:w-auto collapsed text-xl md:text-base"
|
||||||
|
>
|
||||||
<li>
|
<li>
|
||||||
<a
|
<a
|
||||||
class="font-medium hover:text-gray-900 dark:hover:text-white px-4 py-3 flex items-center transition duration-150 ease-in-out"
|
class="font-medium hover:text-gray-900 dark:hover:text-white px-4 py-3 flex items-center transition duration-150 ease-in-out"
|
||||||
@ -54,7 +59,7 @@ const {} = Astro.props;
|
|||||||
<li>
|
<li>
|
||||||
<a
|
<a
|
||||||
class="font-medium hover:text-gray-900 dark:hover:text-white px-4 py-3 flex items-center transition duration-150 ease-in-out"
|
class="font-medium hover:text-gray-900 dark:hover:text-white px-4 py-3 flex items-center transition duration-150 ease-in-out"
|
||||||
href="#"
|
href="/blog"
|
||||||
>Blog
|
>Blog
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@ -62,12 +67,14 @@ const {} = Astro.props;
|
|||||||
<a
|
<a
|
||||||
class="font-bold hover:text-gray-900 dark:hover:text-white px-4 py-3 flex items-center transition duration-150 ease-in-out"
|
class="font-bold hover:text-gray-900 dark:hover:text-white px-4 py-3 flex items-center transition duration-150 ease-in-out"
|
||||||
href="https://github.com/onwidget/astrowind"
|
href="https://github.com/onwidget/astrowind"
|
||||||
>
|
>
|
||||||
Github
|
Github
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
<div class="md:self-center flex items-center mb-4 md:mb-0 collapse collapsed">
|
<div
|
||||||
|
class="md:self-center flex items-center mb-4 md:mb-0 collapse collapsed"
|
||||||
|
>
|
||||||
<div class="hidden items-center mr-3 md:flex">
|
<div class="hidden items-center mr-3 md:flex">
|
||||||
<button
|
<button
|
||||||
type="button"
|
type="button"
|
@ -1,5 +1,5 @@
|
|||||||
---
|
---
|
||||||
import Picture from "~/components/astro/utils/Picture.astro";
|
import Picture from "~/components/core/Picture.astro";
|
||||||
const {} = Astro.props;
|
const {} = Astro.props;
|
||||||
---
|
---
|
||||||
|
|
||||||
@ -7,23 +7,30 @@ const {} = Astro.props;
|
|||||||
<div class="max-w-6xl mx-auto px-4 sm:px-6">
|
<div class="max-w-6xl mx-auto px-4 sm:px-6">
|
||||||
<div class="py-12 md:py-20">
|
<div class="py-12 md:py-20">
|
||||||
<div class="text-center pb-12 md:pb-16">
|
<div class="text-center pb-12 md:pb-16">
|
||||||
<h1 class="text-5xl md:text-[3.50rem] font-bold leading-tighter tracking-tighter mb-4">
|
<h1
|
||||||
|
class="text-5xl md:text-[3.50rem] font-bold leading-tighter tracking-tighter mb-4"
|
||||||
|
>
|
||||||
Your website with
|
Your website with
|
||||||
<span class="bg-clip-text text-transparent bg-gradient-to-r from-blue-500 to-pink-500">Astro</span> +
|
<span
|
||||||
<span class="bg-clip-text text-transparent bg-gradient-to-r from-blue-500 to-pink-500 whitespace-nowrap"
|
class="bg-clip-text text-transparent bg-gradient-to-r from-blue-500 to-pink-500"
|
||||||
|
>Astro
|
||||||
|
</span> +
|
||||||
|
<span
|
||||||
|
class="bg-clip-text text-transparent bg-gradient-to-r from-blue-500 to-pink-500 whitespace-nowrap"
|
||||||
>Tailwind CSS
|
>Tailwind CSS
|
||||||
</span>
|
</span>
|
||||||
</h1>
|
</h1>
|
||||||
<div class="max-w-3xl mx-auto">
|
<div class="max-w-3xl mx-auto">
|
||||||
<p class="text-xl text-gray-600 mb-8 dark:text-slate-400">
|
<p class="text-xl text-gray-600 mb-8 dark:text-slate-400">
|
||||||
AstroWind is a production ready template to start your new website using Astro + Tailwind CSS. It has been
|
AstroWind is a production ready template to start your new website
|
||||||
designed following Best Practices, SEO, Accessibility, Dark Mode, great Page Speed, image optimization,
|
using Astro + Tailwind CSS. It has been designed following Best
|
||||||
sitemap generation and more.
|
Practices, SEO, Accessibility, Dark Mode, great Page Speed, image
|
||||||
|
optimization, sitemap generation and more.
|
||||||
</p>
|
</p>
|
||||||
<div class="max-w-xs max-w-none flex justify-center">
|
<div class="max-w-none flex justify-center">
|
||||||
<div>
|
<div>
|
||||||
<a
|
<a
|
||||||
class="btn text-white bg-blue-600 hover:bg-blue-800 mb-4 sm:mb-0"
|
class="btn text-white bg-blue-600 hover:bg-blue-800 mb-4 sm:mb-0 font-bold"
|
||||||
href="https://github.com/onwidget/astrowind"
|
href="https://github.com/onwidget/astrowind"
|
||||||
target="_blank"
|
target="_blank"
|
||||||
rel="noopener"
|
rel="noopener"
|
||||||
@ -33,7 +40,7 @@ const {} = Astro.props;
|
|||||||
<div>
|
<div>
|
||||||
<a
|
<a
|
||||||
class="btn text-white bg-gray-900 hover:bg-gray-800 dark:bg-gray-700 dark:hover:bg-gray-800 ml-4"
|
class="btn text-white bg-gray-900 hover:bg-gray-800 dark:bg-gray-700 dark:hover:bg-gray-800 ml-4"
|
||||||
href="#"
|
href="/blog/"
|
||||||
>Learn more
|
>Learn more
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
@ -45,7 +52,7 @@ const {} = Astro.props;
|
|||||||
<div class="flex flex-col justify-center">
|
<div class="flex flex-col justify-center">
|
||||||
<Picture
|
<Picture
|
||||||
src={import("~/assets/images/hero.jpg")}
|
src={import("~/assets/images/hero.jpg")}
|
||||||
class="mx-auto rounded-md bg-gray-400 dark:bg-slate-700"
|
class="mx-auto rounded-md shadow-lg bg-gray-400 dark:bg-slate-700"
|
||||||
widths={[400, 768]}
|
widths={[400, 768]}
|
||||||
sizes=" (max-width: 767px) 400px, 768px"
|
sizes=" (max-width: 767px) 400px, 768px"
|
||||||
alt="Hero Image"
|
alt="Hero Image"
|
50
src/components/widgets/Pagination.astro
Normal file
50
src/components/widgets/Pagination.astro
Normal file
@ -0,0 +1,50 @@
|
|||||||
|
---
|
||||||
|
const { prevUrl, nextUrl } = Astro.props;
|
||||||
|
---
|
||||||
|
|
||||||
|
<div class="container flex">
|
||||||
|
<div class="flex flex-row mx-auto container justify-between">
|
||||||
|
<a
|
||||||
|
href={prevUrl}
|
||||||
|
class={`btn font-medium text-gray-600 hover:text-gray-900 dark:hover:text-white shadow-none mr-2 ${
|
||||||
|
!prevUrl ? "invisible" : ""
|
||||||
|
}`}
|
||||||
|
>
|
||||||
|
<div class="flex flex-row align-middle">
|
||||||
|
<svg
|
||||||
|
class="w-5 mr-2"
|
||||||
|
fill="currentColor"
|
||||||
|
viewBox="0 0 20 20"
|
||||||
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
|
>
|
||||||
|
<path
|
||||||
|
fill-rule="evenodd"
|
||||||
|
d="M7.707 14.707a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414l4-4a1 1 0 011.414 1.414L5.414 9H17a1 1 0 110 2H5.414l2.293 2.293a1 1 0 010 1.414z"
|
||||||
|
clip-rule="evenodd"></path>
|
||||||
|
</svg>
|
||||||
|
<p class="ml-2">Newer posts</p>
|
||||||
|
</div>
|
||||||
|
</a>
|
||||||
|
<a
|
||||||
|
href={nextUrl}
|
||||||
|
class={`btn font-medium text-gray-600 hover:text-gray-900 dark:hover:text-white shadow-none ${
|
||||||
|
!nextUrl ? "invisible" : ""
|
||||||
|
}`}
|
||||||
|
>
|
||||||
|
<div class="flex flex-row align-middle">
|
||||||
|
<span class="mr-2">Older posts</span>
|
||||||
|
<svg
|
||||||
|
class="w-5 ml-2"
|
||||||
|
fill="currentColor"
|
||||||
|
viewBox="0 0 20 20"
|
||||||
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
|
>
|
||||||
|
<path
|
||||||
|
fill-rule="evenodd"
|
||||||
|
d="M12.293 5.293a1 1 0 011.414 0l4 4a1 1 0 010 1.414l-4 4a1 1 0 01-1.414-1.414L14.586 11H3a1 1 0 110-2h11.586l-2.293-2.293a1 1 0 010-1.414z"
|
||||||
|
clip-rule="evenodd"></path>
|
||||||
|
</svg>
|
||||||
|
</div>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
@ -10,16 +10,18 @@ const {} = Astro.props;
|
|||||||
<div class="w-full lg:w-1/2 px-0 sm:px-8">
|
<div class="w-full lg:w-1/2 px-0 sm:px-8">
|
||||||
<div class="mb-12 lg:mb-0 pb-12 lg:pb-0 border-b lg:border-b-0">
|
<div class="mb-12 lg:mb-0 pb-12 lg:pb-0 border-b lg:border-b-0">
|
||||||
<h2 class="mb-4 text-3xl lg:text-4xl font-bold font-heading">
|
<h2 class="mb-4 text-3xl lg:text-4xl font-bold font-heading">
|
||||||
Sed ac magna sit amet risus tristique interdum, at vel velit in hac habitasse platea dictumst.
|
Sed ac magna sit amet risus tristique interdum, at vel velit in
|
||||||
|
hac habitasse platea dictumst.
|
||||||
</h2>
|
</h2>
|
||||||
<p class="mb-8 text-xl text-gray-600 dark:text-slate-400">
|
<p class="mb-8 text-xl text-gray-600 dark:text-slate-400">
|
||||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi sagittis, quam nec venenatis lobortis, mi
|
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi
|
||||||
risus tempus nulla, sed porttitor est nibh at nulla. Praesent placerat enim ut ex tincidunt vehicula.
|
sagittis, quam nec venenatis lobortis, mi risus tempus nulla,
|
||||||
Fusce sit amet dui tellus.
|
sed porttitor est nibh at nulla. Praesent placerat enim ut ex
|
||||||
|
tincidunt vehicula. Fusce sit amet dui tellus.
|
||||||
</p>
|
</p>
|
||||||
<div class="w-full">
|
<div class="w-full">
|
||||||
<a
|
<a
|
||||||
class="btn bg-blue-600 hover:bg-blue-700 text-white"
|
class="btn bg-blue-600 hover:bg-blue-700 text-white font-bold"
|
||||||
href="https://github.com/onwidget/astrowind"
|
href="https://github.com/onwidget/astrowind"
|
||||||
target="_blank"
|
target="_blank"
|
||||||
rel="noopener"
|
rel="noopener"
|
||||||
@ -40,10 +42,13 @@ const {} = Astro.props;
|
|||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="px-4">
|
<div class="px-4">
|
||||||
<h3 class="mb-4 text-xl font-semibold">Responsive Elements</h3>
|
<h3 class="mb-4 text-xl font-semibold">
|
||||||
|
Responsive Elements
|
||||||
|
</h3>
|
||||||
<p class="text-gray-500 dark:text-gray-400">
|
<p class="text-gray-500 dark:text-gray-400">
|
||||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi sagittis, quam nec venenatis
|
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
|
||||||
lobortis, mi risus tempus nulla.
|
Morbi sagittis, quam nec venenatis lobortis, mi risus tempus
|
||||||
|
nulla.
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
@ -58,8 +63,9 @@ const {} = Astro.props;
|
|||||||
<div class="px-4">
|
<div class="px-4">
|
||||||
<h3 class="mb-4 text-xl font-semibold">Flexible Team</h3>
|
<h3 class="mb-4 text-xl font-semibold">Flexible Team</h3>
|
||||||
<p class="text-gray-500 dark:text-gray-400">
|
<p class="text-gray-500 dark:text-gray-400">
|
||||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi sagittis, quam nec venenatis
|
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
|
||||||
lobortis, mi risus tempus nulla.
|
Morbi sagittis, quam nec venenatis lobortis, mi risus tempus
|
||||||
|
nulla.
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
@ -74,8 +80,9 @@ const {} = Astro.props;
|
|||||||
<div class="px-4">
|
<div class="px-4">
|
||||||
<h3 class="mb-4 text-xl font-semibold">Ecologic Software</h3>
|
<h3 class="mb-4 text-xl font-semibold">Ecologic Software</h3>
|
||||||
<p class="text-gray-500 dark:text-gray-400">
|
<p class="text-gray-500 dark:text-gray-400">
|
||||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi sagittis, quam nec venenatis
|
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
|
||||||
lobortis, mi risus tempus nulla.
|
Morbi sagittis, quam nec venenatis lobortis, mi risus tempus
|
||||||
|
nulla.
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
@ -1,5 +1,5 @@
|
|||||||
---
|
---
|
||||||
import Picture from "~/components/astro/utils/Picture.astro";
|
import Picture from "~/components/core/Picture.astro";
|
||||||
const {} = Astro.props;
|
const {} = Astro.props;
|
||||||
---
|
---
|
||||||
|
|
||||||
@ -9,7 +9,9 @@ const {} = Astro.props;
|
|||||||
<div class="flex">
|
<div class="flex">
|
||||||
<div class="flex flex-col items-center mr-4">
|
<div class="flex flex-col items-center mr-4">
|
||||||
<div>
|
<div>
|
||||||
<div class="flex items-center justify-center w-10 h-10 border rounded-full border-pink-500 border-2">
|
<div
|
||||||
|
class="flex items-center justify-center w-10 h-10 border rounded-full border-pink-500 border-2"
|
||||||
|
>
|
||||||
<svg
|
<svg
|
||||||
xmlns="http://www.w3.org/2000/svg"
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
class="w-5 h-5 text-gray-600 dark:text-slate-200"
|
class="w-5 h-5 text-gray-600 dark:text-slate-200"
|
||||||
@ -33,18 +35,23 @@ const {} = Astro.props;
|
|||||||
<div class="w-px h-full bg-gray-300 dark:bg-slate-500"></div>
|
<div class="w-px h-full bg-gray-300 dark:bg-slate-500"></div>
|
||||||
</div>
|
</div>
|
||||||
<div class="pt-1 pb-8">
|
<div class="pt-1 pb-8">
|
||||||
<p class="mb-2 text-xl font-bold text-gray-900 dark:text-slate-300">Step 1</p>
|
<p class="mb-2 text-xl font-bold text-gray-900 dark:text-slate-300">
|
||||||
|
Step 1
|
||||||
|
</p>
|
||||||
<p>
|
<p>
|
||||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi sagittis, quam nec venenatis lobortis, mi
|
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi
|
||||||
risus tempus nulla, sed porttitor est nibh at nulla. Praesent placerat enim ut ex tincidunt vehicula. Fusce
|
sagittis, quam nec venenatis lobortis, mi risus tempus nulla, sed
|
||||||
sit amet dui tellus.
|
porttitor est nibh at nulla. Praesent placerat enim ut ex tincidunt
|
||||||
|
vehicula. Fusce sit amet dui tellus.
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="flex">
|
<div class="flex">
|
||||||
<div class="flex flex-col items-center mr-4">
|
<div class="flex flex-col items-center mr-4">
|
||||||
<div>
|
<div>
|
||||||
<div class="flex items-center justify-center w-10 h-10 border rounded-full border-pink-500 border-2">
|
<div
|
||||||
|
class="flex items-center justify-center w-10 h-10 border rounded-full border-pink-500 border-2"
|
||||||
|
>
|
||||||
<svg
|
<svg
|
||||||
xmlns="http://www.w3.org/2000/svg"
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
class="w-5 h-5 text-gray-600 dark:text-slate-200"
|
class="w-5 h-5 text-gray-600 dark:text-slate-200"
|
||||||
@ -68,17 +75,22 @@ const {} = Astro.props;
|
|||||||
<div class="w-px h-full bg-gray-300 dark:bg-slate-500"></div>
|
<div class="w-px h-full bg-gray-300 dark:bg-slate-500"></div>
|
||||||
</div>
|
</div>
|
||||||
<div class="pt-1 pb-8">
|
<div class="pt-1 pb-8">
|
||||||
<p class="mb-2 text-xl font-bold text-gray-900 dark:text-slate-300">Step 2</p>
|
<p class="mb-2 text-xl font-bold text-gray-900 dark:text-slate-300">
|
||||||
|
Step 2
|
||||||
|
</p>
|
||||||
<p>
|
<p>
|
||||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi sagittis, quam nec venenatis lobortis, mi
|
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi
|
||||||
risus tempus nulla, sed porttitor est nibh at nulla.
|
sagittis, quam nec venenatis lobortis, mi risus tempus nulla, sed
|
||||||
|
porttitor est nibh at nulla.
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="flex">
|
<div class="flex">
|
||||||
<div class="flex flex-col items-center mr-4">
|
<div class="flex flex-col items-center mr-4">
|
||||||
<div>
|
<div>
|
||||||
<div class="flex items-center justify-center w-10 h-10 border rounded-full border-pink-500 border-2">
|
<div
|
||||||
|
class="flex items-center justify-center w-10 h-10 border rounded-full border-pink-500 border-2"
|
||||||
|
>
|
||||||
<svg
|
<svg
|
||||||
xmlns="http://www.w3.org/2000/svg"
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
class="w-5 h-5 text-gray-600 dark:text-slate-200"
|
class="w-5 h-5 text-gray-600 dark:text-slate-200"
|
||||||
@ -102,17 +114,22 @@ const {} = Astro.props;
|
|||||||
<div class="w-px h-full bg-gray-300 dark:bg-slate-500"></div>
|
<div class="w-px h-full bg-gray-300 dark:bg-slate-500"></div>
|
||||||
</div>
|
</div>
|
||||||
<div class="pt-1 pb-8">
|
<div class="pt-1 pb-8">
|
||||||
<p class="mb-2 text-xl font-bold text-gray-900 dark:text-slate-300">Step 3</p>
|
<p class="mb-2 text-xl font-bold text-gray-900 dark:text-slate-300">
|
||||||
|
Step 3
|
||||||
|
</p>
|
||||||
<p>
|
<p>
|
||||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi sagittis, quam nec venenatis lobortis, mi
|
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi
|
||||||
risus tempus nulla, sed porttitor est nibh at nulla.
|
sagittis, quam nec venenatis lobortis, mi risus tempus nulla, sed
|
||||||
|
porttitor est nibh at nulla.
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="flex">
|
<div class="flex">
|
||||||
<div class="flex flex-col items-center mr-4">
|
<div class="flex flex-col items-center mr-4">
|
||||||
<div>
|
<div>
|
||||||
<div class="flex items-center justify-center w-10 h-10 border rounded-full border-blue-600 border-2">
|
<div
|
||||||
|
class="flex items-center justify-center w-10 h-10 border rounded-full border-blue-600 border-2"
|
||||||
|
>
|
||||||
<svg
|
<svg
|
||||||
xmlns="http://www.w3.org/2000/svg"
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
class="w-6 text-gray-600 dark:text-slate-200"
|
class="w-6 text-gray-600 dark:text-slate-200"
|
||||||
@ -132,7 +149,9 @@ const {} = Astro.props;
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="pt-1">
|
<div class="pt-1">
|
||||||
<p class="mb-2 text-xl font-bold text-gray-900 dark:text-slate-300">Ready!</p>
|
<p class="mb-2 text-xl font-bold text-gray-900 dark:text-slate-300">
|
||||||
|
Ready!
|
||||||
|
</p>
|
||||||
<p class="text-gray-700"></p>
|
<p class="text-gray-700"></p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
Reference in New Issue
Block a user