Skip to content

Commit f2e771e

Browse files
author
Fari
authored
Merge pull request #12 from lampungdevtech/feature/enhance-landing-page-responsiveness-and-update-site-content
Enhance Landing Page Responsiveness and Update Site Content
2 parents 269a6b2 + 9bbc237 commit f2e771e

File tree

7 files changed

+369
-182
lines changed

7 files changed

+369
-182
lines changed

apps/web/app/contact/page.tsx

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ export default function ContactPage() {
6262
<h3 className="font-semibold mb-1">Telepon</h3>
6363
<p className="text-muted-foreground mb-2">Senin - Jumat, 09:00 - 17:00 WIB</p>
6464
<a href="tel:+628123456789" className="text-primary hover:underline">
65-
+62 812-3456-789
65+
+62 812-1586-9294
6666
</a>
6767
</div>
6868
</div>
@@ -74,9 +74,8 @@ export default function ContactPage() {
7474
<div>
7575
<h3 className="font-semibold mb-1">Lokasi</h3>
7676
<p className="text-muted-foreground">
77-
Lampung Digital Hub<br />
78-
Jl. ZA. Pagar Alam No.24<br />
79-
Bandar Lampung, 35145
77+
Bandar Lampung<br />
78+
Metro<br />
8079
</p>
8180
</div>
8281
</div>

apps/web/app/members/page.tsx

Lines changed: 62 additions & 78 deletions
Original file line numberDiff line numberDiff line change
@@ -1,78 +1,30 @@
1-
"use client";
1+
'use client';
22

33
import { useState } from 'react';
4-
import { Input } from "@/components/ui/input";
5-
import { Button } from "@/components/ui/button";
6-
import { Card } from "@/components/ui/card";
7-
import { Search, Github, Twitter, Linkedin, Users2 } from "lucide-react";
8-
9-
const members = [
10-
{
11-
id: 1,
12-
name: "Riza Fahmi",
13-
role: "Senior Frontend Developer",
14-
company: "Tech Corp",
15-
location: "Bandar Lampung",
16-
skills: ["React", "TypeScript", "Node.js"],
17-
image: "https://images.unsplash.com/photo-1472099645785-5658abf4ff4e?auto=format&fit=crop&q=80&w=200",
18-
social: {
19-
github: "https://github.com/rizafahmi",
20-
twitter: "https://twitter.com/rizafahmi",
21-
linkedin: "https://linkedin.com/in/rizafahmi"
22-
}
23-
},
24-
{
25-
id: 2,
26-
name: "Sarah Drasana",
27-
role: "Backend Developer",
28-
company: "Startup XYZ",
29-
location: "Metro",
30-
skills: ["Python", "Django", "PostgreSQL"],
31-
image: "https://images.unsplash.com/photo-1438761681033-6461ffad8d80?auto=format&fit=crop&q=80&w=200",
32-
social: {
33-
github: "https://github.com/sarahdrasana",
34-
twitter: "https://twitter.com/sarahdrasana",
35-
linkedin: "https://linkedin.com/in/sarahdrasana"
36-
}
37-
},
38-
{
39-
id: 3,
40-
name: "Ahmad Zaky",
41-
role: "Full Stack Developer",
42-
company: "Freelancer",
43-
location: "Bandar Lampung",
44-
skills: ["JavaScript", "React", "Node.js", "MongoDB"],
45-
image: "https://images.unsplash.com/photo-1507003211169-0a1dd7228f2d?auto=format&fit=crop&q=80&w=200",
46-
social: {
47-
github: "https://github.com/ahmadzaky",
48-
twitter: "https://twitter.com/ahmadzaky",
49-
linkedin: "https://linkedin.com/in/ahmadzaky"
50-
}
51-
},
52-
{
53-
id: 4,
54-
name: "Linda Putri",
55-
role: "UI/UX Designer",
56-
company: "Design Studio",
57-
location: "Pringsewu",
58-
skills: ["Figma", "Adobe XD", "UI Design", "UX Research"],
59-
image: "https://images.unsplash.com/photo-1494790108377-be9c29b29330?auto=format&fit=crop&q=80&w=200",
60-
social: {
61-
github: "https://github.com/lindaputri",
62-
twitter: "https://twitter.com/lindaputri",
63-
linkedin: "https://linkedin.com/in/lindaputri"
64-
}
65-
}
66-
];
4+
import { Input } from '@/components/ui/input';
5+
import { Button } from '@/components/ui/button';
6+
import { Card } from '@/components/ui/card';
7+
import {
8+
Search,
9+
Github,
10+
Twitter,
11+
Linkedin,
12+
Users2,
13+
Instagram,
14+
} from 'lucide-react';
15+
import { members } from '@/constants/members';
6716

6817
export default function MembersPage() {
69-
const [searchQuery, setSearchQuery] = useState("");
18+
const [searchQuery, setSearchQuery] = useState('');
7019

71-
const filteredMembers = members.filter(member =>
72-
member.name.toLowerCase().includes(searchQuery.toLowerCase()) ||
73-
member.role.toLowerCase().includes(searchQuery.toLowerCase()) ||
74-
member.location.toLowerCase().includes(searchQuery.toLowerCase()) ||
75-
member.skills.some(skill => skill.toLowerCase().includes(searchQuery.toLowerCase()))
20+
const filteredMembers = members.filter(
21+
(member) =>
22+
member.name.toLowerCase().includes(searchQuery.toLowerCase()) ||
23+
member.role.toLowerCase().includes(searchQuery.toLowerCase()) ||
24+
member.location.toLowerCase().includes(searchQuery.toLowerCase()) ||
25+
member.skills.some((skill) =>
26+
skill.toLowerCase().includes(searchQuery.toLowerCase())
27+
)
7628
);
7729

7830
return (
@@ -81,7 +33,9 @@ export default function MembersPage() {
8133
{/* Header */}
8234
<div className="text-center mb-12">
8335
<h1 className="text-4xl font-bold mb-4">Anggota Komunitas</h1>
84-
<p className="text-muted-foreground">Temukan dan terhubung dengan sesama developer di Lampung</p>
36+
<p className="text-muted-foreground">
37+
Temukan dan terhubung dengan sesama developer di Lampung
38+
</p>
8539
</div>
8640

8741
{/* Search */}
@@ -110,7 +64,9 @@ export default function MembersPage() {
11064
<div>
11165
<h3 className="text-lg font-semibold">{member.name}</h3>
11266
<p className="text-primary">{member.role}</p>
113-
<p className="text-sm text-muted-foreground">{member.company}</p>
67+
<p className="text-sm text-muted-foreground">
68+
{member.company}
69+
</p>
11470
</div>
11571
</div>
11672
<p className="text-sm text-muted-foreground mb-4">
@@ -130,20 +86,46 @@ export default function MembersPage() {
13086
</div>
13187
<div className="flex space-x-2">
13288
<Button variant="ghost" size="icon" asChild>
133-
<a href={member.social.github} target="_blank" rel="noopener noreferrer">
89+
<a
90+
href={member.social.github}
91+
target="_blank"
92+
rel="noopener noreferrer"
93+
>
13494
<Github className="h-4 w-4" />
13595
</a>
13696
</Button>
13797
<Button variant="ghost" size="icon" asChild>
138-
<a href={member.social.twitter} target="_blank" rel="noopener noreferrer">
98+
<a
99+
href={member.social.twitter}
100+
target="_blank"
101+
rel="noopener noreferrer"
102+
>
139103
<Twitter className="h-4 w-4" />
140104
</a>
141105
</Button>
142106
<Button variant="ghost" size="icon" asChild>
143-
<a href={member.social.linkedin} target="_blank" rel="noopener noreferrer">
107+
<a
108+
href={member.social.linkedin}
109+
target="_blank"
110+
rel="noopener noreferrer"
111+
>
144112
<Linkedin className="h-4 w-4" />
145113
</a>
146114
</Button>
115+
<Button
116+
variant="ghost"
117+
size="icon"
118+
asChild
119+
className="hover:text-accent-foreground/80"
120+
>
121+
<a
122+
href={member.social.instagram}
123+
target="_blank"
124+
rel="noopener noreferrer"
125+
>
126+
<Instagram className="h-5 w-5" />
127+
</a>
128+
</Button>
147129
</div>
148130
</Card>
149131
))}
@@ -156,13 +138,15 @@ export default function MembersPage() {
156138
<Search className="h-12 w-12 absolute bottom-0 right-0 text-primary" />
157139
</div>
158140
</div>
159-
<h3 className="text-2xl font-semibold mb-2">Tidak Ada Anggota Ditemukan</h3>
141+
<h3 className="text-2xl font-semibold mb-2">
142+
Tidak Ada Anggota Ditemukan
143+
</h3>
160144
<p className="text-muted-foreground mb-8">
161145
Tidak ada anggota yang sesuai dengan kriteria pencarian Anda.
162146
{searchQuery && ` Coba cari dengan kata kunci yang berbeda.`}
163147
</p>
164148
{searchQuery && (
165-
<Button onClick={() => setSearchQuery("")}>
149+
<Button onClick={() => setSearchQuery('')}>
166150
Reset Pencarian
167151
</Button>
168152
)}
@@ -171,4 +155,4 @@ export default function MembersPage() {
171155
</div>
172156
</div>
173157
);
174-
}
158+
}

0 commit comments

Comments
 (0)