A React component library for rendering common AT Protocol records for applications such as Bluesky and Leaflet.
40
fork

Configure Feed

Select the types of activity you want to include in your feed.

version bump, readme update, pacakge maintainence

+25 -5
+2 -2
.gitignore
··· 6 6 yarn-error.log* 7 7 pnpm-debug.log* 8 8 lerna-debug.log* 9 - 9 + demo 10 10 node_modules 11 11 dist 12 12 lib-dist ··· 25 25 *.sln 26 26 *.sw? 27 27 28 - *.tsbuildinfo 28 + *.tsbuildinfo
+1
README.md
··· 25 25 26 26 ```tsx 27 27 import { AtProtoProvider, BlueskyPost, LeafletDocument } from "atproto-ui"; 28 + import "atproto-ui/styles.css"; 28 29 29 30 export function App() { 30 31 return (
+1 -1
lib/index.ts
··· 1 1 // Master exporter for the AT React component library. 2 2 3 - // Global styles - import this in your app root 4 3 import "./styles.css"; 5 4 6 5 // Providers & core primitives ··· 35 34 // Types 36 35 export * from "./types/bluesky"; 37 36 export * from "./types/leaflet"; 37 + export * from "./types/theme"; 38 38 39 39 // Utilities 40 40 export * from "./utils/at-uri";
lib/theme-type.ts lib/types/theme.ts
+2
package.json
··· 24 24 "scripts": { 25 25 "dev": "vite", 26 26 "build": "vite build && tsc -b", 27 + "build:demo": "BUILD_TARGET=demo vite build", 28 + "build:all": "npm run build && npm run build:demo", 27 29 "lint": "eslint .", 28 30 "preview": "vite preview", 29 31 "prepublishOnly": "npm run build"
+1
src/App.tsx
··· 1 1 import React, { useState, useCallback, useRef } from "react"; 2 2 import { AtProtoProvider } from "../lib"; 3 + import "../lib/styles.css" 3 4 import "./App.css"; 4 5 5 6 import { TangledString } from "../lib/components/TangledString";
+18 -2
vite.config.ts
··· 18 18 }; 19 19 } 20 20 21 + const buildDemo = process.env.BUILD_TARGET === 'demo'; 22 + 21 23 // https://vite.dev/config/ 22 24 export default defineConfig({ 23 - plugins: [react(), dts({ tsconfigPath: './tsconfig.lib.json' }), injectCssImport()], 24 - build: { 25 + plugins: buildDemo 26 + ? [react()] 27 + : [react(), dts({ tsconfigPath: './tsconfig.lib.json' }), injectCssImport()], 28 + 29 + // Demo app needs to resolve from src 30 + root: buildDemo ? '.' : undefined, 31 + 32 + build: buildDemo ? { 33 + // Demo app build configuration 34 + outDir: 'demo', 35 + rollupOptions: { 36 + input: resolve(__dirname, 'index.html') 37 + }, 38 + sourcemap: true 39 + } : { 40 + // Library build configuration 25 41 lib: { 26 42 entry: resolve(__dirname, 'lib/index.ts'), 27 43 name: 'atproto-ui',