feat: quickstart

This commit is contained in:
Torsten Dittmann
2023-09-25 15:56:58 +02:00
parent cb1c1293f9
commit 28a8a73e04
5 changed files with 121 additions and 25 deletions

View File

@@ -357,8 +357,7 @@
</li> </li>
<li> <li>
<div class="aw-card is-full-color u-opacity-20"> <div class="aw-card is-full-color u-opacity-20">
<img src="/images/icons/illustrated/dark/messaging.png" alt="" class="u-only-dark" width="48" height="48" /> <img src="/images/icons/illustrated/dark/messaging.png" alt="" width="48" height="48" />
<img src="/images/icons/illustrated/light/messaging.png" alt="" class="u-only-light" width="48" height="48" />
<h4 class="aw-sub-body-500 aw-u-color-text-primary u-margin-block-start-8"> <h4 class="aw-sub-body-500 aw-u-color-text-primary u-margin-block-start-8">
Messaging Messaging
</h4> </h4>

View File

@@ -1,9 +1,10 @@
<script lang="ts"> <script lang="ts">
import { page } from '$app/stores';
import Docs from '$lib/layouts/Docs.svelte'; import Docs from '$lib/layouts/Docs.svelte';
import Sidebar from '../Sidebar.svelte'; import Sidebar from '../Sidebar.svelte';
</script> </script>
<Docs variant="two-side-navs"> <Docs variant={$page.url.pathname.endsWith('/quick-starts') ? 'default' : 'two-side-navs'}>
<Sidebar /> <Sidebar />
<slot /> <slot />
</Docs> </Docs>

View File

@@ -1,23 +1,121 @@
<script> <script lang="ts">
let qs = [ import { MainFooter } from '$lib/components';
'android',
'angular', type QuickStart = {
'apple', title: string;
'astro', icon: string;
'flutter', image: string;
'nextjs', href: string;
'nuxt', };
'qwik',
'react', type QuickStarts = Array<{
'sveltekit', title: string;
'vuejs' quickStarts: QuickStart[];
}>;
const quickStarts: QuickStarts = [
{
title: 'Web App',
quickStarts: [
{
title: 'Next.js',
icon: 'icon-next_js',
image: '/images/blog/placeholder.png',
href: 'nextjs'
},
{
title: 'Vue.js',
icon: 'icon-vue_js',
image: '/images/blog/placeholder.png',
href: 'vuejs'
},
{
title: 'SvelteKit',
icon: 'icon-svelte',
image: '/images/blog/placeholder.png',
href: 'sveltekit'
},
{
title: 'Nuxt',
icon: 'icon-nuxt_js',
image: '/images/blog/placeholder.png',
href: 'nuxt'
},
{
title: 'Angular',
icon: 'icon-angular',
image: '/images/blog/placeholder.png',
href: 'angular'
},
{
title: 'Astro',
icon: 'icon-astro',
image: '/images/blog/placeholder.png',
href: 'astro'
}
]
},
{
title: 'Mobile and Native',
quickStarts: [
{
title: 'Flutter',
icon: 'icon-flutter',
image: '/images/blog/placeholder.png',
href: 'flutter'
},
{
title: 'Android',
icon: 'icon-android',
image: '/images/blog/placeholder.png',
href: 'android'
},
]
},
{
title: 'Server',
quickStarts: []
}
]; ];
</script> </script>
<ul class="aw-list"> <main class="aw-main-section">
{#each qs as q} <article class="aw-article">
<li> <header class="aw-article-header">
<a class="aw-link" href={`/docs/quick-starts/${q}`}>{q}</a> <div class="aw-article-header-start u-flex-vertical aw-u-cross-start">
</li> <div class="u-position-relative u-flex u-cross-center">
{/each} <h1 class="aw-title">Quick start</h1>
</ul> </div>
</div>
<div class="aw-article-header-end" />
</header>
<div class="aw-article-content aw-u-gap-80">
{#each quickStarts as category}
<section class="u-flex-vertical u-gap-24">
<h2 class="aw-eyebrow">{category.title}</h2>
<ul class="aw-grid-row-4 aw-grid-row-4-mobile-2">
{#each category.quickStarts as quickStart}
<li class="is-mobile-col-span-2">
<a href={`/docs/quick-starts/${quickStart.href}`}>
<img class="aw-media" src={quickStart.image} alt="" />
<div class="u-flex u-cross-baseline u-gap-4">
<span class="{quickStart.icon} aw-u-font-size-24" aria-hidden="true" />
<h4 class="aw-sub-body-500 aw-u-color-text-primary">{quickStart.title}</h4>
</div>
</a>
</li>
{/each}
</ul>
</section>
{/each}
</div>
</article>
<MainFooter variant="docs" />
</main>
<style lang="scss">
.aw-media {
aspect-ratio: 16/9;
}
</style>

View File

@@ -1,6 +1,4 @@
<script lang="ts"> <script lang="ts">
import Docs from '$lib/layouts/Docs.svelte';
import Sidebar from '../Sidebar.svelte';
import { MainFooter } from '$lib/components'; import { MainFooter } from '$lib/components';
</script> </script>

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB