Skip to content

Commit 3dab0e9

Browse files
committed
static
1 parent 6d7318d commit 3dab0e9

19 files changed

+732
-493
lines changed

Diff for: app/api/paper/[id]/route.js

Whitespace-only changes.

Diff for: app/api/search/route.js

-26
This file was deleted.

Diff for: app/globals.css

+9-1
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,17 @@ body {
1212
}
1313
}
1414

15+
.code-viewer {
16+
padding: 1rem;
17+
background-color: #1e293b; /* Dark background */
18+
color: #d1d5db; /* Lighter text color */
19+
overflow-y: scroll;
20+
height: 100%;
21+
}
22+
1523
@layer base {
1624
:root {
25+
--radius: 0.5rem;
1726
--background: 0 0% 100%;
1827
--foreground: 222.2 84% 4.9%;
1928
--card: 0 0% 100%;
@@ -38,7 +47,6 @@ body {
3847
--chart-3: 197 37% 24%;
3948
--chart-4: 43 74% 66%;
4049
--chart-5: 27 87% 67%;
41-
--radius: 0.5rem;
4250
}
4351
.dark {
4452
--background: 222.2 84% 4.9%;

Diff for: app/layout.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ const geistMono = localFont({
1313
});
1414

1515
export const metadata = {
16-
title: "Create Next App",
16+
title: "MeetMinds",
1717
description: "Generated by create next app",
1818
};
1919

Diff for: app/page.js

+52-26
Original file line numberDiff line numberDiff line change
@@ -1,34 +1,60 @@
1-
"use client"
2-
import SearchForm from '@/components/SearchForm'
3-
import { useInView } from 'framer-motion'
4-
import debounce from 'lodash/debounce'
5-
import {useState, useEffect, useCallback} from 'react'
61

7-
export default function Home() {
8-
const {searchTerm, setSearchTerm} = useState('')
9-
const [category, setCategory] = useState('')
10-
const [paper, setPaper] = useState('')
11-
const [isLoading, setIsLoading] = useState('')
12-
const [page, setPage] = useState(1)
13-
const [hasMore, setHasMore] = useState(true)
14-
15-
const { ref, inView } = useInView({
16-
threshold : 0,
17-
})
2+
import Navbar from '../components/Navbar'
3+
import Banner from "../components/Banner"
4+
import Post from "../components/Post"
185

19-
const debouncedSearch = useCallback(
20-
debounce((term, cat) => {
21-
handleSearch(term, cat)
22-
}, 300),
23-
[]
24-
)
6+
const items = [
7+
{
8+
id: 1,
9+
title: "JWT Authentication",
10+
languages: "Node.js",
11+
desc: "JWT Authentication: Implements secure user authentication using JSON Web Tokens (JWT), handling user sessions and protecting routes.",
12+
link: "/post/jwtauthentication"
13+
},
14+
{
15+
id: 2,
16+
title: "Rate Limitter",
17+
languages: "JavaScript",
18+
desc: "Rate limiter: Controls traffic flow, limits requests, and throttles excessive usage to prevent overload, DDoS attacks, and ensure stability.",
19+
link: "/post/ratelimiter"
20+
},
21+
{
22+
id: 3,
23+
title: "CRUD API with MongoDB",
24+
languages: "Node.js, MongoDB",
25+
desc: "CRUD API: Provides endpoints for creating, reading, updating, and deleting resources, built using MongoDB as the database.",
26+
link: "/post/crudapi"
27+
},
28+
{
29+
id: 4,
30+
title: "File Upload Service",
31+
languages: "Python, Flask",
32+
desc: "File Upload: Service for handling file uploads with validation and storage on the server, ensuring secure and efficient file handling.",
33+
link: "/post/fileuploadservice"
34+
},
35+
{
36+
id: 5,
37+
title: "WebSocket Chat App",
38+
languages: "JavaScript, Node.js",
39+
desc: "WebSocket Chat: Real-time communication app using WebSocket protocol, allowing users to send and receive messages instantly.",
40+
link: "/post/websocketchat"
41+
}
42+
];
2543

44+
export default function Home() {
2645
return (
27-
<div className="container mx-auto p-4">
28-
<h1 className="text-3xl font-bold mb-4">ResearchHub</h1>
29-
<SearchForm searchTerm={searchTerm} setSearchTerm={setSearchTerm} category={category} setCategory={setCategory} />
46+
<div className="container mx-auto">
47+
<Navbar />
48+
49+
<div className="mt-[4rem]">
50+
<Banner />
51+
</div>
3052

31-
<div className="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-4"></div>
53+
<div className="mt-[2rem] grid lg:grid-cols-3 md:grid-cols-2 gap-5 ">
54+
{items.map((item, id) => (
55+
<Post title={item.title} languages={item.languages} desc={item.desc} link={item.link} />
56+
))}
57+
</div>
3258
</div>
3359
);
3460
}

Diff for: app/paper/[id]/page.js

-14
This file was deleted.

Diff for: app/post/[string]/page.jsx

+33
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
import { Badge } from "@/components/ui/badge";
2+
import { Button } from "@/components/ui/button";
3+
import ProjectStructure from "../../../components/ProjectStructure"
4+
import Link from "next/link";
5+
import ProjectBrief from "@/components/ProjectBrief";
6+
import CodeViewer from "@/components/CodeViewer"
7+
8+
const Pages = () => {
9+
return (
10+
<div className="container mx-auto my-7 p-4">
11+
<div className="text-3xl font-bold flex justify-between">
12+
JWT Authentication
13+
<Link href={"/"}>
14+
<Button>Homepage</Button>
15+
</Link>
16+
</div>
17+
<div className="mt-5">
18+
<Badge>JavaScript</Badge>
19+
</div>
20+
21+
<div className="mt-8 flex flex-col">
22+
<div className="mt-5 flex gap-6">
23+
<ProjectStructure />
24+
<ProjectBrief />
25+
</div>
26+
<h1 className="text-xl p-[0.7rem] py-4 font-semibold">Code Walkthrough </h1>
27+
<CodeViewer />
28+
</div>
29+
</div>
30+
);
31+
};
32+
33+
export default Pages;

Diff for: components/Banner.jsx

+39
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
import { Scale, Search, ShieldOff } from "lucide-react";
2+
import { Button } from "./ui/button";
3+
import { Input } from "./ui/input";
4+
5+
const Banner = () => {
6+
return (
7+
<div className="flex flex-col max-w-4xl mx-auto">
8+
<h1 className="text-center text-5xl font-bold">
9+
Search for most optimised backend code to integrate in your app
10+
</h1>
11+
12+
<div className="m-4 mt-6 flex gap-2">
13+
<Input placeholder="Search for code ..." />
14+
<Button>
15+
<Search />
16+
</Button>
17+
</div>
18+
19+
<div className="flex mx-auto gap-4">
20+
<Button
21+
variant="outline"
22+
className="flex gap-2 hover:shadow-lg duration-100 ease-in-out"
23+
>
24+
<Scale />
25+
optimized LoadBalancer
26+
</Button>
27+
<Button
28+
variant="outline"
29+
className="flex gap-2 hover:shadow-lg duration-100 ease-in-out"
30+
>
31+
<ShieldOff />
32+
optimized Ratelimiter
33+
</Button>
34+
</div>
35+
</div>
36+
);
37+
};
38+
39+
export default Banner;

0 commit comments

Comments
 (0)