Skip to content

Repository files navigation

astro-logo

Angelo Trotta | Portfolio

Personal website to present my biography, educational and professional experience, resume, skills and contact information.

Description

This is a modern, fast, and secure personal portfolio website.
It is fully responsive, optimized for search engines (SEO), and supports both English and Italian.

Tech Stack

  • Astro: built with Astro utilizing Server-Side Rendering (SSR) mode to deliver optimal performance.
  • Tailwind CSS: modern utility-first CSS framework configured via the official Vite plugin for rapid and responsive UI development.
  • TypeScript: used throughout the codebase to ensure type safety, modular design, and robust data models.
  • Deployment & Hosting: hosted serverless on Cloudflare Workers utilizing the @astrojs/cloudflare adapter.

Key Features

  • Astro i18n: full internationalization mapping routes between Italian (/) and English (/en).
  • Language Detection: automatic browser language routing that redirects non-Italian users to the /en portal upon landing on the root page.
  • Dynamic Skills & Portfolio Grid: dynamic search, filtering by category, and client-side pagination on Skills and Project pages.
  • Accessibility & SEO: built following semantic HTML standards, featuring Schema.org metadata (JSON-LD), hreflang alternate links, XML sitemap mapping, and custom Open Graph metadata for rich sharing.

Integrated Services

  • Contact Form: secure form validation sending messages via a serverless API endpoint communicating with Resend API.
  • Security Check: integrates client-side public IP lookup via the ipify API to ensure proper logging and abuse prevention.

Directory Structure

src/
├── assets/       # Visual resources and images
├── components/   # Reusable UI elements
├── i18n/         # UI dictionary keys, route translations, and helpers
├── icons/        # Custom SVG icon bindings
├── layouts/      # HTML layout wrappers with SEO metatags
├── pages/        # Astro pages (Italian root, /en/ for English)
├── resources/    # Localized JSON data stores
├── scripts/      # Client-side typescript logic
├── styles/       # Tailwind CSS style tokens and custom styling
├── types/        # TypeScript type interfaces
└── views/        # Page view wrappers

License

About

Personal website to present my biography, educational and professional experience, resume, skills and contact information.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages