Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 13 additions & 0 deletions .hintrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
{
"extends": [
"development"
],
"hints": {
"axe/aria": [
"default",
{
"aria-valid-attr-value": "off"
}
]
}
}
48 changes: 1 addition & 47 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,47 +1 @@
<div align="center">
<img alt="Portfolio" src="https://github.com/dillionverma/portfolio/assets/16860528/57ffca81-3f0a-4425-b31d-094f61725455" width="90%">
</div>

# Portfolio [![Deploy with Vercel](https://vercel.com/button)](https://vercel.com/new/clone?repository-url=https%3A%2F%2Fgithub.com%2Fdillionverma%2Fportfolio)

Built with next.js, [shadcn/ui](https://ui.shadcn.com/), and [magic ui](https://magicui.design/), deployed on Vercel.

# Features

- Setup only takes a few minutes by editing the [single config file](./src/data/resume.tsx)
- Built using Next.js 14, React, Typescript, Shadcn/UI, TailwindCSS, Framer Motion, Magic UI
- Includes a blog
- Responsive for different devices
- Optimized for Next.js and Vercel

# Getting Started Locally

1. Clone this repository to your local machine:

```bash
git clone https://github.com/dillionverma/portfolio
```

2. Move to the cloned directory

```bash
cd portfolio
```

3. Install dependencies:

```bash
pnpm install
```

4. Start the local Server:

```bash
pnpm dev
```

5. Open the [Config file](./src/data/resume.tsx) and make changes

# License

Licensed under the [MIT license](https://github.com/dillionverma/portfolio/blob/main/LICENSE.md).
Design Engineer Portfolio
1 change: 1 addition & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@
"class-variance-authority": "^0.7.1",
"clsx": "^2.1.1",
"content-collections": "^0.2.1",
"lenis": "^1.3.18",
"lucide-react": "^0.562.0",
"motion": "^12.23.27",
"next": "16.1.1",
Expand Down
21 changes: 21 additions & 0 deletions pnpm-lock.yaml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

35 changes: 28 additions & 7 deletions src/app/globals.css
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@

:root {
--radius: 0.625rem;
--background: oklch(1 0 0);
--background: #fafafa;
--foreground: oklch(0.145 0 0);
--card: oklch(1 0 0);
--card-foreground: oklch(0.145 0 0);
Expand Down Expand Up @@ -78,7 +78,7 @@
}

.dark {
--background: oklch(0.18 0 0);
--background: oklch(15.907% 0.00002 271.152);
--foreground: oklch(0.985 0 0);
--card: oklch(0.205 0 0);
--card-foreground: oklch(0.985 0 0);
Expand Down Expand Up @@ -112,6 +112,27 @@
}

@layer base {
html {
scroll-behavior: auto;
}

html.lenis,
html.lenis body {
height: auto;
}

.lenis.lenis-smooth [data-lenis-prevent] {
overscroll-behavior: contain;
}

.lenis.lenis-stopped {
overflow: clip;
}

.lenis.lenis-smooth iframe {
pointer-events: none;
}

* {
@apply border-border;
}
Expand All @@ -133,15 +154,16 @@
background-color: transparent;
}

.prose pre {
.prose pre {
@apply leading-relaxed bg-transparent! font-mono!;
}

.prose code {
@apply m-0! mx-1! border rounded-md! px-1.5 py-0.5 bg-muted/60 dark:bg-muted/40 text-[13px]! font-mono text-foreground/90!;
}

.prose code::before, .prose code::after {
.prose code::before,
.prose code::after {
@apply content-none!;
}

Expand Down Expand Up @@ -212,7 +234,7 @@
@apply px-6 py-4 align-middle m-0 whitespace-nowrap;
}

.prose tr{
.prose tr {
@apply hover:bg-accent/50! transition-colors! cursor-pointer! h-10!;
}

Expand All @@ -232,5 +254,4 @@
.prose :where(tbody tr:last-child td):not(:where([class~="not-prose"] *)) {
@apply border-b-0;
}

}
}
37 changes: 20 additions & 17 deletions src/app/layout.tsx
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
import Navbar from "@/components/navbar";
import LenisProvider from "@/components/lenis-provider";
import { ThemeProvider } from "@/components/theme-provider";
import { TooltipProvider } from "@/components/ui/tooltip";
import { DATA } from "@/data/resume";
Expand Down Expand Up @@ -71,23 +72,25 @@ export default function RootLayout({
)}
>
<ThemeProvider attribute="class" defaultTheme="light">
<TooltipProvider delayDuration={0}>
<div className="absolute inset-0 top-0 left-0 right-0 h-[100px] overflow-hidden z-0">
<FlickeringGrid
className="h-full w-full"
squareSize={2}
gridGap={2}
style={{
maskImage: "linear-gradient(to bottom, black, transparent)",
WebkitMaskImage: "linear-gradient(to bottom, black, transparent)",
}}
/>
</div>
<div className="relative z-10 max-w-2xl mx-auto py-12 pb-24 sm:py-24 px-6">
{children}
</div>
<Navbar />
</TooltipProvider>
<LenisProvider>
<TooltipProvider delayDuration={0}>
<div className="absolute inset-0 top-0 left-0 right-0 h-[100px] overflow-hidden z-0">
<FlickeringGrid
className="h-full w-full"
squareSize={2}
gridGap={2}
style={{
maskImage: "linear-gradient(to bottom, black, transparent)",
WebkitMaskImage: "linear-gradient(to bottom, black, transparent)",
}}
/>
</div>
<div className="relative z-10 max-w-2xl mx-auto px-6 pb-24 pt-30 sm:pb-24 sm:pt-36">
{children}
</div>
<Navbar />
</TooltipProvider>
</LenisProvider>
</ThemeProvider>
</body>
</html>
Expand Down
Loading