Skip to content

Commit 93a42a5

Browse files
committed
improved images loading. using Astro.Image
1 parent a6fbe64 commit 93a42a5

10 files changed

Lines changed: 25 additions & 10 deletions

File tree

File renamed without changes.

src/components/projectShowcase.astro

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,10 @@
11
---
2+
import { Image } from "astro:assets";
3+
24
interface Props {
35
title: string;
46
link: string;
5-
slides: { image?: string; description?: string }[];
7+
slides: { image?: ImageMetadata; description?: string }[];
68
color: string;
79
}
810
@@ -26,10 +28,16 @@ const { title, link, slides, color } = Astro.props;
2628
<div class="showcase-slide flex md:flex-row flex-col-reverse md:mr-16 mb-16 gap-x-96 gap-y-10 border-b">
2729
{slide.image && (
2830
<div class="md:border-r p-5">
29-
<img
31+
<Image
3032
class="md:min-w-[768px] md:min-h-[425px] rounded-sm"
3133
src={slide.image}
32-
alt={slide.description}
34+
alt={slide.description || title}
35+
width={768}
36+
height={425}
37+
format="webp"
38+
quality={80}
39+
loading="lazy"
40+
decoding="async"
3341
/>
3442
</div>
3543
)}

src/pages/projects.astro

Lines changed: 13 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,11 @@
11
---
2+
import mindFirst from "../assets/1mindFirst.png";
3+
import mindSecond from "../assets/1mindSecond.png";
4+
import seshaSystemsFirst from "../assets/seshaSystemsFirst.png";
5+
import seshaSystemsSecond from "../assets/seshaSystemsSecond.png";
6+
import peaqueFirst from "../assets/peaqueFirst.png";
7+
import peaqueSecond from "../assets/peaqueSecond.png";
8+
29
import BaseLayout from "../layouts/base.astro";
310
import ProjectShowcase from "../components/projectShowcase.astro";
411
---
@@ -11,14 +18,14 @@ import ProjectShowcase from "../components/projectShowcase.astro";
1118
link="https://1mind.com"
1219
slides={[
1320
{
14-
image: "/1mindFirst.png",
21+
image: mindFirst,
1522
description: `1mind is an AI agent company.
1623
They specialize in creating both realistic and unrealistic ai avatars which can be trained
1724
on your voice and mannerisms in few minutes.
1825
They can be used as sales representatives, information providers, customer support agents and pretty much anywhere you would want customer interaction. `,
1926
},
2027
{
21-
image: "/1mindSecond.png",
28+
image: mindSecond,
2229
description: `I worked here as a fullstack engineer and cloud architect.
2330
helped create their zoom integration.
2431
built and managed parts of their aws and gcp cloud infrastructure.
@@ -45,11 +52,11 @@ openai.anthropic.`,
4552
link="https://peaque.io"
4653
slides={[
4754
{
48-
image: "/peaqueFirst.png",
55+
image: peaqueFirst,
4956
description: `peaque.io is an online book reading platform mixed with social media features. you can leave public notes/comments on any part of a book and people can react and reply to your notes. alongside that you can also create your own library, add custom artwork and chat with characters from the books (using ai).`,
5057
},
5158
{
52-
image: "/peaqueSecond.png",
59+
image: peaqueSecond,
5360
description: `i led a small team of 2 engineers and we built this entire platform from scratch. i worked as a fullstack engineer. built and implemented a custom version of an open source reading library(https://github.com/d-i-t-a/R2D2BC). designed the app architecture. built a fully response interface with my teammates. built the mobile app for this platform.`,
5461
},
5562
{
@@ -71,11 +78,11 @@ react helmet.`,
7178
link="https://sesha-systems.com"
7279
slides={[
7380
{
74-
image: "/seshaSystemsFirst.png",
81+
image: seshaSystemsFirst,
7582
description: `sesha systems is a multi-tenant article generation and editing tool. it allows users to provide 1 or more links to news articles. and then generates a new article based on the provided links. It can also be used to summarize news. it contains a full article management system with features version control, archiving, cross-org sharing, exporting and real time updates. `,
7683
},
7784
{
78-
image: "/seshaSystemsSecond.png",
85+
image: seshaSystemsSecond,
7986
description: `I worked as a fullstack engineer and cloud architect. built the application architecture including the article generation pipeline. created in-house tooling which included a custom syntax parser that our ai engineer used to create and edit prompts in real time.
8087
implemented multi-tenancy. built the user interface with real time article generation updates.`,
8188
},

src/styles/global.css

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ body {
4545
.grain-background {
4646
background:
4747
linear-gradient(25deg, #ffffff, #ffffff48),
48-
url(/noise.svg);
48+
url(/src/assets/noise.svg);
4949
}
5050

5151
.custom-cursor {

0 commit comments

Comments
 (0)