43 Commits

Author SHA1 Message Date
Qihan 4f2ab012a8 Update README.md 2026-06-16 10:05:58 +08:00
Qihan dcaa5f3a2c Update README.md 2026-06-14 16:01:44 +08:00
Qihan 20e248a9e9 Update README.md 2026-06-14 15:57:57 +08:00
Qihan 9695ea527a Update README.md 2026-06-13 23:34:37 +08:00
Qihan 6bd5069cee Update README.md 2026-06-13 23:34:11 +08:00
Qihan ebe3f466ac Update README.md 2026-06-13 23:33:23 +08:00
Qihan 272fea0482 Update README.md 2026-06-13 21:29:51 +08:00
Sat Naing f0b644de3a feat!: AstroPaper v6 (#631)
* feat: add initial configuration and social icons for AstroPaper theme

* feat: add theme styles and design tokens

* chore: configure Astro with sitemap, i18n, fonts, and tooling

- Set site URL, i18n (single locale, no prefix), sitemap integration
- Add Google Sans Code font via stable fonts API
- Configure Shiki dual-theme markdown (min-light / night-owl)
- Fix astro-paper.config.ts to use relative import (alias not
  available when Vite loads root-level config files)
- Add @astrojs/sitemap and @typescript-eslint/parser dependencies
- Wire @typescript-eslint/parser into ESLint so TypeScript syntax
  in Astro frontmatter (type Props, etc.) parses correctly

* feat: add base styles, dark variant, and typography

- global.css: dark variant via [data-theme], base layer for * / a /
  button selectors, scrollbar tokens, layout utilities (max-w-app,
  app-layout), active-nav as @utility for Tailwind variant support
- html and body classes moved directly onto elements in BaseLayout
  (Tailwind-native approach) so only truly global selectors remain here
- typography.css: prose overrides, Shiki light/dark code block
  switching, diff/highlight/word-highlight transformer styles

* feat: add i18n types, English strings, and useTranslations helper

Plain typed object approach — no third-party i18n library needed.
Paraglide.js was considered but requires SSR output (hard blocker
for a static Astro site).

- UIStrings interface with nav, post, pagination, and a11y groups
- en.ts with `satisfies UIStrings` for literal-type preservation
- useTranslations(locale) helper falls back to English automatically

Adding a new language is a one-file addition; full routing stays
as a registry add-on.

* feat: add client-side theme toggle script

- Reads window.__theme.value set by the inline FOUC-prevention script
  to avoid re-detecting the theme on first load
- Toggles data-theme on <html> and persists to localStorage
- Fills <meta name="theme-color"> with the computed background colour
  so Android's browser chrome matches the page
- Re-runs setup on astro:after-swap for View Transitions navigation
- Carries theme-color across astro:before-swap to prevent navbar
  flicker on Android during page transitions
- Syncs with OS prefers-color-scheme changes at runtime

* feat: add BaseLayout and PostLayout

BaseLayout (replaces scaffold Layout.astro):
- Font, canonical URL via Astro.site, RSS autodiscovery
- FOUC-prevention inline script sets data-theme before first paint
  and exposes window.__theme.value for theme.ts to reuse
- html/body classes on elements directly (Tailwind-native)
- <slot name="head"> for child layout injection
- ClientRouter for View Transitions (respects lightAndDarkMode flag)
- googleVerification rendered from config instead of .env — it is a
  public string, not a secret, and not environment-specific

PostLayout (new):
- Wraps BaseLayout; injects article-specific head content via slot
- Overrides og:type to "article"
- Adds article:published_time / article:modified_time conditionally
- JSON-LD BlogPosting with conditional datePublished/dateModified
  (fixes old bug where absent dates produced "undefined" string)
- Structured data only on actual post pages (not home/archives/tags)

SiteConfig: add optional googleVerification field

* chore: replace scaffold index page with BaseLayout placeholder

* feat: add Header component

* feat: add Footer and Socials component

* chore: install dayjs, slugify, zod, @astrojs/mdx and add MDX integration

* feat: add resolved config that applies defaults in one place

Defaults for posts, features, socials, and shareLinks are merged in
src/config.ts so all consuming code gets non-optional types with no
scattered ?? fallbacks.

* feat: add content schema, blog path, and post utilities

Renames collection blog→posts, moves content to src/content/posts/,
adds .mdx support, and adds a typed pages collection. Includes
getSortedPosts, postFilter, getPath, and slugify utilities.

* feat: add Datetime and Card components

* refactor: switch layouts and components to resolved config

Replaces @/astro-paper.config imports with @/config and removes
optional chaining on feature flags now that the resolved config
guarantees non-optional values.

* feat: add home and footer i18n strings

* feat: implement home page with hero, featured, and recent posts

Replaces the BaseLayout placeholder with the full index page:
hero section with RSS link and social links, featured posts section,
recent posts capped at posts.perIndex, and an All Posts link. All
section labels come from i18n.

* feat: add pagination component

* feat: add Breadcrumb component with locale support

* feat: add Main component

* refactor: update code formatting in Card.astro

* feat: add posts page

* fix: add missing @astrojs/mdx dependency

* refactor: rename meta to pages in i18n

* refactor: improve code formatting in Breadcrumb

* refactor: destructure props in Main component for clarity

* feat: add tag pages

* feat: add About page

* chore: update i18n configuration to use site language from config

* feat: add Archives page

* feat: integrate Pagefind search functionality

* feat: add dynamic Open Graph image generation for posts

* feat: add post detail page

* feat: add Shiki transformers

* chore: remove unused edit link text

* chore: update .gitignore to include generated Pagefind directory

* chore: update site URL in configuration to production link

* chore: replace favicon and remove unused SVG assets, add new Open Graph image

* feat: update site config with default values

* feat: add default OG image path resolution

* fix: ensure edit post feature checks for enabled status correctly

* feat: implement dynamic Open Graph image generation

* feat: add RSS feed generation functionality

* feat: add 404 Not Found page

* feat: add robots.txt generation for SEO optimization

* refactor: change getSortedPosts to a named export

* refactor: change postFilter to a named export

* refactor: rename BaseLayout to Layout

* refactor: standardize locale handling across components

* refactor: update getPostsByGroupCondition location

* chore: remove unused Welcome component

* refactor(i18n): update links using getRelativeLocaleUrl

* refactor(i18n): add dynamic locale loading

* fix: update language attribute to use current locale

* fix: correct wording for updatedAt in post translations

* fix: update layout titles to use correct translation keys for tags pages

* chore: use new colors for better DX and a11y

* feat: add underline icon for active icon nav

* feat: add toc for markdown contents

* refactor: remove unused feature flags in config

* refactor(i18n): enhance locale handling and path management

* fix: ts unused variable hint

* refactor: extract locale stripping logic into a util func

* refactor(i18n): improve locale handling in tag pages

* refactor: update post URL helper functions

* refactor(i18n): replace pathWithBase with getRelativeLocaleUrl for locale handling

* refactor: rename fileWithBase to getAssetPath

* refactor: use runtime agnostic APIs for file paths

* refactor: use transition directive for heading transition

* refactor: remove unused title element from tag page

* fix: decouple ClientRouter from lightAndDarkMode flag

* refactor: rename `postPaths.ts` to `getPostPaths.ts`

* refactor: remove unused `minutesRead` string from post translations

* refactor: simplify AdjacentPostNav component by passing prevPost and nextPost directly

* refactor: remove unused code declaration

* docs: add existing blog posts

* chore: update astro and @astrojs/check dependencies to latest versions

* build: use experimental svg optimizer

* chore(repo): restore project meta files and Docker configs

* refactor: update code formatting with Prettier

* docs: update README and docs

* docs: add JSDoc comments to utility functions

* docs: add JSDoc comments to resolved config file

* fix(og): avoid double slashes when appending index.png

* chore(ci): update Node.js version to 22.12.0 in CI workflow

* feat: improve og image generation with Astro's getFontFileURL API (#632)

* feat: improve og image generation with Astro's getFontFileURL API

- remove @resvg/resvg-js and use sharp to convert SVG to PNG
- update og image generation to use Astro's getFontFileURL API for better font handling

* docs: update README and dynamic OG images documentation

- remove outdated content and clarify dynamic OG image generation process in README.
- add new image example and update instructions for handling non-Latin characters in dynamic OG images.
- adjust copyright year in README to 2026.

* fix(header): adjust icon button alignment in mobile

* feat(docs): add ResponsiveTable to use it in MDX posts (#634)

* feat(docs): add ResponsiveTable to use it in MDX posts

Introduce ResponsiveTable with variant-based styling. Rename docs posts to
.mdx, wrap tables in the component, and remove redundant table `code` rules
from prose typography.

* chore(prettier): ignore .mdx files when checking format

* chore(ci): update Node.js version to 24 in CI workflow

* bump: upgrade Astro and dependencies

* fix: remove redundant backUrl script bug

* fix(header): adjust button and icon alignment

* fix(a11y): improve muted-foreground color contrast

* docs: update predefined color schemes

* chore: support site verification env as fallback for googleVerification

* docs: add astro paper v6 updates in docs

* docs: add AstroPaper-v6.png in astro-paper-6 blog post

* fix: update back-to-top button DOM placement (#641)

Closes #626, #131, #493
2026-05-17 16:17:58 +07:00
satnaing f3005328e5 chore: correct closing tag in README.md for Lighthouse Score image 2026-01-14 06:18:08 +07:00
Sat Naing 4a12d9fc7e chore: cleanup unused files and docs (#610)
* chore: remove unused `public/assets` directory

* chore: move `remark-collapse` type declaration to `src` directory

* chore: reorganize project structure in README.md for clarity

Closes #609
2026-01-14 05:55:38 +07:00
vivekkoya 2a2dcc0de8 docs: add Bun installation instructions to README (#552) 2025-07-09 23:28:09 +07:00
Sat Naing 0cb5a5be7f docs: update blog posts and readme (#459)
* docs: update astro-paper theme config docs

* docs: update adding-new-post blog post

* docs: remove outdated posts and update featured posts

* fix: update broken image link in astro-paper-4 blog

* docs: add a blog post for astro-paper-v5

* docs: update README for AstroPaper v5

* fix: update blog post formatting
2025-03-08 18:21:37 +07:00
Linus 26020bbd0e docs: update copyright to 2025 (#426) 2025-02-08 11:24:58 +07:00
Sat Naing fc6b53fbde docs: add instructions for Google Site Verification in AstroPaper (#353)
Resolves #348
2024-08-17 20:49:06 +07:00
Sat Naing ffaaf80028 docs: add warning for yarn & sharp dependency (#331)
Resolves #317
2024-07-24 00:00:42 +07:00
Sat Naing 7b83996daf build: remove pre-commit git hook (#329)
Remove the pre-commit git hook and its related
dependencies_ husky, lint-staged, commitizen and
cz-conventional-changelog.
2024-07-22 21:54:56 +07:00
Micheal Choudhary 47a3c8651e build: add Dockerfile to run the project in container (#262)
* Dockerfile added to build static files and serve with NGINX Distroless

* replaced final image distroless with official nginx unprivileged to support multi arch.

* runtime image to official nginx

* README updated

* docs: update README for Docker commands

---------

Co-authored-by: satnaing <satnaingdev@gmail.com>
2024-07-16 09:19:40 +07:00
4Ark 3ca857f301 docs: add installation step with pnpm (#286) 2024-07-14 17:01:19 +07:00
satnaing 242729a6fe docs: add figma design file in README 2024-07-07 13:00:57 +07:00
Erison Silva fb3fa98936 feat: add docker-compose file (#174)
* feat: Add docker-compose file

- Add `docker-compose.yml` file
- Add docker commands into the README.md file

Close #172

* docs: update README for style consistency

---------

Co-authored-by: Erison Silva <erison.silva@power.cloud>
Co-authored-by: Sat Naing <satnaingdev@gmail.com>
2023-12-13 15:25:22 +06:30
satnaing 186bc151c3 docs: update README for v3
Update file structure section. Add concurrent command running method for Windows PowerShell users.
Update footer credit to acknowledge the contributions of other contributors.

resolve #113
2023-09-26 02:04:11 +06:30
satnaing e486687610 feat: upgrade to astro v3
Upgrade to astro v3. Update dependencies. Fix codes and features due to migration.

BREAKING CHANGE: Astro v3

resolve #111
2023-09-26 02:04:11 +06:30
satnaing 55e25d08b7 style: format README markdown 2023-02-03 14:06:54 +06:30
Sha Mwe La 0abceb2c97 docs: mention eslint in README (#29) 2023-02-03 14:02:43 +06:30
satnaing f30953bd55 docs: add AstroPaper v1 docs and live url 2023-01-31 20:20:39 +06:30
satnaing 472e61f156 docs: update README for AstroPaper v2 2023-01-31 00:20:21 +06:30
satnaing 41ac489bf5 docs: add lighthouse score in README 2023-01-19 18:22:27 +06:30
satnaing c75dd3f5b6 chore: update copyright year 2023-01-08 21:39:01 +06:30
satnaing 688bdef098 docs: update README for dynamic og feature post 2022-12-31 12:50:57 +06:30
satnaing 72966f3f1d docs: update README for new dynamic OG image feat 2022-12-28 11:27:38 +06:30
satnaing f115e1f31d docs: update README for google-site-verification tag 2022-12-20 23:09:49 +06:30
satnaing a5936bc3f4 docs: update README for install commands 2022-12-20 22:12:26 +06:30
satnaing 2b0ae34f1d docs: update README image with default og image 2022-12-03 16:26:04 +06:30
satnaing 292e6ce3cb docs: update README main image 2022-12-01 22:58:21 +06:30
satnaing 825f8cb6e4 docs: update README for new changes 2022-11-28 23:12:20 +06:30
satnaing f3adbd7957 chore: update readme for running locally command 2022-10-19 19:02:10 +06:30
satnaing 3e3453f831 chore: update README
Add attribution of about page illustration. Add new commands. Add my name at the bottom.
2022-10-18 23:39:04 +06:30
satnaing 4a7c92e665 chore: add new badges
add Conventional Commits and Commitizen friendly badges
2022-10-18 21:48:15 +06:30
Sat Naing e0de512d0f docs: update readme text 2022-10-17 11:14:07 +06:30
Sat Naing 18e920d0f7 Update README typos 2022-09-27 16:51:47 +06:30
Sat Naing f525b243e0 Update README 2022-09-27 15:24:26 +06:30
Sat Naing 2877293394 Update README 2022-09-27 14:26:07 +06:30
Sat Naing 44cf5afeba Initial commit from Astro 2022-09-08 19:20:34 +06:30