Compare commits
11 Commits
937b87938f
...
64567e0441
Author | SHA1 | Date | |
---|---|---|---|
|
64567e0441 | ||
|
17feb86655 | ||
|
a8aec707dc | ||
|
5c2ef4127a | ||
|
795d1e8c13 | ||
|
357df29de0 | ||
|
c1431a4d7e | ||
|
e15aebe3cd | ||
|
dd38a2feeb | ||
|
364f6ac2f0 | ||
|
7972561808 |
@ -18,7 +18,7 @@ npm init astro -- --template Charca/astro-blog-template
|
|||||||
|
|
||||||
## ✨ Features:
|
## ✨ Features:
|
||||||
|
|
||||||
- ✅ Astro 1.0
|
- ✅ Astro 4.0
|
||||||
- ✅ Dark Mode
|
- ✅ Dark Mode
|
||||||
- ✅ Full Markdown support
|
- ✅ Full Markdown support
|
||||||
- ✅ SEO-friendly setup with canonical URLs and OpenGraph data
|
- ✅ SEO-friendly setup with canonical URLs and OpenGraph data
|
||||||
|
@ -1,6 +1,9 @@
|
|||||||
import { defineConfig } from 'astro/config'
|
import { defineConfig } from 'astro/config'
|
||||||
import svelte from '@astrojs/svelte'
|
import svelte from '@astrojs/svelte'
|
||||||
import mdx from '@astrojs/mdx'
|
import mdx from '@astrojs/mdx'
|
||||||
|
import remarkGfm from 'remark-gfm'
|
||||||
|
import remarkSmartypants from 'remark-smartypants'
|
||||||
|
import rehypeExternalLinks from 'rehype-external-links'
|
||||||
|
|
||||||
// https://astro.build/config
|
// https://astro.build/config
|
||||||
export default defineConfig({
|
export default defineConfig({
|
||||||
@ -10,9 +13,10 @@ export default defineConfig({
|
|||||||
shikiConfig: {
|
shikiConfig: {
|
||||||
theme: 'nord',
|
theme: 'nord',
|
||||||
},
|
},
|
||||||
|
remarkPlugins: [remarkGfm, remarkSmartypants],
|
||||||
rehypePlugins: [
|
rehypePlugins: [
|
||||||
[
|
[
|
||||||
'rehype-external-links',
|
rehypeExternalLinks,
|
||||||
{
|
{
|
||||||
target: '_blank',
|
target: '_blank',
|
||||||
},
|
},
|
||||||
|
12171
package-lock.json
generated
14
package.json
@ -9,13 +9,13 @@
|
|||||||
"preview": "astro preview",
|
"preview": "astro preview",
|
||||||
"astro": "astro"
|
"astro": "astro"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
|
||||||
"@astrojs/mdx": "^0.8.3",
|
|
||||||
"@astrojs/svelte": "^1.0.0",
|
|
||||||
"astro": "^1.0.3",
|
|
||||||
"rehype-external-links": "^2.0.0"
|
|
||||||
},
|
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"reading-time": "^1.5.0"
|
"@astrojs/mdx": "^2.0.0",
|
||||||
|
"@astrojs/svelte": "^5.0.0",
|
||||||
|
"astro": "^4.0.1",
|
||||||
|
"reading-time": "^1.5.0",
|
||||||
|
"rehype-external-links": "^3.0.0",
|
||||||
|
"remark-gfm": "^4.0.0",
|
||||||
|
"remark-smartypants": "^2.0.0"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Before Width: | Height: | Size: 24 KiB |
Before Width: | Height: | Size: 28 KiB |
Before Width: | Height: | Size: 73 KiB |
Before Width: | Height: | Size: 5.6 KiB |
Before Width: | Height: | Size: 17 KiB |
BIN
public/assets/reuterDark.png
Normal file
After Width: | Height: | Size: 411 KiB |
BIN
public/assets/reuterLight.png
Normal file
After Width: | Height: | Size: 417 KiB |
BIN
public/assets/reuterLight3.png
Normal file
After Width: | Height: | Size: 390 KiB |
BIN
public/assets/reuterdev.png
Normal file
After Width: | Height: | Size: 417 KiB |
Before Width: | Height: | Size: 387 KiB |
Before Width: | Height: | Size: 4.2 KiB |
@ -1,14 +1,15 @@
|
|||||||
---
|
---
|
||||||
|
import { ViewTransitions } from 'astro:transitions'
|
||||||
import '../styles/fonts.css'
|
import '../styles/fonts.css'
|
||||||
import '../styles/global.css'
|
import '../styles/global.css'
|
||||||
|
|
||||||
export interface Props {
|
export interface Props {
|
||||||
title: string;
|
title: string
|
||||||
description: string;
|
description: string
|
||||||
permalink: string;
|
permalink: string
|
||||||
}
|
}
|
||||||
|
|
||||||
const { title, description, permalink } = Astro.props;
|
const { title, description, permalink } = Astro.props
|
||||||
const socialUrl = Astro.site.href + 'assets/social.png'
|
const socialUrl = Astro.site.href + 'assets/social.png'
|
||||||
---
|
---
|
||||||
|
|
||||||
@ -17,7 +18,6 @@ const socialUrl = Astro.site.href + 'assets/social.png'
|
|||||||
<meta name="viewport" content="width=device-width" />
|
<meta name="viewport" content="width=device-width" />
|
||||||
<link rel="icon" type="image/x-icon" href="/favicon.ico" />
|
<link rel="icon" type="image/x-icon" href="/favicon.ico" />
|
||||||
|
|
||||||
|
|
||||||
<!-- Primary Meta Tags -->
|
<!-- Primary Meta Tags -->
|
||||||
<title>{title}</title>
|
<title>{title}</title>
|
||||||
<meta name="title" content={title} />
|
<meta name="title" content={title} />
|
||||||
@ -37,13 +37,18 @@ const socialUrl = Astro.site.href + 'assets/social.png'
|
|||||||
<meta property="twitter:description" content={description} />
|
<meta property="twitter:description" content={description} />
|
||||||
<meta property="twitter:image" content={socialUrl} />
|
<meta property="twitter:image" content={socialUrl} />
|
||||||
|
|
||||||
|
<ViewTransitions />
|
||||||
|
|
||||||
<!-- This is intentionally inlined to avoid FOUC -->
|
<!-- This is intentionally inlined to avoid FOUC -->
|
||||||
<script>
|
<script is:inline>
|
||||||
const root = document.documentElement;
|
const root = document.documentElement
|
||||||
const theme = localStorage.getItem('theme');
|
const theme = localStorage.getItem('theme')
|
||||||
if (theme === 'dark' || (!theme) && window.matchMedia('(prefers-color-scheme: dark)').matches) {
|
if (
|
||||||
root.classList.add('theme-dark');
|
theme === 'dark' ||
|
||||||
|
(!theme && window.matchMedia('(prefers-color-scheme: dark)').matches)
|
||||||
|
) {
|
||||||
|
root.classList.add('theme-dark')
|
||||||
} else {
|
} else {
|
||||||
root.classList.remove('theme-dark');
|
root.classList.remove('theme-dark')
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
@ -16,6 +16,6 @@ const { current = '' } = Astro.props;
|
|||||||
</style>
|
</style>
|
||||||
|
|
||||||
<header>
|
<header>
|
||||||
<Logo />
|
<Logo/>
|
||||||
<Nav current={current} />
|
<Nav current={current} />
|
||||||
</header>
|
</header>
|
||||||
|
@ -1,10 +1,32 @@
|
|||||||
|
|
||||||
|
|
||||||
<style>
|
<style>
|
||||||
img {
|
img {
|
||||||
display: block;
|
display: block;
|
||||||
width: 75px;
|
width: 75px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@media screen and (max-width: 520px) {
|
||||||
|
img {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.light {
|
||||||
|
visibility: hidden;
|
||||||
|
}
|
||||||
|
|
||||||
|
.dark {
|
||||||
|
visibility: hidden;
|
||||||
|
}
|
||||||
|
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
<a href="/">
|
<div class="light">
|
||||||
<img alt="Blog Logo" src="/assets/logo.webp" width="75" height="50">
|
<img alt="Blog Logo" src="/assets/reuterLight3.png" width="200" height="200" />
|
||||||
|
</div>
|
||||||
|
<!--
|
||||||
|
<div class="dark">
|
||||||
|
<img alt="Blog Logo" src="/assets/reuterDark.png" width="200" height="200" />
|
||||||
|
</div> -->
|
||||||
</a>
|
</a>
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
---
|
---
|
||||||
import ThemeToggleButton from './ThemeToggleButton.svelte';
|
import ThemeToggleButton from './ThemeToggleButton.svelte';
|
||||||
const { current = '' } = Astro.props;
|
var { current = '' } = Astro.props;
|
||||||
---
|
---
|
||||||
|
|
||||||
<style>
|
<style>
|
||||||
|
@ -200,3 +200,5 @@ Incididunt in culpa cupidatat mollit cillum qui proident sit. In cillum aliquip
|
|||||||
<iframe width="100%" height="400" src="https://www.youtube.com/embed/PCp2iXA1uLE" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
|
<iframe width="100%" height="400" src="https://www.youtube.com/embed/PCp2iXA1uLE" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
|
||||||
|
|
||||||
Reprehenderit non eu quis in ad elit esse qui aute id [incididunt](#) dolore cillum. Esse laboris consequat dolor anim exercitation tempor aliqua deserunt velit magna laboris. Culpa culpa minim duis amet mollit do quis amet commodo nulla irure.
|
Reprehenderit non eu quis in ad elit esse qui aute id [incididunt](#) dolore cillum. Esse laboris consequat dolor anim exercitation tempor aliqua deserunt velit magna laboris. Culpa culpa minim duis amet mollit do quis amet commodo nulla irure.
|
||||||
|
|
||||||
|
[Hello World](/blog/hello-world)
|
||||||
|
@ -9,7 +9,11 @@ const permalink = `${Astro.site.href}about`;
|
|||||||
<BaseLayout title={title} description={description} permalink={permalink} current="about">
|
<BaseLayout title={title} description={description} permalink={permalink} current="about">
|
||||||
<div class="container">
|
<div class="container">
|
||||||
<h1>About</h1>
|
<h1>About</h1>
|
||||||
<figure class="about-image">
|
|
||||||
|
<p>
|
||||||
|
Reuter
|
||||||
|
</p>
|
||||||
|
<!-- <figure class="about-image">
|
||||||
<img src="/assets/about-illustration.webp" alt="Illustration of a notebook" width="330">
|
<img src="/assets/about-illustration.webp" alt="Illustration of a notebook" width="330">
|
||||||
<figcaption>
|
<figcaption>
|
||||||
Illustration by
|
Illustration by
|
||||||
@ -17,13 +21,7 @@ const permalink = `${Astro.site.href}about`;
|
|||||||
from
|
from
|
||||||
<a href="https://icons8.com/illustrations" target="_blank" rel="noopener">Ouch!</a>
|
<a href="https://icons8.com/illustrations" target="_blank" rel="noopener">Ouch!</a>
|
||||||
</figcaption>
|
</figcaption>
|
||||||
</figure>
|
</figure> -->
|
||||||
<p>Text placeholder via <a href="https://jeffsum.com/" target="_blank">Jeffsum</a>.</p>
|
|
||||||
<p>So you two dig up, dig up dinosaurs? What do they got in there? King Kong? My dad once told me, laugh and the world laughs with you, Cry, and I'll give you something to cry about you little bastard! Life finds a way. God creates dinosaurs. God destroys dinosaurs. God creates Man. Man destroys God. Man creates Dinosaurs.</p>
|
|
||||||
<p>You really think you can fly that thing? You know what? It is beets. I've crashed into a beet truck. Forget the fat lady! You're obsessed with the fat lady! Drive us out of here! Is this my espresso machine? Wh-what is-h-how did you get my espresso machine?</p>
|
|
||||||
<p>Hey, you know how I'm, like, always trying to save the planet? Here's my chance. Hey, take a look at the earthlings. Goodbye! I was part of something special. Just my luck, no ice. You're a very talented young man, with your own clever thoughts and ideas. Do you need a manager?</p>
|
|
||||||
<p>Jaguar shark! So tell me - does it really exist? This thing comes fully loaded. AM/FM radio, reclining bucket seats, and... power windows. Yes, Yes, without the oops! You're a very talented young man, with your own clever thoughts and ideas. Do you need a manager?</p>
|
|
||||||
<p>Yes, Yes, without the oops! Do you have any idea how long it takes those cups to decompose. They're using our own satellites against us. And the clock is ticking. Do you have any idea how long it takes those cups to decompose. My dad once told me, laugh and the world laughs with you, Cry, and I'll give you something to cry about you little bastard!</p>
|
|
||||||
</div>
|
</div>
|
||||||
</BaseLayout>
|
</BaseLayout>
|
||||||
|
|
||||||
|
@ -14,7 +14,7 @@ export async function getStaticPaths() {
|
|||||||
const { Content, frontmatter } = Astro.props.post;
|
const { Content, frontmatter } = Astro.props.post;
|
||||||
const { title, description, publishDate } = frontmatter;
|
const { title, description, publishDate } = frontmatter;
|
||||||
const { slug, readingTime } = getPostData(Astro.props.post);
|
const { slug, readingTime } = getPostData(Astro.props.post);
|
||||||
const permalink = `${Astro.site.href}${slug}`;
|
const permalink = `${Astro.site.href}blog/${slug}`;
|
||||||
---
|
---
|
||||||
|
|
||||||
<BaseLayout title={title} description={description} permalink={permalink} current="blog">
|
<BaseLayout title={title} description={description} permalink={permalink} current="blog">
|
||||||
|
@ -9,11 +9,12 @@ const permalink = Astro.site.href;
|
|||||||
<BaseLayout title={title} description={description} permalink={permalink}>
|
<BaseLayout title={title} description={description} permalink={permalink}>
|
||||||
<div class="home-container">
|
<div class="home-container">
|
||||||
<div class="home-copy">
|
<div class="home-copy">
|
||||||
<h1>Welcome to your new Astro Blog</h1>
|
<h1>Welcome to Reuter Development</h1>
|
||||||
<p>Check out the docs on <a href="https://www.github.com/Charca/astro-blog-template" target="_blank" rel="noopener">GitHub</a> to get started.</p>
|
<p>Where we make a clearing for you, cutting down the obstacles in your path.
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="hero-image-container">
|
|
||||||
|
<!-- <div class="hero-image-container">
|
||||||
<picture>
|
<picture>
|
||||||
<source srcset="/assets/home-illustration.webp" media="(min-width: 600px)">
|
<source srcset="/assets/home-illustration.webp" media="(min-width: 600px)">
|
||||||
<img class="hero-image" alt="Illustration of person reading a book" src="/assets/home-illustration-small.webp" width="550" height="466">
|
<img class="hero-image" alt="Illustration of person reading a book" src="/assets/home-illustration-small.webp" width="550" height="466">
|
||||||
@ -25,9 +26,18 @@ const permalink = Astro.site.href;
|
|||||||
<a href="https://icons8.com/illustrations" target="_blank" rel="noopener">Ouch!</a>
|
<a href="https://icons8.com/illustrations" target="_blank" rel="noopener">Ouch!</a>
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div> -->
|
||||||
</BaseLayout>
|
</BaseLayout>
|
||||||
|
|
||||||
|
|
||||||
|
<h1>What defines Reuter Development</h1>
|
||||||
|
|
||||||
|
<ul>
|
||||||
|
<li>Client-focused</li>
|
||||||
|
<li>Strong Center</li>
|
||||||
|
<li></li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
<style>
|
<style>
|
||||||
.home-container {
|
.home-container {
|
||||||
align-items: center;
|
align-items: center;
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
:root {
|
:root :theme-light{
|
||||||
--background-body: #fff;
|
--background-body: #fff;
|
||||||
--text-main: #36393b;
|
--text-main: #36393b;
|
||||||
--text-secondary: #6b6f72;
|
--text-secondary: #6b6f72;
|
||||||
@ -14,6 +14,17 @@
|
|||||||
--primary-color: #548e9b;
|
--primary-color: #548e9b;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
html {
|
||||||
|
overflow-y: scroll;
|
||||||
|
}
|
||||||
|
|
||||||
|
@supports (scrollbar-gutter: stable) {
|
||||||
|
html {
|
||||||
|
overflow-y: auto;
|
||||||
|
scrollbar-gutter: stable;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
*,
|
*,
|
||||||
*:before,
|
*:before,
|
||||||
*:after {
|
*:after {
|
||||||
|