A personal portfolio website designed and developed to showcase my work as a front-end developer, including selected projects, technical skills, and experience.
The website is built with React, TypeScript, and Tailwind CSS, featuring a responsive, multi-page layout with dedicated project pages, an about section, and a contact page. Each project has its own page with information about the application, the technologies used, and links to the live website and GitHub repository.
The design focuses on simplicity, accessibility, and usability, with a consistent visual style, reusable components, and support for both light and dark modes. The application is structured around separate features and shared components to keep the code organised and maintainable.
- Responsive layout for desktop, tablet and mobile
- Dark and light mode
- Dedicated pages for projects, about and contact
- Individual project detail pages
- Links to live projects and GitHub repositories
- Accessible and reusable UI components
- Custom error and 404 pages
- React
- TypeScript
- React Router
- Tailwind CSS
- Vite
- React Hook Form
- Lucide and Font Awesome icons
- ESLint
- Prettier
- Husky and lint-staged
- Clone the repository:
git clone https://github.com/Torehirth/portfolio.git- Navigate to the project:
cd portfolio- Install the dependencies:
npm install- Start the development server:
npm run devnpm run dev– Start the Vite development servernpm run build– Type-check and build the project for productionnpm run preview– Preview the production build locallynpm run lint– Run ESLintnpm run format– Format files with Prettiernpm run format:check– Check formatting with Prettier
This portfolio is a complete redesign of my previous website, built to improve both the user experience and the underlying code structure.
The project gave me an opportunity to work with component-based architecture, client-side routing, responsive layouts, and theme management. I also focused on creating a consistent design across pages while keeping the code readable, reusable, and easier to maintain.
Tore M. Hirth
