JSPM

  • Created
  • Published
  • Downloads 491
  • Score
    100M100P100Q92825F
  • License MIT

Anglefeint core theme package for Astro

Package Exports

  • @anglefeint/astro-theme
  • @anglefeint/astro-theme/assets/theme/placeholders/theme-placeholder-1.jpg
  • @anglefeint/astro-theme/assets/theme/placeholders/theme-placeholder-2.jpg
  • @anglefeint/astro-theme/assets/theme/placeholders/theme-placeholder-3.jpg
  • @anglefeint/astro-theme/assets/theme/placeholders/theme-placeholder-4.jpg
  • @anglefeint/astro-theme/assets/theme/placeholders/theme-placeholder-5.jpg
  • @anglefeint/astro-theme/assets/theme/placeholders/theme-placeholder-about.jpg
  • @anglefeint/astro-theme/assets/theme/red-queen/theme-redqueen1.webp
  • @anglefeint/astro-theme/assets/theme/red-queen/theme-redqueen2.gif
  • @anglefeint/astro-theme/components/BaseHead.astro
  • @anglefeint/astro-theme/components/Footer.astro
  • @anglefeint/astro-theme/components/FormattedDate.astro
  • @anglefeint/astro-theme/components/Giscus.astro
  • @anglefeint/astro-theme/components/Header.astro
  • @anglefeint/astro-theme/components/HeaderLink.astro
  • @anglefeint/astro-theme/components/pagination/CyberPagination.astro
  • @anglefeint/astro-theme/components/shared/CommonFooter.astro
  • @anglefeint/astro-theme/components/shared/CommonHeader.astro
  • @anglefeint/astro-theme/components/shared/Icon.astro
  • @anglefeint/astro-theme/components/shared/LangSwitcher.astro
  • @anglefeint/astro-theme/components/shared/SocialMenu.astro
  • @anglefeint/astro-theme/components/shared/ThemeFrame.astro
  • @anglefeint/astro-theme/content-schema
  • @anglefeint/astro-theme/i18n/config.ts
  • @anglefeint/astro-theme/i18n/locales.mjs
  • @anglefeint/astro-theme/i18n/messages.ts
  • @anglefeint/astro-theme/i18n/posts.ts
  • @anglefeint/astro-theme/layouts/AiPageLayout.astro
  • @anglefeint/astro-theme/layouts/BasePageLayout.astro
  • @anglefeint/astro-theme/layouts/BlogPost.astro
  • @anglefeint/astro-theme/layouts/CyberPageLayout.astro
  • @anglefeint/astro-theme/layouts/HackerPageLayout.astro
  • @anglefeint/astro-theme/layouts/HomePage.astro
  • @anglefeint/astro-theme/layouts/MatrixPageLayout.astro
  • @anglefeint/astro-theme/layouts/shells/AiShell.astro
  • @anglefeint/astro-theme/layouts/shells/BaseShell.astro
  • @anglefeint/astro-theme/layouts/shells/CyberShell.astro
  • @anglefeint/astro-theme/layouts/shells/HackerShell.astro
  • @anglefeint/astro-theme/layouts/shells/MatrixShell.astro
  • @anglefeint/astro-theme/scripts/about-effects.js
  • @anglefeint/astro-theme/scripts/about/background.js
  • @anglefeint/astro-theme/scripts/about/interactions.js
  • @anglefeint/astro-theme/scripts/about/modal-decryptor.js
  • @anglefeint/astro-theme/scripts/about/modal-keyboard.js
  • @anglefeint/astro-theme/scripts/about/modal-progress.js
  • @anglefeint/astro-theme/scripts/about/modals.js
  • @anglefeint/astro-theme/scripts/about/reading-ui.js
  • @anglefeint/astro-theme/scripts/about/runtime.js
  • @anglefeint/astro-theme/scripts/blogpost-effects.js
  • @anglefeint/astro-theme/scripts/blogpost/hero-canvas.js
  • @anglefeint/astro-theme/scripts/blogpost/interactions.js
  • @anglefeint/astro-theme/scripts/blogpost/network-canvas.js
  • @anglefeint/astro-theme/scripts/blogpost/read-progress.js
  • @anglefeint/astro-theme/scripts/blogpost/red-queen-tv.js
  • @anglefeint/astro-theme/scripts/home-matrix.js
  • @anglefeint/astro-theme/styles/about-page.css
  • @anglefeint/astro-theme/styles/about/background.css
  • @anglefeint/astro-theme/styles/about/base.css
  • @anglefeint/astro-theme/styles/about/keyboard.css
  • @anglefeint/astro-theme/styles/about/modals.css
  • @anglefeint/astro-theme/styles/about/panel.css
  • @anglefeint/astro-theme/styles/about/responsive.css
  • @anglefeint/astro-theme/styles/about/sidebar.css
  • @anglefeint/astro-theme/styles/ai/background.css
  • @anglefeint/astro-theme/styles/ai/base.css
  • @anglefeint/astro-theme/styles/ai/controls.css
  • @anglefeint/astro-theme/styles/ai/hero.css
  • @anglefeint/astro-theme/styles/ai/prose.css
  • @anglefeint/astro-theme/styles/ai/related.css
  • @anglefeint/astro-theme/styles/ai/responsive.css
  • @anglefeint/astro-theme/styles/blog-list.css
  • @anglefeint/astro-theme/styles/blog-post.css
  • @anglefeint/astro-theme/styles/global.css
  • @anglefeint/astro-theme/styles/home-page.css
  • @anglefeint/astro-theme/styles/theme-ai.css
  • @anglefeint/astro-theme/styles/theme-cyber.css
  • @anglefeint/astro-theme/utils/head.ts
  • @anglefeint/astro-theme/utils/merge
  • @anglefeint/astro-theme/utils/merge.ts
  • @anglefeint/astro-theme/utils/number
  • @anglefeint/astro-theme/utils/number.ts
  • @anglefeint/astro-theme/utils/pagination
  • @anglefeint/astro-theme/utils/pagination-style
  • @anglefeint/astro-theme/utils/pagination-style.ts
  • @anglefeint/astro-theme/utils/pagination.ts

Readme

@anglefeint/astro-theme

Core package for the Anglefeint Astro theme.

Install

npm install @anglefeint/astro-theme

Upgrade

npm update @anglefeint/astro-theme

Usage in Starter/Site

Use the package exports in your pages/layout wiring, for example:

---
import HomePage from '@anglefeint/astro-theme/layouts/HomePage.astro';
---

<HomePage {...Astro.props} />

For content schema:

export { collections } from '@anglefeint/astro-theme/content-schema';

sourceLinks in blog frontmatter accepts standard http(s) URLs and bare domains such as github.com/anglefeint/astro-theme-anglefeint. Bare domains are normalized to https://... during schema parsing.

Site Config Injection

This package reads site-specific config from alias imports:

  • @anglefeint/site-config/site
  • @anglefeint/site-config/theme
  • @anglefeint/site-config/social
  • @anglefeint/site-i18n/config
  • @anglefeint/site-i18n/messages

In the starter/site project, map these aliases to src/config/* and src/i18n/* in both Vite and TS config.

Giscus comments are configured from site-side theme.comments (core IDs + behavior fields like mapping, inputPosition, theme, and lang). If required core fields are not set, comments are not rendered. When mapping="specific" set term; when mapping="number" set number.

CLI

  • anglefeint-new-post
  • anglefeint-new-page

Examples:

# create one post slug in all default locales
anglefeint-new-post my-first-post

# create post only for selected locales
anglefeint-new-post my-first-post --locales en,fr

# or via environment variable
ANGLEFEINT_LOCALES=en,fr anglefeint-new-post my-first-post

# create a custom page with theme variant
anglefeint-new-page projects --theme base
anglefeint-new-page projects --theme ai
anglefeint-new-page projects --theme cyber
anglefeint-new-page projects --theme hacker
anglefeint-new-page projects --theme matrix

Starter projects can invoke these directly (or wrap them in npm scripts). For most users, #starter is the recommended installation path.