Replace main content with feat/general
Some checks failed
Build and Deploy DAVE | DMGs Site / deploy (push) Failing after 1m41s

This commit is contained in:
2025-11-12 09:20:58 +01:00
128 changed files with 4402 additions and 3025 deletions

View File

@@ -1,39 +1,6 @@
<component name="InspectionProjectProfileManager"> <component name="InspectionProjectProfileManager">
<profile version="1.0"> <profile version="1.0">
<option name="myName" value="Project Default" /> <option name="myName" value="Project Default" />
<inspection_tool class="CssDeprecatedValue" enabled="false" level="ERROR" enabled_by_default="false" />
<inspection_tool class="CssInvalidAtRule" enabled="false" level="ERROR" enabled_by_default="false" />
<inspection_tool class="CssInvalidCharsetRule" enabled="false" level="WARNING" enabled_by_default="false" />
<inspection_tool class="CssInvalidCustomPropertyAtRuleDeclaration" enabled="false" level="ERROR" enabled_by_default="false" />
<inspection_tool class="CssInvalidCustomPropertyAtRuleName" enabled="false" level="ERROR" enabled_by_default="false" />
<inspection_tool class="CssInvalidFunction" enabled="false" level="ERROR" enabled_by_default="false" />
<inspection_tool class="CssInvalidHtmlTagReference" enabled="false" level="WARNING" enabled_by_default="false" />
<inspection_tool class="CssInvalidImport" enabled="false" level="WARNING" enabled_by_default="false" />
<inspection_tool class="CssInvalidMediaFeature" enabled="false" level="ERROR" enabled_by_default="false" />
<inspection_tool class="CssInvalidPropertyValue" enabled="false" level="WARNING" enabled_by_default="false" editorAttributes="WARNING_ATTRIBUTES" />
<inspection_tool class="CssInvalidPseudoSelector" enabled="false" level="ERROR" enabled_by_default="false" />
<inspection_tool class="CssMissingComma" enabled="false" level="WARNING" enabled_by_default="false" />
<inspection_tool class="CssNegativeValue" enabled="false" level="ERROR" enabled_by_default="false" />
<inspection_tool class="CssNoGenericFontName" enabled="false" level="WARNING" enabled_by_default="false" />
<inspection_tool class="CssNonIntegerLengthInPixels" enabled="false" level="WEAK WARNING" enabled_by_default="false" />
<inspection_tool class="CssOverwrittenProperties" enabled="false" level="WARNING" enabled_by_default="false" />
<inspection_tool class="CssRedundantUnit" enabled="false" level="WARNING" enabled_by_default="false" />
<inspection_tool class="CssReplaceWithShorthandSafely" enabled="false" level="WEAK WARNING" enabled_by_default="false" />
<inspection_tool class="CssReplaceWithShorthandUnsafely" enabled="false" level="INFORMATION" enabled_by_default="false" />
<inspection_tool class="CssUnknownProperty" enabled="false" level="WARNING" enabled_by_default="false">
<option name="myCustomPropertiesEnabled" value="false" />
<option name="myIgnoreVendorSpecificProperties" value="false" />
<option name="myCustomPropertiesList">
<value>
<list size="0" />
</value>
</option>
</inspection_tool>
<inspection_tool class="CssUnknownTarget" enabled="false" level="ERROR" enabled_by_default="false" />
<inspection_tool class="CssUnknownUnit" enabled="false" level="ERROR" enabled_by_default="false" />
<inspection_tool class="CssUnresolvedClassInComposesRule" enabled="false" level="ERROR" enabled_by_default="false" />
<inspection_tool class="CssUnresolvedCustomProperty" enabled="false" level="ERROR" enabled_by_default="false" />
<inspection_tool class="CssUnusedSymbol" enabled="false" level="WARNING" enabled_by_default="false" />
<inspection_tool class="Eslint" enabled="true" level="WARNING" enabled_by_default="true" /> <inspection_tool class="Eslint" enabled="true" level="WARNING" enabled_by_default="true" />
<inspection_tool class="Stylelint" enabled="true" level="ERROR" enabled_by_default="true" /> <inspection_tool class="Stylelint" enabled="true" level="ERROR" enabled_by_default="true" />
</profile> </profile>

View File

@@ -1,22 +1,14 @@
import { config } from '@keystatic/core'; import { config } from '@keystatic/core';
import NavSingleton from '@/keystatic/singletons/navigation';
import AuthorsCollection from '@/keystatic/collections/taxonomy/authors'; import AuthorsCollection from '@/keystatic/collections/taxonomy/authors';
import TagsCollection from '@/keystatic/collections/taxonomy/tags'; import TagsCollection from '@/keystatic/collections/taxonomy/tags';
import MetaPostsCollection from '@/keystatic/collections/meta/article';
import AWQColletions from '@/keystatic/collections/awq';
import awqCollections from '@/keystatic/collections/awq';
export default config({ export default config({
storage: { storage: {
kind: 'local', kind: 'local',
}, },
singletons: { navigation: NavSingleton },
collections: { collections: {
authors: AuthorsCollection, authors: AuthorsCollection,
tags: TagsCollection, tags: TagsCollection,
meta_posts: MetaPostsCollection,
...awqCollections,
}, },
}); });

View File

@@ -10,19 +10,18 @@
"format": "prettier --write ." "format": "prettier --write ."
}, },
"dependencies": { "dependencies": {
"@keystar/ui": "^0.7.19",
"@keystatic/core": "^0.5.48", "@keystatic/core": "^0.5.48",
"@keystatic/next": "^5.0.4", "@keystatic/next": "^5.0.4",
"@markdoc/markdoc": "^0.5.4", "@markdoc/markdoc": "^0.5.4",
"marked": "^16.3.0", "@tailwindcss/postcss": "^4.1.13",
"next": "15.5.3", "next": "15.5.3",
"postcss": "^8.5.6",
"react": "19.1.0", "react": "19.1.0",
"react-dom": "19.1.0" "react-dom": "19.1.0",
"tailwindcss": "^4.1.13"
}, },
"devDependencies": { "devDependencies": {
"@csstools/postcss-global-data": "^3.1.0",
"@eslint/eslintrc": "^3", "@eslint/eslintrc": "^3",
"@fullhuman/postcss-purgecss": "^7.0.2",
"@types/node": "^20", "@types/node": "^20",
"@types/react": "^19", "@types/react": "^19",
"@types/react-dom": "^19", "@types/react-dom": "^19",
@@ -32,20 +31,12 @@
"eslint-config-next": "15.5.3", "eslint-config-next": "15.5.3",
"eslint-config-prettier": "^10.1.8", "eslint-config-prettier": "^10.1.8",
"eslint-plugin-mdx": "^3.6.2", "eslint-plugin-mdx": "^3.6.2",
"glob-all": "^3.3.1",
"postcss": "^8.5.6",
"postcss-easings": "^4.0.0",
"postcss-functions": "^4.0.2",
"postcss-import": "^16.1.1",
"postcss-mixins": "^12.1.2",
"postcss-nesting": "^13.0.2",
"postcss-preset-env": "^10.3.1",
"postcss-utilities": "^0.8.4",
"prettier": "^3.6.2", "prettier": "^3.6.2",
"stylelint": "^16.24.0", "stylelint": "^16.24.0",
"stylelint-config-clean-order": "^7.0.0", "stylelint-config-clean-order": "^7.0.0",
"stylelint-config-html": "^1.1.0", "stylelint-config-html": "^1.1.0",
"stylelint-config-standard": "^39.0.0", "stylelint-config-standard": "^39.0.0",
"stylelint-config-tailwindcss": "^1.0.0",
"typescript": "^5" "typescript": "^5"
} }
} }

6125
pnpm-lock.yaml generated

File diff suppressed because it is too large Load Diff

View File

@@ -1,54 +1,6 @@
// postcss.config.js const config = {
import { purgeCSSPlugin } from '@fullhuman/postcss-purgecss'; plugins: {
import glob from 'glob-all'; '@tailwindcss/postcss': {},
import path from 'path';
import postcssGlobalData from '@csstools/postcss-global-data';
import postcssEasing from 'postcss-easings';
import postcssImport from 'postcss-import';
import postcssMixins from 'postcss-mixins';
import postcssNesting from 'postcss-nesting';
import postcssPresetEnv from 'postcss-preset-env';
import postcssUtilities from 'postcss-utilities';
import postcssFunctions from 'postcss-functions';
import customFunctions from './src/lib/postcss/functions';
const plugins = [
postcssGlobalData({
files: ['./src/styles/globals/custom-media.css'],
}),
postcssMixins({
mixinsDir: './src/styles/mixins/',
}),
postcssImport(),
postcssPresetEnv({
stage: 1,
features: {
'nesting-rules': false,
'media-query-ranges': {
preserve: true,
}, },
},
}),
postcssEasing(),
postcssUtilities(),
postcssNesting(),
postcssFunctions({
functions: customFunctions,
}),
];
if (process.env.NODE_ENV === 'production') {
plugins.push(
purgeCSSPlugin({
content: glob.sync([
path.join(process.cwd(), 'src/**/*.{js,jsx,ts,tsx,css}'),
path.join(process.cwd(), 'content/**/*.{md,mdx}'),
]),
safelist: ['html', 'body'],
})
);
}
export default {
plugins,
}; };
export default config;

View File

@@ -1,15 +1,5 @@
import { MenuProvider } from '@/contexts/MenuContext';
import PageHeader from '@/components/Page/Header';
import PageMenu from '@/components/Page/Menu';
export default function SiteLayout({ export default function SiteLayout({
children, children,
}: Readonly<{ children: React.ReactNode }>) { }: Readonly<{ children: React.ReactNode }>) {
return ( return <main>{children}</main>;
<MenuProvider>
<PageHeader />
<PageMenu />
{children}
</MenuProvider>
);
} }

View File

@@ -1,82 +0,0 @@
.wrapper {
@mixin responsive-wrapper;
& body {
margin: 0;
padding: 2rem;
font-family: monospace;
color: #1a1a1d;
background: #f7f9fb;
}
& h1 {
margin-bottom: 2rem;
font-weight: 900;
text-transform: uppercase;
letter-spacing: 0.1em;
}
& .grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
gap: 2rem;
margin-bottom: 3rem;
}
& .demoCard {
border: 3px solid #1a1a1d;
background: white;
}
& .demoTitle {
margin: 0;
padding: 0.5rem 1rem;
font-size: 0.875rem;
font-weight: bold;
color: white;
text-transform: uppercase;
letter-spacing: 0.05em;
background: #1a1a1d;
}
& .imageContainer {
cursor: pointer;
position: relative;
overflow: hidden;
width: 100%;
height: 200px;
}
& .demoImage {
width: 100%;
height: 100%;
object-fit: cover;
filter: grayscale(100) contrast(150) brightness(100);
transition: none;
}
& .instructions {
margin-top: 2rem;
padding: 1rem;
font-family: monospace;
color: white;
background: #1a1a1d;
}
& .instructions h2 {
margin-top: 0;
text-transform: uppercase;
letter-spacing: 0.1em;
}
}

View File

@@ -1,11 +1,7 @@
import styles from './page.module.css';
export default function Home() { export default function Home() {
return ( return (
<div className={styles.wrapper}> <div className="text-3xl font-bold underline">
<h1> Do not let us die in the dark night of this cold winter, Dave
DAVE! DAVE! Do Not Let Us Die In The Dark Night Of This Cold Winter!
</h1>
</div> </div>
); );
} }

View File

@@ -1,6 +1 @@
@layer reset, tokens, base, layout, content, components, utilities, animations; @import 'tailwindcss';
@import url("../styles/tokens.css");
@import url("../styles/globals/foundation.css");
@import url("../styles/globals/base.css");
@import url("../styles/globals/content.css");

View File

@@ -17,44 +17,42 @@ const blaka = Blaka({
const iosevkaSlab = localFont({ const iosevkaSlab = localFont({
src: [ src: [
{ {
path: '../../public/fonts/IosevkaSlabQp/IosevkaSlabQp-Regular.woff2', path: '../fonts/IosevkaSlabQp/IosevkaSlabQp-Regular.woff2',
weight: '400', weight: '400',
style: 'normal', style: 'normal',
}, },
{ {
path: '../../public/fonts/IosevkaSlabQp/IosevkaSlabQp-Bold.woff2', path: '../fonts/IosevkaSlabQp/IosevkaSlabQp-Bold.woff2',
weight: '700', weight: '700',
style: 'normal', style: 'normal',
}, },
{ {
path: '../../public/fonts/IosevkaSlabQp/IosevkaSlabQp-Heavy.woff2', path: '../fonts/IosevkaSlabQp/IosevkaSlabQp-Heavy.woff2',
weight: '900', weight: '900',
style: 'normal', style: 'normal',
}, },
], ],
variable: '--font-iosevka-slab', variable: '--font-iosevka-slab',
display: 'swap',
}); });
const iosevkaMono = localFont({ const iosevkaSans = localFont({
src: [ src: [
{ {
path: '../../public/fonts/IosevkaSansMono/IosevkaSansMono-Regular.woff2', path: '../fonts/IosevkaSansMono/IosevkaSansMono-Regular.woff2',
weight: '400', weight: '400',
style: 'normal', style: 'normal',
}, },
{ {
path: '../../public/fonts/IosevkaSansMono/IosevkaSansMono-Bold.woff2', path: '../fonts/IosevkaSansMono/IosevkaSansMono-Bold.woff2',
weight: '700', weight: '700',
style: 'normal', style: 'normal',
}, },
{ {
path: '../../public/fonts/IosevkaSansMono/IosevkaSansMono-Heavy.woff2', path: '../fonts/IosevkaSansMono/IosevkaSansMono-Heavy.woff2',
weight: '900', weight: '900',
style: 'normal', style: 'normal',
}, },
], ],
display: 'swap',
variable: '--font-iosevka-mono', variable: '--font-iosevka-mono',
}); });
@@ -69,11 +67,12 @@ export default function RootLayout({
children: React.ReactNode; children: React.ReactNode;
}>) { }>) {
return ( return (
<html <html lang="en">
lang="en" <body
className={`${geistSans.variable} ${blaka.variable} ${iosevkaSlab.variable} ${iosevkaMono.variable}`} className={`${geistSans.variable} ${blaka.variable} ${iosevkaSlab.variable} ${iosevkaSlab.variable} antialiased`}
> >
<body>{children}</body> {children}
</body>
</html> </html>
); );
} }

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Some files were not shown because too many files have changed in this diff Show More