A professional, minimalist portfolio
| Section | Description |
|---|---|
| About | ℹ️ Who is this person we have in front of us? As it's simply essential these days, the first sections translate into a brief introduction displaying a profile picture, some crucial information, and different contact and professional platforms: LinkedIn account. You can even download my CV from there! |
| Skills | 🛠️ Technical expertise, project management, software, languages... you name it! Everything has been organized under the shape of an accordion in order to make information as accessible as readable. |
| Experience | 💼 Education? Work? Here, you'll find both options, with the proper experience displayed as a visual timeline. You have no excuse now, recruiters! |
| Articles | 📑 Undoubtedly, Projects are an essential part of my work. Here, we're only displaying the most recent ones, but it seemed a great idea to integrate them as visually and interactively as possible. |
| Contact | ☎️ Phone numbers, email addresses... and a form! A contact form that actually works! Is this... magic, maybe...? |
Similarly to many other examples that have become extremely popular these days, I decided to organize this portfolio following the structure of a landing page - and believe me when I say that back in the day, landing pages triggered some of my worst nightmares as someone just getting started!
Those, however, were extremely simple yet not functional at all. Beautiful? Yes. A blank page? Yes, again. That's definitely not the case occupying us today, though.
Just as it's mandatory these days, I incorporated a theme switcher to enhance the visual appeal for readers and nocturnal creatures of the interwebz, which will hopefully allow users to personalize their viewing experience based on their preferences.
What makes EmailJS great is the fact that it keeps things simple. This beautiful tool helps to send emails using client-side technologies only. No server is required – just connect EmailJS to one of the supported email services, create an email template, and use one of their SDK libraries to trigger an email. Boom! That's it!
In case you are curious about the implementation itself, don't hesitate to inspect the main.js file:
/* Mail integration */
document.addEventListener("DOMContentLoaded", function () {
emailjs.init("YOUR_USER_ID");
});
document.getElementById("contact-form").addEventListener("submit", function (event) {
event.preventDefault();
emailjs.sendForm("YOUR_SERVICE_ID", "YOUR_TEMPLATE_ID", this).then(
function (response) {
console.log("Success!", response.status, response.text);
alert("Email sent successfully!");
document.getElementById("contact-form").reset();
},
function (error) {
console.log("Failed...", error);
alert("Email sending failed.");
}
);
});Note
Needless to say, the original documentation is worth your time, guys - but as you can see, integrating EmailJS into your project couldn't be easier!
Original work are under MIT License under the name JuditKaramazov!