Skip to content

Commit 049c532

Browse files
committed
feat: load devops hobbies top 10 repositories added
1 parent ded83fd commit 049c532

File tree

7 files changed

+226
-101
lines changed

7 files changed

+226
-101
lines changed

package.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@
3333
"@react-three/fiber": "9.1.2",
3434
"@tabler/icons-react": "3.33.0",
3535
"@types/three": "0.176.0",
36+
"axios": "1.9.0",
3637
"class-variance-authority": "0.7.1",
3738
"clsx": "2.1.1",
3839
"gsap": "3.13.0",

pnpm-lock.yaml

Lines changed: 65 additions & 14 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/app/layout.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ import { Inter } from 'next/font/google'
77

88
import { Layout } from '@/components'
99
import { ThemeProvider } from '@/components/theme-provider'
10+
import { cn } from '@/lib'
1011

1112
const inter = Inter({ subsets: ['latin'] })
1213
config.autoAddCss = false
@@ -23,7 +24,7 @@ export default function RootLayout({
2324
}>) {
2425
return (
2526
<html lang="en" suppressHydrationWarning>
26-
<body className={inter.className}>
27+
<body className={cn(inter.className, 'lg:h-screen lg:overflow-hidden')}>
2728
<ThemeProvider attribute="class" defaultTheme="dark" enableSystem>
2829
<Layout>{children}</Layout>
2930
</ThemeProvider>

src/app/page.tsx

Lines changed: 5 additions & 82 deletions
Original file line numberDiff line numberDiff line change
@@ -1,90 +1,13 @@
11
import { BellIcon, CalendarIcon, FileTextIcon, GlobeIcon, InputIcon } from '@radix-ui/react-icons'
2-
import { FaMobileAlt, FaNodeJs, FaPython, FaReact, FaServer, FaVuejs } from 'react-icons/fa'
32

43
import { BentoCard, BentoGrid } from '@/components/magicui/bento-grid'
54
import RepositorySlider from '@/components/ui/repository-slider'
5+
import { GitHubOrganizationRepos } from '@/lib/repository'
6+
7+
export default async function Home() {
8+
const organizationRepos = new GitHubOrganizationRepos()
9+
const repositories = await organizationRepos.getTopStarredRepos('devopshobbies', 10)
610

7-
export default function Home() {
8-
const repositories = [
9-
{
10-
id: '1',
11-
name: 'React Dashboard',
12-
author: 'by devuser',
13-
description: 'A beautiful admin dashboard built with React, featuring multiple widgets, charts, and a responsive layout.',
14-
stars: 1200,
15-
forks: 45,
16-
watchers: 5700,
17-
language: 'JavaScript',
18-
languageColor: '#61DAFB',
19-
icon: <FaReact />,
20-
updated: 'Updated 2 days ago',
21-
},
22-
{
23-
id: '2',
24-
name: 'AI Chatbot',
25-
author: 'by mlengineer',
26-
description: 'An intelligent chatbot using natural language processing and machine learning to provide human-like responses.',
27-
stars: 3400,
28-
forks: 128,
29-
watchers: 12500,
30-
language: 'Python',
31-
languageColor: '#3572A5',
32-
icon: <FaPython />,
33-
updated: 'Updated 1 week ago',
34-
},
35-
{
36-
id: '3',
37-
name: 'Vue E-commerce',
38-
author: 'by frontenddev',
39-
description: 'Complete e-commerce solution with Vue.js, featuring product listings, cart functionality, and secure checkout.',
40-
stars: 876,
41-
forks: 32,
42-
watchers: 4200,
43-
language: 'Vue',
44-
languageColor: '#41B883',
45-
icon: <FaVuejs />,
46-
updated: 'Updated 3 days ago',
47-
},
48-
{
49-
id: '4',
50-
name: 'API Gateway',
51-
author: 'by backenddev',
52-
description: 'A high-performance API gateway built with Node.js and Express, featuring rate limiting, authentication, and caching.',
53-
stars: 2100,
54-
forks: 87,
55-
watchers: 8900,
56-
language: 'Node.js',
57-
languageColor: '#339933',
58-
icon: <FaNodeJs />,
59-
updated: 'Updated 5 days ago',
60-
},
61-
{
62-
id: '5',
63-
name: 'Flutter App',
64-
author: 'by mobiledev',
65-
description: 'A cross-platform mobile application with Flutter featuring beautiful UI components and smooth animations.',
66-
stars: 1500,
67-
forks: 56,
68-
watchers: 6300,
69-
language: 'Dart',
70-
languageColor: '#02569B',
71-
icon: <FaMobileAlt />,
72-
updated: 'Updated yesterday',
73-
},
74-
{
75-
id: '6',
76-
name: 'Microservices',
77-
author: 'by architect',
78-
description: 'A complete microservices architecture with Docker, Kubernetes, and service discovery implemented.',
79-
stars: 3800,
80-
forks: 142,
81-
watchers: 15200,
82-
language: 'Go',
83-
languageColor: '#007396',
84-
icon: <FaServer />,
85-
updated: 'Updated 2 weeks ago',
86-
},
87-
]
8811
const features = [
8912
{
9013
Icon: FileTextIcon,

src/components/layout/footer.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ function AppFooter() {
1717
2024 Devops Hobbies
1818
</p>
1919
</div>
20-
<div className="flex pt-2">
20+
<div className="flex pt-2 max-sm:flex-wrap">
2121
<Link href="#" className="pr-4 flex items-center "><span className="underline">Pricing</span></Link>
2222
<Link href="#" className="pr-4 flex items-center "><span className="underline">Contact</span></Link>
2323
<Link href="#" className="pr-4 flex items-center "><span className="underline">Twitter</span></Link>

src/components/layout/index.tsx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,13 +9,13 @@ import Hero from './hero'
99

1010
export function Layout({ children }: { children: ReactNode }) {
1111
return (
12-
<div className="flex flex-col mx-auto max-w-[1920px] min-h-screen overflow-hidden">
12+
<div className="flex flex-col mx-auto max-w-[1920px] lg:max-h-screen lg:overflow-hidden">
1313
<div className="flex flex-col lg:flex-row flex-1">
14-
<div id="hero" className="lg:w-4/12 w-full p-4 border-r border-gray-900">
14+
<div id="hero" className="lg:w-4/12 w-full p-4 border-r border-gray-900 lg:h-screen ">
1515
<Hero />
1616
</div>
1717

18-
<div id="context" className="relative lg:w-8/12 w-full overflow-y-auto no-scrollbar p-4 border-r border-gray-900">
18+
<div id="context" className="relative lg:h-screen lg:w-8/12 w-full overflow-y-auto no-scrollbar p-4 border-r border-gray-900">
1919
<DotPattern
2020
className={cn(
2121
'[mask-image:radial-gradient(300px_circle_at_center,orange,transparent)]',

0 commit comments

Comments
 (0)