A simple tool which lets you scrape twitter accounts and crosspost them to bluesky accounts! Comes with a CLI and a webapp for managing profiles! Works with images/videos/link embeds/threads.
at main 94 lines 2.3 kB view raw
1@import url('https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;700&family=Space+Grotesk:wght@400;500;600;700&display=swap'); 2 3@tailwind base; 4@tailwind components; 5@tailwind utilities; 6 7@layer base { 8 :root { 9 --background: 0 0% 99%; 10 --foreground: 0 0% 8%; 11 --card: 0 0% 100%; 12 --card-foreground: 0 0% 8%; 13 --primary: 0 0% 10%; 14 --primary-foreground: 0 0% 98%; 15 --secondary: 0 0% 94%; 16 --secondary-foreground: 0 0% 16%; 17 --muted: 0 0% 96%; 18 --muted-foreground: 0 0% 40%; 19 --border: 0 0% 86%; 20 --input: 0 0% 86%; 21 --ring: 0 0% 25%; 22 } 23 24 .dark { 25 --background: 0 0% 6%; 26 --foreground: 0 0% 95%; 27 --card: 0 0% 9%; 28 --card-foreground: 0 0% 95%; 29 --primary: 0 0% 96%; 30 --primary-foreground: 0 0% 8%; 31 --secondary: 0 0% 16%; 32 --secondary-foreground: 0 0% 96%; 33 --muted: 0 0% 14%; 34 --muted-foreground: 0 0% 70%; 35 --border: 0 0% 22%; 36 --input: 0 0% 22%; 37 --ring: 0 0% 70%; 38 } 39 40 * { 41 @apply border-border; 42 } 43 44 html, 45 body, 46 #root { 47 @apply min-h-screen; 48 } 49 50 html { 51 scroll-behavior: smooth; 52 } 53 54 body { 55 @apply bg-background text-foreground antialiased; 56 font-family: 'Space Grotesk', system-ui, sans-serif; 57 background-image: 58 radial-gradient(circle at 12% 18%, rgba(0, 0, 0, 0.06) 0, transparent 24%), 59 radial-gradient(circle at 84% 0%, rgba(0, 0, 0, 0.07) 0, transparent 28%), 60 linear-gradient(140deg, rgba(255, 255, 255, 0.85), rgba(245, 245, 245, 0.5)); 61 background-attachment: fixed; 62 } 63 64 .dark body { 65 background-image: 66 radial-gradient(circle at 10% 14%, rgba(255, 255, 255, 0.08) 0, transparent 24%), 67 radial-gradient(circle at 85% 0%, rgba(255, 255, 255, 0.06) 0, transparent 24%), 68 linear-gradient(145deg, rgba(11, 11, 11, 0.95), rgba(18, 18, 18, 0.86)); 69 } 70 71 @media (prefers-reduced-motion: reduce) { 72 html { 73 scroll-behavior: auto; 74 } 75 76 *, 77 *::before, 78 *::after { 79 animation-duration: 1ms !important; 80 animation-iteration-count: 1 !important; 81 transition-duration: 1ms !important; 82 } 83 } 84} 85 86@layer components { 87 .panel-grid { 88 @apply grid gap-6 lg:grid-cols-[2fr_1fr]; 89 } 90 91 .interactive-row { 92 @apply transition-colors duration-200 motion-reduce:transition-none hover:bg-muted/45; 93 } 94}