diff --git a/packages/package-lock.json b/packages/package-lock.json index b608132..02b2153 100644 --- a/packages/package-lock.json +++ b/packages/package-lock.json @@ -1,22 +1,22 @@ { - "name": "@aturi/packages", + "name": "@aturi.to/packages", "version": "0.0.0", "lockfileVersion": 3, "requires": true, "packages": { "": { - "name": "@aturi/packages", + "name": "@aturi.to/packages", "version": "0.0.0", "workspaces": [ "waypoints", "waypoints-react" ] }, - "node_modules/@aturi/waypoints": { + "node_modules/@aturi.to/waypoints": { "resolved": "waypoints", "link": true }, - "node_modules/@aturi/waypoints-react": { + "node_modules/@aturi.to/waypoints-react": { "resolved": "waypoints-react", "link": true }, @@ -2505,7 +2505,7 @@ } }, "waypoints": { - "name": "@aturi/waypoints", + "name": "@aturi.to/waypoints", "version": "0.1.0", "license": "MIT", "devDependencies": { @@ -2519,11 +2519,11 @@ } }, "waypoints-react": { - "name": "@aturi/waypoints-react", + "name": "@aturi.to/waypoints-react", "version": "0.1.0", "license": "MIT", "dependencies": { - "@aturi/waypoints": "^0.1.0" + "@aturi.to/waypoints": "^0.1.0" }, "devDependencies": { "@types/react": "^19", diff --git a/packages/package.json b/packages/package.json index 8a59119..f846ce6 100644 --- a/packages/package.json +++ b/packages/package.json @@ -1,17 +1,17 @@ { - "name": "@aturi/packages", + "name": "@aturi.to/packages", "version": "0.0.0", "private": true, - "description": "Nested workspace root for the publishable Aturi waypoint packages. Links @aturi/waypoints and @aturi/waypoints-react locally during development; not published itself.", + "description": "Nested workspace root for the publishable Aturi waypoint packages. Links @aturi.to/waypoints and @aturi.to/waypoints-react locally during development; not published itself.", "workspaces": [ "waypoints", "waypoints-react" ], "scripts": { - "build": "npm run build -w @aturi/waypoints && npm run build -w @aturi/waypoints-react", - "test": "npm run test -w @aturi/waypoints", - "typecheck": "npm run typecheck -w @aturi/waypoints && npm run typecheck -w @aturi/waypoints-react", - "sync": "npm run sync -w @aturi/waypoints", - "sync:check": "npm run sync:check -w @aturi/waypoints" + "build": "npm run build -w @aturi.to/waypoints && npm run build -w @aturi.to/waypoints-react", + "test": "npm run test -w @aturi.to/waypoints", + "typecheck": "npm run typecheck -w @aturi.to/waypoints && npm run typecheck -w @aturi.to/waypoints-react", + "sync": "npm run sync -w @aturi.to/waypoints", + "sync:check": "npm run sync:check -w @aturi.to/waypoints" } } diff --git a/packages/waypoints-react/README.md b/packages/waypoints-react/README.md index cd50b76..9d77c4f 100644 --- a/packages/waypoints-react/README.md +++ b/packages/waypoints-react/README.md @@ -1,7 +1,7 @@ -# @aturi/waypoints-react +# @aturi.to/waypoints-react A drop-in React "Open in…" picker for the Atmosphere, built on -[`@aturi/waypoints`](../waypoints). Add per-client links, smart recommendations, +[`@aturi.to/waypoints`](../waypoints). Add per-client links, smart recommendations, and client icons to your app in a few lines. **Headless-first**: the components ship **zero CSS** by default and emit stable, @@ -17,12 +17,12 @@ theme, or drop down to a hook and render everything yourself. ## Install ```sh -npm install @aturi/waypoints-react +npm install @aturi.to/waypoints-react # peers (you almost certainly already have react/react-dom): npm install react react-dom lucide-react ``` -`@aturi/waypoints-react` re-exports everything from `@aturi/waypoints`, so a +`@aturi.to/waypoints-react` re-exports everything from `@aturi.to/waypoints`, so a single install gives you the components *and* the catalog/resolvers. ## Server vs. client components @@ -30,7 +30,7 @@ single install gives you the components *and* the catalog/resolvers. This is a **client** package — its entry carries the `"use client"` directive, so the components work out of the box in the Next.js App Router and other React Server Components setups (no wrapper needed). Because the directive applies to -the whole entry, reach for [`@aturi/waypoints`](../waypoints) directly when you +the whole entry, reach for [`@aturi.to/waypoints`](../waypoints) directly when you need the framework-agnostic helpers (`resolveAtUri`, `buildWaypointsForParsed`, the catalog, …) inside a Server Component. @@ -39,7 +39,7 @@ the catalog, …) inside a Server Component. ### 1. Drop-in picker (headless markup, bring your own styles) ```tsx -import { WaypointPicker } from '@aturi/waypoints-react'; +import { WaypointPicker } from '@aturi.to/waypoints-react'; =18" }, "dependencies": { - "@aturi/waypoints": "^0.1.0" + "@aturi.to/waypoints": "^0.1.0" }, "devDependencies": { "@types/react": "^19", diff --git a/packages/waypoints-react/scripts/postbuild.mjs b/packages/waypoints-react/scripts/postbuild.mjs index 1f7486d..22b1537 100644 --- a/packages/waypoints-react/scripts/postbuild.mjs +++ b/packages/waypoints-react/scripts/postbuild.mjs @@ -1,9 +1,9 @@ -// Post-build steps for @aturi/waypoints-react, run by tsup's `onSuccess`. +// Post-build steps for @aturi.to/waypoints-react, run by tsup's `onSuccess`. import { copyFileSync, readFileSync, writeFileSync } from 'node:fs'; // 1) Ship the opt-in theme as a standalone file. No component imports it, so // tsup never emits it on its own — copy it verbatim for explicit import via -// `@aturi/waypoints-react/styles.css`. +// `@aturi.to/waypoints-react/styles.css`. copyFileSync('src/styles.css', 'dist/styles.css'); // 2) Guarantee the React Client Component directive survives bundling. The diff --git a/packages/waypoints-react/src/WaypointPicker.tsx b/packages/waypoints-react/src/WaypointPicker.tsx index bffb721..3d00d72 100644 --- a/packages/waypoints-react/src/WaypointPicker.tsx +++ b/packages/waypoints-react/src/WaypointPicker.tsx @@ -6,7 +6,7 @@ import { type MouseEvent, } from 'react'; import { ChevronDown } from 'lucide-react'; -import type { WaypointType } from '@aturi/waypoints'; +import type { WaypointType } from '@aturi.to/waypoints'; import { useWaypoints, type CustomWaypoint, @@ -149,7 +149,7 @@ function contextText(type: WaypointType, display: string): string { /** * Self-contained "Open in…" picker. Headless by default — emits namespaced * `data-aturi-wp` hooks and `aturi-wp-*` classes but ships no CSS. Opt into the - * polished theme with `import '@aturi/waypoints-react/styles.css'`, map your own + * polished theme with `import '@aturi.to/waypoints-react/styles.css'`, map your own * classes via `classNames`, pass `unstyled` to drop built-in classes, or replace * rows entirely with `renderWaypoint`. */ diff --git a/packages/waypoints-react/src/index.ts b/packages/waypoints-react/src/index.ts index 79e924b..daf2366 100644 --- a/packages/waypoints-react/src/index.ts +++ b/packages/waypoints-react/src/index.ts @@ -1,5 +1,5 @@ // Re-export the full core so a React consumer needs only one install. -export * from '@aturi/waypoints'; +export * from '@aturi.to/waypoints'; export { useWaypoints } from './useWaypoints'; export type { diff --git a/packages/waypoints-react/src/useWaypoints.ts b/packages/waypoints-react/src/useWaypoints.ts index 7ea88b1..b189846 100644 --- a/packages/waypoints-react/src/useWaypoints.ts +++ b/packages/waypoints-react/src/useWaypoints.ts @@ -7,7 +7,7 @@ import { type WaypointCategoryData, type WaypointData, type WaypointType, -} from '@aturi/waypoints'; +} from '@aturi.to/waypoints'; import { WAYPOINT_ICONS } from './waypointIcons'; /** A single waypoint resolved against a target, ready to render. */ diff --git a/packages/waypoints-react/tsup.config.ts b/packages/waypoints-react/tsup.config.ts index 56309d6..497c748 100644 --- a/packages/waypoints-react/tsup.config.ts +++ b/packages/waypoints-react/tsup.config.ts @@ -8,7 +8,7 @@ export default defineConfig({ clean: true, treeshake: true, target: 'es2020', - external: ['react', 'react-dom', 'lucide-react', '@aturi/waypoints'], + external: ['react', 'react-dom', 'lucide-react', '@aturi.to/waypoints'], esbuildOptions(options) { options.jsx = 'automatic'; }, diff --git a/packages/waypoints/README.md b/packages/waypoints/README.md index c5800a2..eaae7df 100644 --- a/packages/waypoints/README.md +++ b/packages/waypoints/README.md @@ -1,4 +1,4 @@ -# @aturi/waypoints +# @aturi.to/waypoints Aturi's curated catalog of Atmosphere (AT Protocol) clients — "waypoints" — plus the logic to turn an AT URI into per-client "Open in…" links, recommend the best @@ -7,7 +7,7 @@ client for a record type, and reverse-resolve a pasted URL back into an AT URI. Zero runtime dependencies. Works in the browser, Node 18+, and edge runtimes. Ships ESM + CJS with full type definitions. -For a drop-in React picker UI, see [`@aturi/waypoints-react`](../waypoints-react). +For a drop-in React picker UI, see [`@aturi.to/waypoints-react`](../waypoints-react). > **Beta — early release.** This is a `0.x` package that hasn't been > thoroughly tested in production yet. Expect rough edges, and possible @@ -18,13 +18,13 @@ For a drop-in React picker UI, see [`@aturi/waypoints-react`](../waypoints-react ## Install ```sh -npm install @aturi/waypoints +npm install @aturi.to/waypoints ``` ## Quick start ```ts -import { resolveAtUri, resolveUrl, buildWaypointsForParsed } from '@aturi/waypoints'; +import { resolveAtUri, resolveUrl, buildWaypointsForParsed } from '@aturi.to/waypoints'; // AT URI -> waypoints const result = resolveAtUri('at://did:plc:abc/app.bsky.feed.post/3k7'); diff --git a/packages/waypoints/package.json b/packages/waypoints/package.json index 0a54359..3ebb23d 100644 --- a/packages/waypoints/package.json +++ b/packages/waypoints/package.json @@ -1,5 +1,5 @@ { - "name": "@aturi/waypoints", + "name": "@aturi.to/waypoints", "version": "0.1.0", "description": "[Beta] Aturi's curated catalog of Atmosphere (AT Protocol) clients, with per-client \"Open in…\" link builders, recommendations, and URL/AT-URI resolution. Zero runtime dependencies.", "license": "MIT", diff --git a/packages/waypoints/scripts/sync.mjs b/packages/waypoints/scripts/sync.mjs index 1f73ae8..174fa4d 100644 --- a/packages/waypoints/scripts/sync.mjs +++ b/packages/waypoints/scripts/sync.mjs @@ -32,7 +32,7 @@ const rewriteAnisotaImport = (s) => ); const FILES = [ - // Zero-dependency core logic -> @aturi/waypoints + // Zero-dependency core logic -> @aturi.to/waypoints { from: resolve(repoRoot, 'src/utils/waypoints.data.ts'), to: resolve(coreSrc, 'waypoints.data.ts'), @@ -48,7 +48,7 @@ const FILES = [ to: resolve(coreSrc, 'reverseParsers.ts'), transform: identity, }, - // React icon catalog + its Anisota dependency -> @aturi/waypoints-react + // React icon catalog + its Anisota dependency -> @aturi.to/waypoints-react { from: resolve(repoRoot, 'src/utils/waypointIcons.tsx'), to: resolve(reactSrc, 'waypointIcons.tsx'),