Skip to content

Commit ef553ad

Browse files
committed
feat: Some layout improvements, add experience
1 parent 4457c40 commit ef553ad

File tree

3 files changed

+23
-14
lines changed

3 files changed

+23
-14
lines changed

composeApp/src/wasmJsMain/kotlin/org/nsh07/nsh07/ui/AppScreen.kt

Lines changed: 20 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,15 @@ fun AppScreen(modifier: Modifier = Modifier) {
4242

4343
val experiences = remember {
4444
listOf(
45+
Experience(
46+
start = "Aug 2025",
47+
end = "Present",
48+
position = "Open Source Lead",
49+
description = "Perform the role of Open Source Lead of the Development Club. Helped successfully organise OPCODE (Open Source Fest) 2025.",
50+
company = "DevC, IIIT Bhagalpur",
51+
companyUrl = "https://gymkhana.iiitbh.ac.in/technical/",
52+
skills = listOf()
53+
),
4554
Experience(
4655
start = "May",
4756
end = "June 2025",
@@ -71,13 +80,13 @@ fun AppScreen(modifier: Modifier = Modifier) {
7180
)
7281
Spacer(Modifier.height(4.dp))
7382
Text(
74-
"Mobile app developer",
83+
"App developer",
7584
style = typography.titleLarge,
7685
color = colorScheme.onSurface
7786
)
7887
Spacer(Modifier.height(20.dp))
7988
Text(
80-
"I build performant, beautiful apps for mobile phones.",
89+
"I build performant, beautiful apps for mobile and desktop.",
8190
style = typography.bodyLarge,
8291
color = colorScheme.onSurfaceVariant,
8392
modifier = Modifier.widthIn(max = 320.dp)
@@ -154,31 +163,31 @@ fun AppScreen(modifier: Modifier = Modifier) {
154163
contentPadding = PaddingValues(vertical = 96.dp),
155164
modifier = Modifier.fillMaxHeight().weight(1.1f)
156165
) {
157-
items(paragraphs) {
166+
items(paragraphs, key = { it.substring(0, 16) }) {
158167
Text(
159168
it,
160169
style = typography.bodyLarge,
161170
color = colorScheme.onSurfaceVariant,
162171
modifier = Modifier.padding(start = cardPadding, bottom = 16.dp, end = cardPadding)
163172
)
164173
}
165-
item { Spacer(Modifier.height(112.dp)) }
166-
items(experiences) {
167-
ExperienceCard(experience = it, cardPadding = cardPadding)
174+
item("experience spacer") { Spacer(Modifier.height(112.dp)) }
175+
items(experiences, key = { it.start }) {
176+
ExperienceCard(experience = it, cardPadding = cardPadding, modifier = Modifier.padding(bottom = 32.dp))
168177
}
169-
item {
178+
item("linkedin link text") {
170179
Row(
171180
verticalAlignment = Alignment.CenterVertically,
172181
modifier = Modifier
173-
.padding(start = cardPadding, top = 32.dp)
182+
.padding(start = cardPadding)
174183
.clickable { uriHandler.openUri("https://www.linkedin.com/in/nsh07/") }
175184
) {
176185
Text("View LinkedIn Profile ", style = typography.bodyLarge, fontWeight = FontWeight.SemiBold)
177186
Icon(painterResource(Res.drawable.open_in_browser), null, Modifier.size(16.dp))
178187
}
179188
Spacer(Modifier.height(112.dp))
180189
}
181-
item {
190+
item("work in progress") {
182191
Column(
183192
horizontalAlignment = Alignment.CenterHorizontally,
184193
verticalArrangement = Arrangement.Center,
@@ -193,8 +202,8 @@ fun AppScreen(modifier: Modifier = Modifier) {
193202
Text("Work in progress", style = typography.headlineSmall)
194203
}
195204
}
196-
item { Spacer(Modifier.height(112.dp)) }
197-
item {
205+
item("tech stack spacer") { Spacer(Modifier.height(112.dp)) }
206+
item("tech stack") {
198207
Row(
199208
verticalAlignment = Alignment.CenterVertically,
200209
modifier = Modifier.padding(horizontal = cardPadding)

composeApp/src/wasmJsMain/kotlin/org/nsh07/nsh07/ui/ExperienceCard.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ fun ExperienceCard(
4646
remember { "${experience.start} $mdash ${experience.end}".toUpperCase(Locale.current) },
4747
style = typography.labelMedium,
4848
color = colorScheme.outline,
49-
modifier = Modifier.padding(vertical = 4.dp).weight(1f)
49+
modifier = Modifier.padding(top = 4.dp, end = 16.dp).weight(1f)
5050
)
5151
Column(Modifier.weight(3f)) {
5252
FlowRow(itemVerticalAlignment = Alignment.CenterVertically) {
@@ -65,7 +65,7 @@ fun ExperienceCard(
6565
color = colorScheme.onSurfaceVariant,
6666
modifier = Modifier.padding(top = 8.dp)
6767
)
68-
LabelRow(experience.skills, Modifier.padding(top = 16.dp))
68+
if (experience.skills.isNotEmpty()) LabelRow(experience.skills, Modifier.padding(top = 16.dp))
6969
}
7070
}
7171
}

composeApp/src/wasmJsMain/kotlin/org/nsh07/nsh07/ui/ProjectCard.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ fun ProjectCard(
4444
model = projectImageUri,
4545
contentDescription = null,
4646
contentScale = ContentScale.Crop,
47-
modifier = Modifier.weight(1f)
47+
modifier = Modifier.padding(end = 16.dp).weight(1f)
4848
)
4949
Column(Modifier.weight(3f)) {
5050
FlowRow(itemVerticalAlignment = Alignment.CenterVertically) {

0 commit comments

Comments
 (0)