Skip to content

JosepNR97/JNR

Repository files navigation

🚀 Josep Núñez Riba | Tech Strategy Portfolio

React TypeScript Tailwind CSS Vite

Professional portfolio representing expertise in Digital Transformation, Enterprise Architecture, and Cloud Strategy.


📋 Overview

This project is a modern, high-performance personal portfolio website designed to showcase professional experience, certifications, and strategic projects. It is built with a focus on clean architecture, accessibility, and user experience.

The site serves as a central hub for professional branding, featuring a multi-language interface (CA/ES/EN) and an interactive timeline of achievements.

✨ Key Features

  • 🌍 Multi-language Support: robust i18n implementation using React Context, supporting Catalan, Spanish, and English seamlessly.
  • 📱 Fully Responsive: "Mobile-first" design approach using Tailwind CSS, ensuring perfect rendering on all devices.
  • 🎨 Modern UI/UX:
    • Glassmorphism effects and smooth gradients.
    • Interactive "Infinite Scroll" for certifications.
    • Smart auto-scroll navigation for better usability.
  • ⚡ Performance Optimized: Built with Vite for lightning-fast HMR and optimized production builds.
  • 🧩 Modular Architecture: Strict separation between UI Components (/components) and Content Data (aboutMe.ts, experienceInfo.ts), making updates easy without touching the code.

🛠️ Tech Stack

  • Core: React 18, TypeScript
  • Build Tool: Vite
  • Styling: Tailwind CSS
  • Icons: Lucide React
  • Deployment: GitHub Pages (via GitHub Actions)
  • Fonts: Inter (Sans) & Playfair Display (Serif)

📂 Project Structure

src/
├── components/      # UI Components (Hero, Experience, Education...)
├── context/         # React Context (Language State)
├── data/            # (Conceptual) Data files separated from logic
│   ├── aboutMe.ts
│   ├── experienceInfo.ts
│   ├── constants.ts
│   └── translations.ts
├── types.ts         # TypeScript Interfaces
└── main.tsx         # Entry point

🚀 Getting Started

To run this project locally:

  1. Clone the repository:

    git clone https://github.com/JosepNR97/JNR.git
    cd JNR
  2. Install dependencies:

    npm install
  3. Run development server:

    npm run dev
  4. Build for production:

    npm run build

📝 Content Management

Updating the portfolio content does not require modifying React components. All data is centralized:

  • Personal Info & Nav: src/aboutMe.ts
  • Work History: src/experienceInfo.ts
  • Images & Links: src/constants.ts

📄 License

© 2025 Josep Núñez Riba. All rights reserved.

About

Portafolio de presentación de Josep Núñez Riba

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors