https://github.com/sm3sher/portfolio
Freelance software developer portfolio built with Next.js
https://github.com/sm3sher/portfolio
contentful graphql motion next next-intl next-themes react-hook-form supabase tailwindcss zod
Last synced: 2 months ago
JSON representation
Freelance software developer portfolio built with Next.js
- Host: GitHub
- URL: https://github.com/sm3sher/portfolio
- Owner: sm3sher
- License: agpl-3.0
- Created: 2024-11-08T07:45:26.000Z (6 months ago)
- Default Branch: main
- Last Pushed: 2025-02-14T15:23:23.000Z (2 months ago)
- Last Synced: 2025-02-14T16:28:27.894Z (2 months ago)
- Topics: contentful, graphql, motion, next, next-intl, next-themes, react-hook-form, supabase, tailwindcss, zod
- Language: TypeScript
- Homepage:
- Size: 10.2 MB
- Stars: 1
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
## Portfolio Project
### About this Project
This is the source code for my **personal portfolio website**, built to showcase my **skills, experience, and services** as a freelance software developer.
It serves as a **technical demonstration** of my expertise in **Next.js, TypeScript, and full-stack web development**.While the primary audience of the website is clients, this repository is meant for **developers** who are interested in the tech stack, best practices, and implementation details.
## โจ Features
- ๐ **Dark Mode Support**: Switch between light and dark mode, powered by [next-themes](https://github.com/pacocoursey/next-themes)
- โ **Form Validation**: Built with [react-hook-form](https://react-hook-form.com) and [zod](https://zod.dev) for reliable, smooth user experience
- ๐พ **Form Integration**: Submissions stored in [Supabase](https://supabase.com) for seamless backend management
- ๐ง **Email Verification**: Implements a secure email verification process on form submissions using [Nodemailer](https://nodemailer.com)
- ๐ **Content Management**: Manage content via [Contentful](https://contentful.com), integrated with [GraphQL](https://graphql.org/) queries
- ๐ **Multi-Language Support**: Fully localized content with [next-intl](https://next-intl.dev/) to cater to a global audience
- ๐ผ๏ธ **Lightweight Icons**: Integrated with [hugeicons-react](https://hugeicons.com) for scalable, high-quality icons
- ๐๏ธ **Modern Typography**: Uses the [Geist font](https://vercel.com/font) from Vercel for clean, readable text
- ๐ฑ **Mobile-First Styling**: Developed with [Tailwind CSS](https://tailwindcss.com) to ensure a responsive, fluid layout across all devices
- ๐ **Smooth Animations**: Engaging animations and scroll effects powered by [Motion](https://motion.dev/)## ๐ Commands
Run these commands to interact with the project:
- ๐ฅ๏ธ `npm run dev`: Start the local development server
- ๐ฆ `npm run build`: Build the project for production, fetch initial _Contentful queries_
- ๐ `npm run start`: Run the production server
- ๐งโ๐ป `npm run lint`: Check for code issues using _ESLint_ and _TypeScript_
- ๐จ `npm run format`: Format code with _Prettier_
- ๐งช `npm test`: Run unit tests with _Vitest_
- ๐ฏ `npm run test:e2e`: Run end-to-end tests with _Playwright_ and _MSW_
- ๐งฌ `npm run types:generate`: Generate types for _GraphQL queries_ and _Supabase schema_