Skip to content

Releases: FujoWebDev/fujocoded-plugins

@fujocoded/zod-transform-socials@0.1.0

16 May 11:37
b8f1aaf

Choose a tag to compare

Minor Changes

  • #32 bbe45a3 Thanks @enigmalea!

    New

    • Zod 4 / Astro 6 support: import { SocialLinks } from "@fujocoded/zod-transform-socials/zod4". Default entry is still Zod 3.
    • Examples: __examples__/ now has one runnable project per combo (Astro 5, Astro 6, plain Zod 3, plain Zod 4).
    • "sideEffects": false in package.json so you can treeshake away the half you don't use.

    Breaking

    • zod is now a peer dep (^3.25.0 || ^4.0.0).
    • Minimum Zod 3 is now 3.25.0 (was 3.23.8) so we can access zod/v4.

Patch Changes

  • #32 bbe45a3 Thanks @enigmalea!
    • mastodon match now accepts post urls in addition to profile mathes (e.g. urls like /@user/112050937942786185).
    • warn at import time when the default (zod 3) entry is used but zod 4 is installed (for example an astro 6 upgrade that forgot to switch to /zod4).

@fujocoded/astro-atproto-loader@0.2.1

01 May 12:34
a14b4cc

Choose a tag to compare

Patch Changes

  • 8bd3453: Fixes 0.2.0, which was broken: defineAtProtoCollection and defineAtProtoLiveCollection didn't return the shape Astro expected, so callers had to wrap them in defineCollection / defineLiveCollection themselves. They now return the real Astro collection shape and work as documented.

    Breaking: fetchRecord({ atUri }) now resolves to { value, repo } instead of just the record value. Existing callers need to read .value. The new repo field carries the fetched record's { did, pds } so it can be passed directly to toHostedBlob without re-resolving identity. This is shipped as a patch (and not a minor bump) because 0.2.0 was only on npm for ~8 hours and is being deprecated alongside this release, so realistically nobody is depending on the old fetchRecord shape.

    Also in this release:

    • New toHostedBlob({ repo, blob }) for building com.atproto.sync.getBlob URLs, plus the isAtBlob guard and the AtBlob type.
    • AtProtoRecordRepo now includes pds alongside did, so args.repo works directly with toHostedBlob.
    • getPds(repo) is exported and shares the identity cache with getClient.
    • BlobRef and CID instances are flattened to { $link } before being stored, so records with blobs don't break Astro's devalue store.
    • Added the 04-single-entry example.

@fujocoded/remark-capitalize-titles@0.1.0

30 Apr 22:49
b664712

Choose a tag to compare

Minor Changes

  • 9439b7a: Lowercase the second-and-later segments of a hyphenated compound during title
    casing, so output follows AP-style ("Three-way Merges", "Pre-commit Hooks",
    "Up-to-date") instead of capitalizing every segment ("Three-Way", "Pre-Commit",
    "Up-To-Date"). A segment is kept capitalized when either the full compound or
    the individual segment is listed in special.

    This is a breaking change for callers that expected every segment of a
    hyphenated word to be capitalized.

Patch Changes

  • 9439b7a: Capitalize words correctly when a heading contains curly quotes (as produced by
    remark-smartypants). Previously, the upstream title library only recognized
    straight quotes as punctuation, so a word following a curly or would
    stay lowercase. The plugin now converts curly quotes to straight quotes before
    title-casing, then restores the original curly characters in the output.

@fujocoded/authproto@0.3.1

30 Apr 23:08
b664712

Choose a tag to compare

Patch Changes

  • 7e3f1e7: Fix custom-redirect / referer parsing in the OAuth callback so encoded redirect and referer values are no longer silently dropped on login.

  • 7e3f1e7: Improve astro-authproto README and 02-read-bsky-profile example:

    • Document session driver setup and full integration config in install steps.
    • Clarify applicationDomain should be the full URL with scheme (e.g. https://example.com, or http://127.0.0.1:4321 locally).
    • Add a "Shipping it" production section.
    • Update the read-profile example to use getBlueskyAgent from @fujocoded/authproto/helpers instead of constructing AtpBaseClient directly, and fix the avatar alt.
  • 7e3f1e7: Use Astro's actual dev server port for the OAuth callback URL in development instead of always assuming 4321. If you run astro dev --port 4322 (or set server.port in your Astro config), Authproto now points OAuth at the right local URL.

@fujocoded/atproto-badges@0.2.0

30 Apr 22:49
b664712

Choose a tag to compare

Minor Changes

  • 7e3f1e7: Initial release of @fujocoded/atproto-badges — ATProto badge attestation utilities for creating, signing, and verifying badges per the badge.blue specification.

@fujocoded/astro-atproto-loader@0.2.0

30 Apr 23:08
b664712

Choose a tag to compare

Minor Changes

  • 54edfb5: Rework the loaders for better ergonomics and typing. Featuring breaking changes!

    • atProtoLiveLoaderdefineAtProtoLiveCollection
    • atProtoStaticLoaderdefineAtProtoCollection

    New capabilities:

    • Multi-source pipeline: load from several repo + collection pairs in one collection, with value discriminated on collection inside filter/transform.
    • Per-source parseRecord for $parse-style lexicon validation; failures drop the single record without failing the source.
    • groupBy + grouped transform for merging records across sources under a shared key (e.g. post + reposts).
    • Shared fetchRecord hydrator passed to every callback, with per-cycle request deduping.
    • onSourceError policy ('throw' | 'skip' | fn)
    • limit: number | 'all' and maxPages for explicit pagination control.

@fujocoded/zod-transform-socials@0.0.14

18 Apr 23:30

Choose a tag to compare

Patch Changes

  • c97f268: Add createSocialsTransformer for registering custom domains for platforms without known URL shapes (currently mastodon), so self-hosted instances can be matched without needing to spell out platform every time.

@fujocoded/astro-atproto-loader@0.1.1

18 Apr 23:34

Choose a tag to compare

@fujocoded/astro-atproto-loader

0.1.0

Minor Changes

  • 4396993: Introduce @fujocoded/astro-atproto-loader, a package for loading AtProto PDS
    records into Astro collections. It includes both atProtoLiveLoader() for live
    collections and atProtoStaticLoader() for build-time content collections.

0.0.1

Patch Changes

  • Initial release of Astro loaders for public AtProto repo records.

@fujocoded/authproto@0.3.0

16 Apr 08:39

Choose a tag to compare

Minor Changes

  • 4edfdd1: Support Astro 6.
  • b728333: Add loggedInClient to Astro.locals and expose the full OAuthSession for the new lex package.

Patch Changes

@fujocoded/authproto@0.2.0

09 Mar 01:20
110ec3b

Choose a tag to compare

Minor Changes

  • 2e1dc6e: Use oauth-client-metadata in place of client-metadata for permission check

Patch Changes

  • 5afb389: Directly return error about missing username field
  • 03e7133: Allow using AUTHPROTO_EXTERNAL_DOMAIN to override oauth redirect