Skip to content

Mlheriteau/Portfolio

Repository files navigation

Portfolio

This project is a personal portfolio built with Angular 20, including the pages: Home, About, Skills, Projects, and Contact.
The contact form uses EmailJS to send messages directly from the frontend.


Table of Contents


Project Overview

  • Responsive Angular portfolio with Tailwind CSS.
  • Navigation between pages: Home, About, Skills, Projects, Contact.
  • Contact form securely sends messages via EmailJS.
  • API keys are managed via .env to prevent exposure on GitHub.

Features

  • Home Page: Quick introduction and welcome section.
  • About Page: Personal info, background, and summary.
  • Skills Page: List of technical skills.
  • Projects Page: Showcase of completed projects.
  • Contact Page: Form to send a message through EmailJS.

EmailJS Integration

  • The contact form uses EmailJS to send emails directly from the frontend.
  • All sensitive keys (Service ID, Template ID, Public Key) are stored in a .env file and injected into src/environments/environment.ts automatically using set-env.js.
  • This ensures that private keys are never exposed on GitHub.

Environment Variables

The project uses a .env file at the root to store EmailJS keys securely:

EMAILJS_SERVICE_ID=your_service_id
EMAILJS_TEMPLATE_ID=your_template_id
EMAILJS_PUBLIC_KEY=your_public_key


-------------------------------------------------------------------------------------------------------------------

- Important: Do not push .env to GitHub.
- src/environments/environment.ts is automatically generated by the set-env.js script and is included in .gitignore.

To generate environment.ts:
'node set-env.js'

This file will contain your EmailJS keys, pulled from .env, without exposing them on GitHub.

---

Installation & Setup

1.Clone the project:
git clone https://github.com/your-username/portfolio.git
cd portfolio

2.Install dependencies:
npm install

3.Create a .env file with your EmailJS keys.

4.Generate environment.ts:
node set-env.js

5.Start the development server:
ng serve

6.Open your browser at: http://localhost:4200/

---

Build & Deployment

To build the project for production:
ng build --configuration production

The compiled files will be generated in the dist/ folder.

---

Technologies:

-Angular 20
-Tailwind CSS
-EmailJS for sending emails
-Node.js for securely generating environment.ts

---

License

This project is licensed under the MIT License.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published