diff --git a/.changeset/bright-titles-frontmatter.md b/.changeset/bright-titles-frontmatter.md
deleted file mode 100644
index 49adf2e..0000000
--- a/.changeset/bright-titles-frontmatter.md
+++ /dev/null
@@ -1,5 +0,0 @@
----
-"@fujocoded/remark-capitalize-titles": minor
----
-
-Capitalize Astro frontmatter `title` fields by default, with a `frontmatterTitle: false` option for callers that only want Markdown heading capitalization. Also preserve `NodeJS` as a default capitalization.
diff --git a/.changeset/quiet-routes-escape.md b/.changeset/quiet-routes-escape.md
deleted file mode 100644
index 8d09394..0000000
--- a/.changeset/quiet-routes-escape.md
+++ /dev/null
@@ -1,6 +0,0 @@
----
-"@fujocoded/astro-dev-only": patch
----
-
-Handle file URL paths correctly when removing dev-only build output and escape
-string route patterns before passing them to middleware.
diff --git a/.changeset/remark-excalidraw-configurable.md b/.changeset/remark-excalidraw-configurable.md
deleted file mode 100644
index 8763bed..0000000
--- a/.changeset/remark-excalidraw-configurable.md
+++ /dev/null
@@ -1,10 +0,0 @@
----
-"@fujocoded/remark-excalidraw": minor
----
-
-Automatically import the Excalidraw renderer in generated MDX, preserve string
-data attributes from transformed images, and add wrapper options for rendering
-drawings inside another MDX component.
-
-This also moves the package to an ESM-only tsdown build, removing the CommonJS
-export entries.
diff --git a/.changeset/sharp-titles-codespans.md b/.changeset/sharp-titles-codespans.md
deleted file mode 100644
index 55f4458..0000000
--- a/.changeset/sharp-titles-codespans.md
+++ /dev/null
@@ -1,13 +0,0 @@
----
-"@fujocoded/remark-capitalize-titles": patch
----
-
-Export `capitalizeTitle` for title-casing a standalone string outside a Markdown
-tree: pass the title, an optional `{ special }` override, and have your Markdown
-string capitalized while preserving inline code, emphasis, and escapes.
-
-Component `title` props now run through this same Markdown path, so inline
-code spans inside a title keep their exact casing instead of being lowercased.
-
-Also extends the default capitalization list with `JavaScript`, `HTML`, and
-`CSS`.
\ No newline at end of file
diff --git a/.changeset/silver-alt-files.md b/.changeset/silver-alt-files.md
deleted file mode 100644
index 8a32745..0000000
--- a/.changeset/silver-alt-files.md
+++ /dev/null
@@ -1,12 +0,0 @@
----
-"@fujocoded/remark-alt-text-files": minor
----
-
-Adds opt-in source metadata for loaded alt text files. Set `targetAttribute` to
-`true` to write `data-alt-source`, or pass a custom attribute name. Use
-`sourceLocation` to prepend a path or URL, or pass a function when each image
-needs its own source value.
-
-Adds `missingFile` handling so missing alt text files can error, warn, or be
-ignored. Missing-file messages now name the image and the alt text file path the
-plugin tried to load.
diff --git a/.changeset/social-bsky-handles.md b/.changeset/social-bsky-handles.md
deleted file mode 100644
index 8063da8..0000000
--- a/.changeset/social-bsky-handles.md
+++ /dev/null
@@ -1,10 +0,0 @@
----
-"@fujocoded/zod-transform-socials": patch
----
-
-Tighten and extend Bluesky profile URL matching. The `bsky.app`/`bsky.social`
-profile form now validates the handle as a real domain and additionally
-recognizes DID handles such as `did:plc:…` and `did:web:…`.
-
-Also escapes the literal dots in every platform's match pattern so lookalike
-hosts no longer match by accident.
diff --git a/.changeset/social-npm-unscoped.md b/.changeset/social-npm-unscoped.md
deleted file mode 100644
index c075169..0000000
--- a/.changeset/social-npm-unscoped.md
+++ /dev/null
@@ -1,7 +0,0 @@
----
-"@fujocoded/zod-transform-socials": patch
----
-
-Recognize unscoped npm packages. The npm match previously required a scope, so
-URLs like `npmjs.com/package/social-links` fell through to `custom`; they now
-resolve to the `npm` platform. Underscores are also accepted in package names.
diff --git a/.changeset/social-objects-extend.md b/.changeset/social-objects-extend.md
deleted file mode 100644
index eb5aaa4..0000000
--- a/.changeset/social-objects-extend.md
+++ /dev/null
@@ -1,11 +0,0 @@
----
-"@fujocoded/zod-transform-socials": patch
----
-
-Exports `SocialLinkObjectSchema` so projects can extend the object form of a
-social link without rebuilding the whole schema. `SocialLinkInputSchema` is also
-available as the clearer name for the default one-item input schema, with
-matching `SocialLinkObject` and `SocialLinkInput` types.
-
-Adds standalone examples for preserving custom fields like `label` through
-the transform.
diff --git a/.changeset/tired-lemons-authorize.md b/.changeset/tired-lemons-authorize.md
deleted file mode 100644
index bfbc3e7..0000000
--- a/.changeset/tired-lemons-authorize.md
+++ /dev/null
@@ -1,17 +0,0 @@
----
-"@fujocoded/authproto": minor
----
-
-Add scoped login controls, an Authorize component for requesting extra
-permissions after login, and helpers for building ATProto permission scopes.
-
-## Breaking changes
-
-- Login and logout now default to returning users to the referring page instead
- of `/`. Set `redirects.afterLogin` and `redirects.afterLogout` to `/` to keep
- the old behavior.
-- `` no longer defaults the input placeholder to `handle.bsky.social`;
- pass `placeholder="handle.bsky.social"` if you want that exact prompt.
-- `Astro.locals.loggedInUser` now includes a required `scopes` array. Update
- tests, mocks, and custom local assignments to include `scopes: []` when no
- grants are needed.
diff --git a/astro-authproto/CHANGELOG.md b/astro-authproto/CHANGELOG.md
index 64dba28..2a270d6 100644
--- a/astro-authproto/CHANGELOG.md
+++ b/astro-authproto/CHANGELOG.md
@@ -1,5 +1,24 @@
# @fujocoded/authproto
+## 0.4.0
+
+### Minor Changes
+
+- [#46](https://github.com/FujoWebDev/fujocoded-plugins/pull/46) [`4c266d6`](https://github.com/FujoWebDev/fujocoded-plugins/commit/4c266d66fbe990c6ccbec9a0aeaec67fe92ed375) Thanks [@essential-randomness](https://github.com/essential-randomness)!
+
+ Add scoped login controls, an Authorize component for requesting extra
+ permissions after login, and helpers for building ATProto permission scopes.
+
+ ## Breaking changes
+ - Login and logout now default to returning users to the referring page instead
+ of `/`. Set `redirects.afterLogin` and `redirects.afterLogout` to `/` to keep
+ the old behavior.
+ - `` no longer defaults the input placeholder to `handle.bsky.social`;
+ pass `placeholder="handle.bsky.social"` if you want that exact prompt.
+ - `Astro.locals.loggedInUser` now includes a required `scopes` array. Update
+ tests, mocks, and custom local assignments to include `scopes: []` when no
+ grants are needed.
+
## 0.3.1
### Patch Changes
diff --git a/astro-authproto/package.json b/astro-authproto/package.json
index 6aa8c6e..608fbf8 100644
--- a/astro-authproto/package.json
+++ b/astro-authproto/package.json
@@ -1,6 +1,6 @@
{
"name": "@fujocoded/authproto",
- "version": "0.3.1",
+ "version": "0.4.0",
"description": "Astro integration to easily authenticate your site visitors using ATproto. For Bluesky and beyond.",
"keywords": [
"astro",
diff --git a/astro-dev-only/CHANGELOG.md b/astro-dev-only/CHANGELOG.md
new file mode 100644
index 0000000..aff2d5e
--- /dev/null
+++ b/astro-dev-only/CHANGELOG.md
@@ -0,0 +1,10 @@
+# @fujocoded/astro-dev-only
+
+## 0.0.5
+
+### Patch Changes
+
+- [`448fe2d`](https://github.com/FujoWebDev/fujocoded-plugins/commit/448fe2d0e659605545868944dec1dcaa86fbb814) Thanks [@essential-randomness](https://github.com/essential-randomness)!
+
+ Handle file URL paths correctly when removing dev-only build output and escape
+ string route patterns before passing them to middleware.
diff --git a/astro-dev-only/package.json b/astro-dev-only/package.json
index 7e86293..e25fa35 100644
--- a/astro-dev-only/package.json
+++ b/astro-dev-only/package.json
@@ -1,6 +1,6 @@
{
"name": "@fujocoded/astro-dev-only",
- "version": "0.0.4",
+ "version": "0.0.5",
"description": "An Astro integration for development-only pages",
"keywords": [
"astro-integration",
diff --git a/remark-alt-text-files/CHANGELOG.md b/remark-alt-text-files/CHANGELOG.md
new file mode 100644
index 0000000..a16ffc2
--- /dev/null
+++ b/remark-alt-text-files/CHANGELOG.md
@@ -0,0 +1,16 @@
+# @fujocoded/remark-alt-text-files
+
+## 0.1.0
+
+### Minor Changes
+
+- [`282f48a`](https://github.com/FujoWebDev/fujocoded-plugins/commit/282f48a77a69c3d84cdeb770fa6a2b4926b01383) Thanks [@essential-randomness](https://github.com/essential-randomness)!
+
+ Adds opt-in source metadata for loaded alt text files. Set `targetAttribute` to
+ `true` to write `data-alt-source`, or pass a custom attribute name. Use
+ `sourceLocation` to prepend a path or URL, or pass a function when each image
+ needs its own source value.
+
+ Adds `missingFile` handling so missing alt text files can error, warn, or be
+ ignored. Missing-file messages now name the image and the alt text file path the
+ plugin tried to load.
diff --git a/remark-alt-text-files/package.json b/remark-alt-text-files/package.json
index 970b9d1..ae4ced3 100644
--- a/remark-alt-text-files/package.json
+++ b/remark-alt-text-files/package.json
@@ -1,6 +1,6 @@
{
"name": "@fujocoded/remark-alt-text-files",
- "version": "0.0.2",
+ "version": "0.1.0",
"description": "Add alt text to your images directly from your filesystem",
"keywords": [
"accessibility",
diff --git a/remark-capitalize-titles/CHANGELOG.md b/remark-capitalize-titles/CHANGELOG.md
index d9a14a8..ccd6aea 100644
--- a/remark-capitalize-titles/CHANGELOG.md
+++ b/remark-capitalize-titles/CHANGELOG.md
@@ -1,5 +1,27 @@
# @fujocoded/remark-capitalize-titles
+## 0.2.0
+
+### Minor Changes
+
+- [`41f6902`](https://github.com/FujoWebDev/fujocoded-plugins/commit/41f690219a272eb70e544cda713ce8f0e565f1e6) Thanks [@essential-randomness](https://github.com/essential-randomness)!
+
+ Capitalize Astro frontmatter `title` fields by default, with a `frontmatterTitle: false` option for callers that only want Markdown heading capitalization. Also preserve `NodeJS` as a default capitalization.
+
+### Patch Changes
+
+- [`e0c0ffd`](https://github.com/FujoWebDev/fujocoded-plugins/commit/e0c0ffde82cc486efff45b85536d2b47132347b5) Thanks [@essential-randomness](https://github.com/essential-randomness)!
+
+ Export `capitalizeTitle` for title-casing a standalone string outside a Markdown
+ tree: pass the title, an optional `{ special }` override, and have your Markdown
+ string capitalized while preserving inline code, emphasis, and escapes.
+
+ Component `title` props now run through this same Markdown path, so inline
+ code spans inside a title keep their exact casing instead of being lowercased.
+
+ Also extends the default capitalization list with `JavaScript`, `HTML`, and
+ `CSS`.
+
## 0.1.0
### Minor Changes
diff --git a/remark-capitalize-titles/package.json b/remark-capitalize-titles/package.json
index 1541b20..d8da382 100644
--- a/remark-capitalize-titles/package.json
+++ b/remark-capitalize-titles/package.json
@@ -1,6 +1,6 @@
{
"name": "@fujocoded/remark-capitalize-titles",
- "version": "0.1.0",
+ "version": "0.2.0",
"description": "Make titles consistent with remark",
"keywords": [
"remark"
diff --git a/remark-excalidraw/CHANGELOG.md b/remark-excalidraw/CHANGELOG.md
new file mode 100644
index 0000000..d81245e
--- /dev/null
+++ b/remark-excalidraw/CHANGELOG.md
@@ -0,0 +1,14 @@
+# @fujocoded/remark-excalidraw
+
+## 0.1.0
+
+### Minor Changes
+
+- [`e05af1e`](https://github.com/FujoWebDev/fujocoded-plugins/commit/e05af1ec63a087c3c520ac7c04df121e8246a639) Thanks [@essential-randomness](https://github.com/essential-randomness)!
+
+ Automatically import the Excalidraw renderer in generated MDX, preserve string
+ data attributes from transformed images, and add wrapper options for rendering
+ drawings inside another MDX component.
+
+ This also moves the package to an ESM-only tsdown build, removing the CommonJS
+ export entries.
diff --git a/remark-excalidraw/package.json b/remark-excalidraw/package.json
index 9271467..3430db4 100644
--- a/remark-excalidraw/package.json
+++ b/remark-excalidraw/package.json
@@ -1,6 +1,6 @@
{
"name": "@fujocoded/remark-excalidraw",
- "version": "0.0.2",
+ "version": "0.1.0",
"description": "Load excalidraw diagrams via remark",
"keywords": [
"excalidraw",
diff --git a/zod-transform-socials/CHANGELOG.md b/zod-transform-socials/CHANGELOG.md
index 604e2be..4fea8b4 100644
--- a/zod-transform-socials/CHANGELOG.md
+++ b/zod-transform-socials/CHANGELOG.md
@@ -1,5 +1,34 @@
# @fujocoded/zod-transform-socials
+## 0.1.1
+
+### Patch Changes
+
+- [`9ffed2b`](https://github.com/FujoWebDev/fujocoded-plugins/commit/9ffed2b03770b4e7da60fcc74f2af35e6991e41b) Thanks [@essential-randomness](https://github.com/essential-randomness)!
+
+ Tighten and extend Bluesky profile URL matching. The `bsky.app`/`bsky.social`
+ profile form now validates the handle as a real domain and additionally
+ recognizes DID handles such as `did:plc:…` and `did:web:…`.
+
+ Also escapes the literal dots in every platform's match pattern so lookalike
+ hosts no longer match by accident.
+
+- [`9ffed2b`](https://github.com/FujoWebDev/fujocoded-plugins/commit/9ffed2b03770b4e7da60fcc74f2af35e6991e41b) Thanks [@essential-randomness](https://github.com/essential-randomness)!
+
+ Recognize unscoped npm packages. The npm match previously required a scope, so
+ URLs like `npmjs.com/package/social-links` fell through to `custom`; they now
+ resolve to the `npm` platform. Underscores are also accepted in package names.
+
+- [#48](https://github.com/FujoWebDev/fujocoded-plugins/pull/48) [`f1d01c7`](https://github.com/FujoWebDev/fujocoded-plugins/commit/f1d01c724952543c0d6d3d111cce48ab4405f7bf) Thanks [@essential-randomness](https://github.com/essential-randomness)!
+
+ Exports `SocialLinkObjectSchema` so projects can extend the object form of a
+ social link without rebuilding the whole schema. `SocialLinkInputSchema` is also
+ available as the clearer name for the default one-item input schema, with
+ matching `SocialLinkObject` and `SocialLinkInput` types.
+
+ Adds standalone examples for preserving custom fields like `label` through
+ the transform.
+
## 0.1.0
### Minor Changes
diff --git a/zod-transform-socials/package.json b/zod-transform-socials/package.json
index 730a3f4..9060561 100644
--- a/zod-transform-socials/package.json
+++ b/zod-transform-socials/package.json
@@ -1,6 +1,6 @@
{
"name": "@fujocoded/zod-transform-socials",
- "version": "0.1.0",
+ "version": "0.1.1",
"description": "A Zod schema + transformer for social URLs",
"keywords": [
"zod"