@@ -6,6 +6,7 @@ import { BlueprintBackground } from "@/components/blueprint-background";
66import { DustOverlay } from "@/components/dust-overlay" ;
77import { NoiseBackground } from "@/components/noise-background" ;
88import { PaperTextureOverlay } from "@/components/paper-texture-overlay" ;
9+ import { RepoCard } from "@/components/repo-card" ;
910import { VignetteOverlay } from "@/components/vignette-overlay" ;
1011
1112const LightRays = lazy ( ( ) => import ( "@/components/light-rays-2" ) ) ;
@@ -53,9 +54,9 @@ function RouteComponent() {
5354 </ Suspense >
5455 </ div >
5556
56- < div className = "relative z-50 flex items-center justify-center min-h-screen p-8" >
57+ < div className = "relative z-50 flex flex-col items-center justify-center min-h-screen p-8 max-sm:p-2 mt-56 " >
5758 < div className = "relative max-w-3xl w-full" >
58- < div className = "relative backdrop-blur-sm border border-white/30 rounded-3xl bg-background/10 p-8 py-12 shadow-2xl" >
59+ < div className = "relative backdrop-blur-sm border border-white/30 rounded-3xl bg-background/10 p-8 py-12 max-sm:p-2 max-sm:py-12 shadow-2xl" >
5960 < div className = "absolute -top-6 -left-6 w-4 h-4 border-l-2 border-t-2 border-white/30" > </ div >
6061 < div className = "absolute -top-6 -right-6 w-4 h-4 border-r-2 border-t-2 border-white/30" > </ div >
6162 < div className = "absolute -bottom-6 -left-6 w-4 h-4 border-l-2 border-b-2 border-white/30" > </ div >
@@ -67,20 +68,22 @@ function RouteComponent() {
6768 < div className = "absolute -right-1 top-8 bottom-8 w-px bg-gradient-to-b from-transparent via-white/40 to-transparent" > </ div >
6869
6970 < div className = "text-center text-white relative" >
70- < h1 className = "text-5xl font-bold mb-2 mt-2" > Changelogs AI</ h1 >
71- < h2 className = "text-xl opacity-90 mb-10" >
71+ < h1 className = "text-5xl font-bold mb-2 mt-2 max-sm:mb-4 max-sm:text-3xl" >
72+ Changelogs AI
73+ </ h1 >
74+ < h2 className = "text-xl opacity-90 mb-10 max-sm:text-lg" >
7275 Paste your repo. Get clean release notes. Done.
7376 </ h2 >
7477
7578 < div className = "mb-6 max-w-md mx-auto" >
79+ < p className = "sm:hidden text-white/60 text-xs mb-2 text-left" > github.com/</ p >
7680 < form
7781 className = "relative flex items-stretch bg-white/10 backdrop-blur-sm border border-white/30 rounded-lg overflow-hidden"
7882 onSubmit = { ( e ) => {
7983 e . preventDefault ( ) ;
8084 const formData = new FormData ( e . currentTarget ) ;
8185 const ownerAndRepo = formData . get ( "ownerAndRepo" ) as string ;
8286 const [ owner , repo ] = ownerAndRepo . split ( "/" ) ;
83- console . log ( owner , repo ) ;
8487 if ( owner && repo ) {
8588 navigate ( {
8689 to : "/$owner/$repo" ,
@@ -102,13 +105,13 @@ function RouteComponent() {
102105 } }
103106 >
104107 < div className = "relative flex items-center w-full" >
105- < p className = "absolute left-4 top-1/2 -translate-y-1/2 text-white/60 select-none pointer-events-none" >
108+ < p className = "absolute left-4 top-1/2 -translate-y-1/2 text-white/60 select-none pointer-events-none max-sm:hidden " >
106109 github.com/
107110 </ p >
108111 < input
109112 name = "ownerAndRepo"
110113 placeholder = "asyncstatus/asyncstatus"
111- className = "flex-1 bg-transparent pl-[6.64rem] pr-4 py-3 text-white placeholder-white/60 focus:outline-none focus:ring-2 focus:ring-white/50 focus:ring-inset min-h-[48px]"
114+ className = "flex-1 bg-transparent pl-[6.64rem] max-sm:pl-4 pr-4 py-3 text-white placeholder-white/60 focus:outline-none focus:ring-2 focus:ring-white/50 focus:ring-inset min-h-[48px]"
112115 onPaste = { ( e ) => {
113116 const raw = e . clipboardData . getData ( "text" ) ;
114117 let text = raw . trim ( ) ;
@@ -139,10 +142,14 @@ function RouteComponent() {
139142 </ form >
140143 </ div >
141144
142- < div className = "flex justify-center space-x-4 text-sm opacity-70" >
143- < span > • AI powered</ span >
144- < span > • Zero setup</ span >
145- < span > • Actually good</ span >
145+ < div className = "flex justify-center space-x-4 text-sm opacity-70 max-sm:hidden" >
146+ < span className = "max-sm:text-lg" > • AI powered</ span >
147+ < span className = "max-sm:text-lg" > • Zero setup</ span >
148+ < span className = "max-sm:text-lg" > • Actually good</ span >
149+ </ div >
150+
151+ < div className = "opacity-70 text-lg px-4 text-pretty sm:hidden" >
152+ AI powered • Zero setup • Actually good
146153 </ div >
147154 </ div >
148155 </ div >
@@ -157,6 +164,48 @@ function RouteComponent() {
157164 Powered by < AsyncStatusLogo className = "size-3" /> AsyncStatus
158165 </ a >
159166 </ div >
167+
168+ < div className = "mt-24 grid grid-cols-2 gap-4 max-sm:grid-cols-1" >
169+ < RepoCard
170+ owner = "asyncstatus"
171+ repo = "asyncstatus"
172+ description = "Async status updates for remote startups."
173+ stargazersCount = { 11 }
174+ watchersCount = { 1 }
175+ forksCount = { 0 }
176+ openIssuesCount = { 0 }
177+ />
178+
179+ < RepoCard
180+ owner = "over-sh"
181+ repo = "bun"
182+ description = "ncredibly fast JavaScript runtime, bundler, test runner, and package manager – all in one"
183+ stargazersCount = { 80156 }
184+ watchersCount = { 575 }
185+ forksCount = { 3296 }
186+ openIssuesCount = { 5328 }
187+ />
188+
189+ < RepoCard
190+ owner = "tinygrad"
191+ repo = "teenygrad"
192+ description = "If tinygrad wasn't small enough for you..."
193+ stargazersCount = { 736 }
194+ watchersCount = { 11 }
195+ forksCount = { 102 }
196+ openIssuesCount = { 6 }
197+ />
198+
199+ < RepoCard
200+ owner = "patroninc"
201+ repo = "patron"
202+ description = "An open source Patreon alternative with lower fees designed for creators who publish ongoing sequential content like books, podcasts, and comics."
203+ stargazersCount = { 59 }
204+ watchersCount = { 2 }
205+ forksCount = { 2 }
206+ openIssuesCount = { 1 }
207+ />
208+ </ div >
160209 </ div >
161210 </ div >
162211 ) ;
0 commit comments