Modern portfolio website built with SvelteKit 5, TypeScript & Tailwind CSS. Features dark mode, project showcase, coding stats integration, and responsive design.
Clone the repository
git clone https://github.com/NoornawazRahman/slick-portfolio-svelte-5.git
cd slick-portfolio-svelte-5
Install dependencies
npm install
# or
pnpm install
# or
yarn install
Start development server
npm run dev
Open your browser
Navigate to http://localhost:5173
Update the following files in src/lib/data/:
base.ts: Your name and basic infohome.ts: Homepage hero section and social linksnav-bar.ts: Navigation menu itemsskills.ts: Your technical skillsprojects.ts: Your projectsexperience.ts: Work experienceeducation.ts: Educational backgroundIf deploying to a subdirectory (e.g., GitHub Pages), update svelte.config.js:
const base = '/your-repo-name';
For root domain deployment, set:
const base = '';
static/logos/src/lib/data/assets.ts with your asset pathsstatic/favicon.png with your own faviconsrc/app.csssrc/markdown.csstailwind.config.tssrc/app.cssEdit src/lib/data/projects.ts:
{
slug: 'project-slug',
color: 'blue',
name: 'Project Name',
shortDescription: 'Brief description',
description: 'Detailed description in markdown',
githubReadme: 'https://raw.githubusercontent.com/user/repo/main/README.md',
links: [
{ to: 'https://github.com/user/repo', label: 'GitHub' }
],
logo: Assets.YourLogo,
period: {
from: new Date('2024-01-01'),
to: new Date('2024-06-01')
},
skills: getSkills('typescript', 'react'),
type: 'Web Application'
}
Edit src/lib/data/skills.ts:
defineSkill({
slug: 'skill-slug',
color: 'blue',
description: 'Skill description in markdown',
logo: Assets.SkillLogo,
name: 'Skill Name',
category: 'framework'
})
Edit src/lib/data/experience.ts:
{
slug: 'job-slug',
company: 'Company Name',
description: 'Job description',
contract: ContractType.FullTime,
type: 'Software Development',
location: 'City, Country',
period: { from: new Date(2023, 0, 1), to: new Date(2024, 0, 1) },
skills: getSkills('typescript', 'react'),
name: 'Job Title',
color: 'blue',
links: [],
logo: Assets.CompanyLogo,
shortDescription: 'Brief description'
}
svelte.config.js with your repository name.github/workflows/deploy.yml will automatically build and deployBuild the static site:
npm run build
The output will be in the build/ directory. Deploy this to:
Update theme colors in src/app.css:
:root {
--primary: 243 0% 4%;
--secondary: 243 10% 90%;
/* ... other colors */
}
Update fonts in uno.config.ts:
fonts: {
sans: {
name: 'Your Font',
weights: [400, 700],
provider: 'google'
}
}
All reusable components are in src/lib/components/:
common/: Shared componentsui/: UI library components (shadcn-svelte)This project uses a dual MIT License:
Both are licensed under the MIT License. See the LICENSE file for full details.
While this is a personal portfolio, suggestions and improvements are welcome! Feel free to open an issue or submit a pull request.
Made with ❤️ using SvelteKit