This application is a personal portfolio website designed to showcase the skills, experience, and projects of a full-stack developer named Ilias Boutaleb. The app is built using Next.js, a React framework, and utilizes various modern web technologies including TypeScript, Tailwind CSS for styling, and Framer Motion for animations. Users can navigate through different sections of the portfolio, including Home, About, Experience, Skills, Projects, and Contact. The Home section features a dynamic hero background that can be configured to display images from Unsplash, enhancing the visual appeal of the site. The About section provides a personal summary and background information, while the Experience section outlines professional roles and responsibilities. The Skills section highlights technical and professional competencies, and the Projects section showcases various projects with descriptions and technologies used. The Contact section includes a form for users to send messages directly to Ilias, with validation and error handling implemented to ensure a smooth user experience. The application also tracks user sessions and page views using Upstash, a serverless database, allowing for analytics on user engagement. Key features of the app include: - Responsive design that adapts to different screen sizes. - Smooth scrolling and animated transitions between sections. - A visitor counter that updates in real-time to show the number of active users. - A session tracker that displays the duration of the user's session and the number of active users. - Integration with Unsplash for dynamic background images. - A contact form with validation and submission handling. To use the app, users can simply navigate through the sections using the header menu or scroll down the page. The app is deployed on Vercel, ensuring fast load times and efficient performance. Developers can contribute to the project by modifying the code in the GitHub repository, with changes automatically synced to the deployed version.
No tags
Last Updated June 18, 2025