Compare commits

..

1 Commits

Author SHA1 Message Date
7b925b4718 Update dependency tailwindcss to v4 2025-06-08 21:54:06 +00:00
9 changed files with 107 additions and 1372 deletions

View File

@@ -63,5 +63,5 @@ jobs:
-H "Authorization: Bearer ${{ secrets.NTFY_CRED }}" \ -H "Authorization: Bearer ${{ secrets.NTFY_CRED }}" \
-H "Title: Site-Profile Image Released to Gitea: ${{ steps.meta.outputs.tags }}" \ -H "Title: Site-Profile Image Released to Gitea: ${{ steps.meta.outputs.tags }}" \
-H "Content-Type: text/plain" \ -H "Content-Type: text/plain" \
-d 'Repo: ${{ gitea.repository }}\nCommit: ${{ gitea.sha }}\nRef: ${{ gitea.ref }}\nStatus: ${{ job.status}}' \ -d $'Repo: ${{ gitea.repository }}\nCommit: ${{ gitea.sha }}\nRef: ${{ gitea.ref }}\nStatus: ${{ job.status}}' \
${{ secrets.NTFY_URL }} ${{ secrets.NTFY_URL }}

View File

@@ -61,7 +61,7 @@ jobs:
run: | run: |
curl \ curl \
-H "Authorization: Bearer ${{ secrets.NTFY_CRED }}" \ -H "Authorization: Bearer ${{ secrets.NTFY_CRED }}" \
-H "Title: Site-Profile Image Released to Harbor: ${{ steps.meta.outputs.tags }}" \ -H "Title: Site-Profile Image Released to Gitea: ${{ steps.meta.outputs.tags }}" \
-H "Content-Type: text/plain" \ -H "Content-Type: text/plain" \
-d 'Repo: ${{ gitea.repository }}\nCommit: ${{ gitea.sha }}\nRef: ${{ gitea.ref }}\nStatus: ${{ job.status}}' \ -d $'Repo: ${{ gitea.repository }}\nCommit: ${{ gitea.sha }}\nRef: ${{ gitea.ref }}\nStatus: ${{ job.status}}' \
${{ secrets.NTFY_URL }} ${{ secrets.NTFY_URL }}

View File

@@ -1,6 +1,6 @@
FROM node:22.16.0-alpine3.22 AS base FROM node:22.16.0-alpine3.22 AS base
LABEL version="0.8.2" LABEL version="0.7.0"
LABEL description="Astro based website to use as a personal site" LABEL description="Astro based website to use as a personal site"
ENV PNPM_HOME="/pnpm" ENV PNPM_HOME="/pnpm"
@@ -12,15 +12,14 @@ WORKDIR /app
COPY package.json pnpm-lock.yaml ./ COPY package.json pnpm-lock.yaml ./
FROM base AS prod-deps FROM base AS prod-deps
RUN --mount=type=cache,id=pnpm,target=/pnpm/store pnpm install --prod --frozen-lockfile --save form-data RUN --mount=type=cache,id=pnpm,target=/pnpm/store pnpm install --prod --frozen-lockfile
FROM prod-deps AS build-deps FROM prod-deps AS build-deps
RUN --mount=type=cache,id=pnpm,target=/pnpm/store pnpm install --frozen-lockfile --save form-data RUN --mount=type=cache,id=pnpm,target=/pnpm/store pnpm install --frozen-lockfile
FROM build-deps AS build FROM build-deps AS build
COPY . . COPY . .
RUN pnpm run build RUN pnpm run build
RUN npm prune --production
FROM base AS runtime FROM base AS runtime
COPY --from=prod-deps /app/node_modules /app/node_modules COPY --from=prod-deps /app/node_modules /app/node_modules

View File

@@ -1,9 +1,7 @@
import { defineConfig } from 'astro/config'; import { defineConfig } from 'astro/config';
import tailwindcss from '@tailwindcss/vite'; import tailwind from '@astrojs/tailwind';
import react from '@astrojs/react'; import react from '@astrojs/react';
import node from '@astrojs/node';
const getSiteURL = () => { const getSiteURL = () => {
if (process.env.SITE_URL) { if (process.env.SITE_URL) {
return `https://${process.env.SITE_URL}`; return `https://${process.env.SITE_URL}`;
@@ -13,17 +11,5 @@ const getSiteURL = () => {
export default defineConfig({ export default defineConfig({
site: getSiteURL(), site: getSiteURL(),
integrations: [tailwindcss(), react()], integrations: [tailwind(), react()],
});
plugins: {
"@tailwindcss/postcss": {},
},
vite: {
plugins: [tailwindcss()]
},
adapter: node({
mode: 'standalone'
})
});

View File

@@ -1,7 +1,7 @@
{ {
"name": "site-profile", "name": "site-profile",
"type": "module", "type": "module",
"version": "0.8.2", "version": "0.7.0",
"private": true, "private": true,
"scripts": { "scripts": {
"dev": "astro dev", "dev": "astro dev",
@@ -16,18 +16,17 @@
"@astrojs/react": "^4.3.0", "@astrojs/react": "^4.3.0",
"@astrojs/rss": "^4.0.12", "@astrojs/rss": "^4.0.12",
"@astrojs/sitemap": "^3.4.1", "@astrojs/sitemap": "^3.4.1",
"@astrojs/tailwind": "^6.0.2",
"@directus/sdk": "^19.1.0", "@directus/sdk": "^19.1.0",
"@tailwindcss/vite": "^4.1.8",
"@tailwindcss/postcss": "^4.1.8",
"astro": "^5.9.1", "astro": "^5.9.1",
"framer-motion": "^12.16.0", "framer-motion": "^12.16.0",
"react": "^19.1.0", "react": "^19.1.0",
"react-dom": "^19.1.0", "react-dom": "^19.1.0",
"react-hotkeys-hook": "^5.1.0", "react-hotkeys-hook": "^5.1.0",
"react-icons": "^5.5.0", "react-icons": "^5.5.0",
"postcss-preset-env": "^10.2.1", "reading-time": "^1.5.0",
"sanitize-html": "^2.17.0", "sanitize-html": "^2.17.0",
"tailwindcss": "^4.1.8" "tailwindcss": "^4.0.0"
}, },
"devDependencies": { "devDependencies": {
"@tailwindcss/typography": "^0.5.16", "@tailwindcss/typography": "^0.5.16",

1397
pnpm-lock.yaml generated

File diff suppressed because it is too large Load Diff

View File

@@ -1,7 +1,7 @@
/** @type {import('postcss-load-config').Config} */ /** @type {import('postcss-load-config').Config} */
const config = { const config = {
plugins: { plugins: {
"@tailwindcss/postcss": {}, tailwindcss: {},
autoprefixer: {}, autoprefixer: {},
'postcss-preset-env': { 'postcss-preset-env': {
features: { features: {

View File

@@ -274,67 +274,67 @@ const { post, nextPost, prevPost } = Astro.props;
/* Enhanced typography for blog content - Responsive adjustments */ /* Enhanced typography for blog content - Responsive adjustments */
.prose { .prose {
@reference text-zinc-800 dark:text-zinc-200; @apply text-zinc-800 dark:text-zinc-200;
} }
.prose h1, .prose h1,
.prose h2, .prose h2,
.prose h3, .prose h3,
.prose h4 { .prose h4 {
@reference font-semibold text-zinc-900 dark:text-zinc-100; @apply font-semibold text-zinc-900 dark:text-zinc-100;
} }
.prose h1 { .prose h1 {
@reference text-2xl sm:text-3xl md:text-4xl; @apply text-2xl sm:text-3xl md:text-4xl;
} }
.prose h2 { .prose h2 {
@reference mb-3 mt-8 border-b border-zinc-200 pb-2 text-xl dark:border-zinc-800 sm:mb-4 sm:mt-12 sm:text-2xl; @apply mb-3 mt-8 border-b border-zinc-200 pb-2 text-xl dark:border-zinc-800 sm:mb-4 sm:mt-12 sm:text-2xl;
} }
.prose h3 { .prose h3 {
@reference mb-2 mt-6 text-lg sm:mb-3 sm:mt-8 sm:text-xl; @apply mb-2 mt-6 text-lg sm:mb-3 sm:mt-8 sm:text-xl;
} }
.prose p { .prose p {
@reference mb-4 text-sm leading-relaxed sm:mb-6 sm:text-base; @apply mb-4 text-sm leading-relaxed sm:mb-6 sm:text-base;
} }
.prose a { .prose a {
@reference font-medium text-zinc-800 underline decoration-zinc-400 underline-offset-2 transition-colors hover:text-zinc-600 hover:decoration-zinc-600 dark:text-zinc-300 dark:decoration-zinc-600 dark:hover:text-zinc-100 dark:hover:decoration-zinc-400; @apply font-medium text-zinc-800 underline decoration-zinc-400 underline-offset-2 transition-colors hover:text-zinc-600 hover:decoration-zinc-600 dark:text-zinc-300 dark:decoration-zinc-600 dark:hover:text-zinc-100 dark:hover:decoration-zinc-400;
} }
.prose blockquote { .prose blockquote {
@reference my-4 border-l-4 border-zinc-300 pl-4 italic text-zinc-700 dark:border-zinc-700 dark:text-zinc-300 sm:my-6; @apply my-4 border-l-4 border-zinc-300 pl-4 italic text-zinc-700 dark:border-zinc-700 dark:text-zinc-300 sm:my-6;
} }
.prose code { .prose code {
@reference rounded bg-zinc-100 px-1.5 py-0.5 text-sm font-medium text-zinc-800 dark:bg-zinc-800 dark:text-zinc-200; @apply rounded bg-zinc-100 px-1.5 py-0.5 text-sm font-medium text-zinc-800 dark:bg-zinc-800 dark:text-zinc-200;
} }
.prose pre { .prose pre {
@reference my-4 overflow-x-auto rounded-lg bg-[#1e293b] p-3 text-xs text-zinc-200 shadow-md dark:bg-[#1e293b] sm:my-6 sm:p-4 sm:text-sm !important; @apply my-4 overflow-x-auto rounded-lg bg-[#1e293b] p-3 text-xs text-zinc-200 shadow-md dark:bg-[#1e293b] sm:my-6 sm:p-4 sm:text-sm !important;
} }
.prose pre code { .prose pre code {
@reference bg-transparent p-0 text-zinc-200 dark:text-zinc-200 !important; @apply bg-transparent p-0 text-zinc-200 dark:text-zinc-200 !important;
} }
.prose img { .prose img {
@reference mx-auto my-6 h-auto max-w-full rounded-lg shadow-md sm:my-8; @apply mx-auto my-6 h-auto max-w-full rounded-lg shadow-md sm:my-8;
} }
.prose ul, .prose ul,
.prose ol { .prose ol {
@reference my-4 pl-5 sm:my-6 sm:pl-6; @apply my-4 pl-5 sm:my-6 sm:pl-6;
} }
.prose li { .prose li {
@reference mb-1 text-sm sm:mb-2 sm:text-base; @apply mb-1 text-sm sm:mb-2 sm:text-base;
} }
.prose hr { .prose hr {
@reference my-8 border-zinc-200 dark:border-zinc-800 sm:my-10; @apply my-8 border-zinc-200 dark:border-zinc-800 sm:my-10;
} }
/* Line clamp for truncating text */ /* Line clamp for truncating text */

View File

@@ -1,5 +1,7 @@
/* Remove all the complex mobile menu styles and keep only what's necessary */ /* Remove all the complex mobile menu styles and keep only what's necessary */
@import "tailwindcss"; @tailwind base;
@tailwind components;
@tailwind utilities;
@layer base { @layer base {
:root { :root {
@@ -15,7 +17,7 @@
} }
body { body {
@reference min-h-screen bg-white text-zinc-900 dark:bg-zinc-900 dark:text-zinc-100; @apply min-h-screen bg-white text-zinc-900 dark:bg-zinc-900 dark:text-zinc-100;
margin: 0; margin: 0;
padding: 0; padding: 0;
overflow-x: hidden; overflow-x: hidden;
@@ -41,7 +43,7 @@
/* Better touch targets on mobile */ /* Better touch targets on mobile */
button, button,
a { a {
@reference min-h-[44px]; @apply min-h-[44px];
} }
} }