feat(docs): setup all docs

This commit is contained in:
thomas
2023-09-18 22:40:09 +02:00
parent ea7eee2d4a
commit 412e105c5e
45 changed files with 526 additions and 36 deletions

View File

@@ -5,21 +5,331 @@ import { defineConfig } from 'astro/config';
export default defineConfig({
integrations: [
starlight({
title: 'My Docs',
title: 'Angular Challenges',
logo: {
src: './public/angular-challenge.webp',
alt: 'angular challenges logo',
},
favicon: './public/angular-challenge.ico',
social: {
github: 'https://github.com/withastro/starlight',
linkedin: 'https://www.linkedin.com/in/thomas-laforge-2b05a945/',
twitter: 'https://twitter.com/laforge_toma',
},
sidebar: [
{
label: 'Guides',
items: [{ label: 'Example Guide', link: '/guides/example/' }],
autogenerate: { directory: 'guides' },
},
{
label: 'Reference',
label: 'Challenges',
items: [
{
label: 'Example Guide',
items: [{ label: 'Example Guide', link: '/guides/example/' }],
label: 'Angular',
items: [
{
label: 'Projection',
link: '/challenges/angular/projection',
badge: {
text: 'E',
variant: 'success',
},
},
{
label: 'Directive enhancement',
link: '/challenges/angular/directive-enhancement',
badge: {
text: 'M',
variant: 'caution',
},
},
{
label: 'ContextOutlet Typing',
link: '/challenges/angular/context-outlet-typing',
badge: {
text: 'H',
variant: 'danger',
},
},
{
label: 'CRUD',
link: '/challenges/angular/crud',
badge: {
text: 'E',
variant: 'success',
},
},
{
label: 'Permissions',
link: '/challenges/angular/permissions',
badge: {
text: 'M',
variant: 'caution',
},
},
{
label: 'Simple Pure Pipe',
link: '/challenges/angular/pipe-pure',
badge: {
text: 'E',
variant: 'success',
},
},
{
label: 'WrapFn Pipe',
link: '/challenges/angular/pipe-wrapFn',
badge: {
text: 'M',
variant: 'caution',
},
},
{
label: 'Utility Pipe',
link: '/challenges/angular/pipe-utility',
badge: {
text: 'H',
variant: 'danger',
},
},
{
label: 'Change Dectection - scroll',
link: '/challenges/angular/scroll-cd',
badge: {
text: 'M',
variant: 'caution',
},
},
{
label: 'Styling',
link: '/challenges/angular/styling',
badge: {
text: 'M',
variant: 'caution',
},
},
{
label: 'Dependancy Injection',
link: '/challenges/angular/di',
badge: {
text: 'H',
variant: 'danger',
},
},
{
label: 'Anchor Scrolling',
link: '/challenges/angular/anchor-scrolling',
badge: {
text: 'E',
variant: 'success',
},
},
{
label: 'Router Input',
link: '/challenges/angular/router-input',
badge: {
text: 'E',
variant: 'success',
},
},
{
label: 'Interop Rxjs Signal',
link: '/challenges/angular/interop-rxjs-signal',
badge: {
text: 'H',
variant: 'danger',
},
},
{
label: 'Module to Standalone',
link: '/challenges/angular/modaule-to-standalone',
badge: {
text: 'E',
variant: 'success',
},
},
{
label: 'Bug - Change Detection',
link: '/challenges/angular/bug-cd',
badge: {
text: 'M',
variant: 'caution',
},
},
{
label: "Component's Decoupling",
link: '/challenges/angular/decoupling',
badge: {
text: 'M',
variant: 'caution',
},
},
],
},
{
label: 'Angular - Performance',
items: [
{
label: 'Default vs OnPush',
link: '/challenges/angular-performance/default-onpush',
badge: {
text: 'E',
variant: 'success',
},
},
],
},
{
label: 'Testing',
items: [
{
label: 'Router',
link: '/challenges/testing/router',
badge: {
text: 'M',
variant: 'caution',
},
},
{
label: 'Nested Component',
link: '/challenges/testing/nested-comp',
badge: {
text: 'M',
variant: 'caution',
},
},
{
label: 'Input Output',
link: '/challenges/testing/input-output',
badge: {
text: 'M',
variant: 'caution',
},
},
{
label: 'Modal',
link: '/challenges/testing/modal',
badge: {
text: 'M',
variant: 'caution',
},
},
{
label: 'harness',
link: '/challenges/testing/harness',
badge: {
text: 'E',
variant: 'success',
},
},
{
label: 'Harness Creation',
link: '/challenges/testing/harness-creation',
badge: {
text: 'M',
variant: 'caution',
},
},
{
label: 'Checkbox',
link: '/challenges/testing/checkbox',
badge: {
text: 'E',
variant: 'success',
},
},
{
label: 'Reallife Application',
link: '/challenges/testing/real-application',
badge: {
text: 'H',
variant: 'danger',
},
},
],
},
{
label: 'RxJs',
items: [
{
label: 'Bug - Chaining Operators',
link: '/challenges/rxjs/bug-chaining-operator',
badge: {
text: 'M',
variant: 'caution',
},
},
{
label: 'Race Condition',
link: '/challenges/rxjs/race-condition',
badge: {
text: 'E',
variant: 'success',
},
},
],
},
{
label: 'Nx',
items: [
{
label: 'Extending Library Generator',
link: '/challenges/nx/generator-lib-ext',
badge: {
text: 'H',
variant: 'danger',
},
},
{
label: 'Component Generator',
link: '/challenges/nx/generator-comp',
badge: {
text: 'M',
variant: 'caution',
},
},
{
label: 'Custom Eslint Rule',
link: '/challenges/nx/forbid-enum-rule',
badge: {
text: 'E',
variant: 'success',
},
},
],
},
{
label: 'NgRx',
items: [
{
label: 'Effect vs Selector',
link: '/challenges/ngrx/effect-selector',
badge: {
text: 'M',
variant: 'caution',
},
},
{
label: 'Power of Effects',
link: '/challenges/ngrx/power-effect',
badge: {
text: 'H',
variant: 'danger',
},
},
],
},
{
label: 'Typescript',
items: [
{
label: 'Function Overload',
link: '/challenges/typescript/overload-fn',
badge: {
text: 'M',
variant: 'caution',
},
},
],
},
],
},