diff --git a/assets/css/style.css b/assets/css/style.css index 4dcaeaa2b0..e54bad5ffc 100644 --- a/assets/css/style.css +++ b/assets/css/style.css @@ -338,9 +338,9 @@ main { .info-content .name { color: var(--white-2); - font-size: var(--fs-3); + font-size: var(--fs-0); font-weight: var(--fw-500); - letter-spacing: -0.25px; + letter-spacing: -0.10px; margin-bottom: 10px; } diff --git a/assets/images/my-avatar.png b/assets/images/my-avatar.png index e60a7d73aa..5d79afe032 100644 Binary files a/assets/images/my-avatar.png and b/assets/images/my-avatar.png differ diff --git a/assets/images/my-avatar1.png b/assets/images/my-avatar1.png new file mode 100644 index 0000000000..e60a7d73aa Binary files /dev/null and b/assets/images/my-avatar1.png differ diff --git a/assets/images/project-1.jpg b/assets/images/project-1.jpg index e4406ed2d9..d368be76b0 100644 Binary files a/assets/images/project-1.jpg and b/assets/images/project-1.jpg differ diff --git a/assets/js/script.js b/assets/js/script.js index 6439a82ccf..7399b7c9f4 100644 --- a/assets/js/script.js +++ b/assets/js/script.js @@ -1,159 +1,139 @@ 'use strict'; +// Element toggle function +const elementToggleFunc = function (elem) { + elem.classList.toggle("active"); +}; - -// element toggle function -const elementToggleFunc = function (elem) { elem.classList.toggle("active"); } - - - -// sidebar variables +// Sidebar variables const sidebar = document.querySelector("[data-sidebar]"); const sidebarBtn = document.querySelector("[data-sidebar-btn]"); -// sidebar toggle functionality for mobile -sidebarBtn.addEventListener("click", function () { elementToggleFunc(sidebar); }); - - +// Sidebar toggle functionality for mobile +if (sidebarBtn) { + sidebarBtn.addEventListener("click", function () { + elementToggleFunc(sidebar); + }); +} -// testimonials variables +// Testimonials variables const testimonialsItem = document.querySelectorAll("[data-testimonials-item]"); const modalContainer = document.querySelector("[data-modal-container]"); const modalCloseBtn = document.querySelector("[data-modal-close-btn]"); const overlay = document.querySelector("[data-overlay]"); -// modal variable +// Modal variable const modalImg = document.querySelector("[data-modal-img]"); const modalTitle = document.querySelector("[data-modal-title]"); const modalText = document.querySelector("[data-modal-text]"); -// modal toggle function +// Modal toggle function const testimonialsModalFunc = function () { modalContainer.classList.toggle("active"); overlay.classList.toggle("active"); -} - -// add click event to all modal items -for (let i = 0; i < testimonialsItem.length; i++) { - - testimonialsItem[i].addEventListener("click", function () { +}; +// Add click event to all testimonial items +testimonialsItem.forEach((item) => { + item.addEventListener("click", function () { modalImg.src = this.querySelector("[data-testimonials-avatar]").src; modalImg.alt = this.querySelector("[data-testimonials-avatar]").alt; modalTitle.innerHTML = this.querySelector("[data-testimonials-title]").innerHTML; modalText.innerHTML = this.querySelector("[data-testimonials-text]").innerHTML; testimonialsModalFunc(); - }); +}); -} - -// add click event to modal close button +// Add click event to modal close button and overlay modalCloseBtn.addEventListener("click", testimonialsModalFunc); overlay.addEventListener("click", testimonialsModalFunc); - - -// custom select variables +// Custom select variables const select = document.querySelector("[data-select]"); const selectItems = document.querySelectorAll("[data-select-item]"); -const selectValue = document.querySelector("[data-selecct-value]"); +const selectValue = document.querySelector("[data-select-value]"); // Fixed typo const filterBtn = document.querySelectorAll("[data-filter-btn]"); -select.addEventListener("click", function () { elementToggleFunc(this); }); - -// add event in all select items -for (let i = 0; i < selectItems.length; i++) { - selectItems[i].addEventListener("click", function () { - - let selectedValue = this.innerText.toLowerCase(); - selectValue.innerText = this.innerText; - elementToggleFunc(select); - filterFunc(selectedValue); +if (select) { + select.addEventListener("click", function () { + elementToggleFunc(this); + }); + // Add event in all select items + selectItems.forEach((item) => { + item.addEventListener("click", function () { + let selectedValue = this.innerText.toLowerCase().trim(); + selectValue.innerText = this.innerText; + elementToggleFunc(select); + filterFunc(selectedValue); + }); }); } -// filter variables +// Filter variables const filterItems = document.querySelectorAll("[data-filter-item]"); const filterFunc = function (selectedValue) { - - for (let i = 0; i < filterItems.length; i++) { - - if (selectedValue === "all") { - filterItems[i].classList.add("active"); - } else if (selectedValue === filterItems[i].dataset.category) { - filterItems[i].classList.add("active"); + filterItems.forEach((item) => { + if (selectedValue === "all" || selectedValue === item.dataset.category) { + item.classList.add("active"); } else { - filterItems[i].classList.remove("active"); + item.classList.remove("active"); } + }); +}; - } - -} - -// add event in all filter button items for large screen +// Add event in all filter button items for large screen let lastClickedBtn = filterBtn[0]; -for (let i = 0; i < filterBtn.length; i++) { - - filterBtn[i].addEventListener("click", function () { - - let selectedValue = this.innerText.toLowerCase(); +filterBtn.forEach((btn) => { + btn.addEventListener("click", function () { + let selectedValue = this.innerText.toLowerCase().trim(); selectValue.innerText = this.innerText; filterFunc(selectedValue); lastClickedBtn.classList.remove("active"); this.classList.add("active"); lastClickedBtn = this; - }); +}); -} - - - -// contact form variables +// Contact form variables const form = document.querySelector("[data-form]"); const formInputs = document.querySelectorAll("[data-form-input]"); const formBtn = document.querySelector("[data-form-btn]"); -// add event to all form input field -for (let i = 0; i < formInputs.length; i++) { - formInputs[i].addEventListener("input", function () { - - // check form validation +// Add event to all form input fields +formInputs.forEach((input) => { + input.addEventListener("input", function () { + // Check form validation if (form.checkValidity()) { formBtn.removeAttribute("disabled"); } else { formBtn.setAttribute("disabled", ""); } - }); -} - - +}); -// page navigation variables +// Page navigation variables const navigationLinks = document.querySelectorAll("[data-nav-link]"); const pages = document.querySelectorAll("[data-page]"); -// add event to all nav link -for (let i = 0; i < navigationLinks.length; i++) { - navigationLinks[i].addEventListener("click", function () { +// Add event to all navigation links +navigationLinks.forEach((navLink, index) => { + navLink.addEventListener("click", function () { + const clickedPage = this.innerHTML.toLowerCase().trim(); - for (let i = 0; i < pages.length; i++) { - if (this.innerHTML.toLowerCase() === pages[i].dataset.page) { - pages[i].classList.add("active"); + pages.forEach((page, i) => { + if (clickedPage === page.dataset.page.trim()) { + page.classList.add("active"); navigationLinks[i].classList.add("active"); window.scrollTo(0, 0); } else { - pages[i].classList.remove("active"); + page.classList.remove("active"); navigationLinks[i].classList.remove("active"); } - } - + }); }); -} \ No newline at end of file +}); diff --git a/index.html b/index.html index efac5f0167..f2b52e2364 100644 --- a/index.html +++ b/index.html @@ -5,7 +5,7 @@ - vCard - Personal Portfolio + Personal Portfolio - - - - - - -
+
About Section

About me

@@ -209,21 +174,14 @@

About me

- I'm Creative Director and UI/UX Designer from Sydney, Australia, working in web development and print media. - I enjoy - turning complex problems into simple, beautiful and intuitive designs. + Enthusiastic and detail-oriented Computer Engineering student with a strong foundation in microelectronics, embedded systems, and IoT development. Experienced in working with microcontrollers (ESP32, Arduino), circuit design, PCB layout, and sensor integration for real-world applications.

- My job is to build your website so that it is functional and user-friendly but at the same time attractive. - Moreover, I - add personal touch to your product and make sure that is eye-catching and easy to use. My aim is to bring - across your - message and identity in the most creative way. I created web design for many famous brand companies. + Passionate about hardware-software co-design, developing efficient electronic systems, and optimizing embedded solutions. Adept at problem-solving, coding, and designing innovative technology solutions. Seeking opportunities to apply my skills in microelectronics and embedded systems to create impactful and efficient technologies.

- @@ -242,10 +200,10 @@

What i'm doing

-

Web design

+

Electronic design

- The most modern and high-quality design made at a professional level. + I am working on electronic designing with a 100% knowledge level, meaning I have mastered the concepts and practical applications of designing electronic circuits and systems.

@@ -261,39 +219,7 @@

Web design

Web development

- High-quality development of sites at the professional level. -

- - - - -
  • - -
    - mobile app icon -
    - -
    -

    Mobile apps

    - -

    - Professional development of applications for iOS and Android. -

    -
    - -
  • - -
  • - -
    - camera icon -
    - -
    -

    Photography

    - -

    - I make high-quality photos of any category at a professional level. + I am currently learning and practicing web designing, focusing on creating visually appealing and user-friendly websites. My knowledge level is around 60%, meaning I have a solid grasp of the basics and some intermediate concepts.

    @@ -308,211 +234,12 @@

    Photography

    - testimonials --> -
    - -

    Testimonials

    - -
      - -
    • -
      - -
      - Daniel lewis -
      - -

      Daniel lewis

      - -
      -

      - Richard was hired to create a corporate identity. We were very pleased with the work done. She has a - lot of experience - and is very concerned about the needs of client. Lorem ipsum dolor sit amet, ullamcous cididt - consectetur adipiscing - elit, seds do et eiusmod tempor incididunt ut laborels dolore magnarels alia. -

      -
      - -
      -
    • - -
    • -
      - -
      - Jessica miller -
      - -

      Jessica miller

      - -
      -

      - Richard was hired to create a corporate identity. We were very pleased with the work done. She has a - lot of experience - and is very concerned about the needs of client. Lorem ipsum dolor sit amet, ullamcous cididt - consectetur adipiscing - elit, seds do et eiusmod tempor incididunt ut laborels dolore magnarels alia. -

      -
      - -
      -
    • - -
    • -
      - -
      - Emily evans -
      - -

      Emily evans

      - -
      -

      - Richard was hired to create a corporate identity. We were very pleased with the work done. She has a - lot of experience - and is very concerned about the needs of client. Lorem ipsum dolor sit amet, ullamcous cididt - consectetur adipiscing - elit, seds do et eiusmod tempor incididunt ut laborels dolore magnarels alia. -

      -
      - -
      -
    • - -
    • -
      - -
      - Henry william -
      - -

      Henry william

      - -
      -

      - Richard was hired to create a corporate identity. We were very pleased with the work done. She has a - lot of experience - and is very concerned about the needs of client. Lorem ipsum dolor sit amet, ullamcous cididt - consectetur adipiscing - elit, seds do et eiusmod tempor incididunt ut laborels dolore magnarels alia. -

      -
      - -
      -
    • - -
    - -
    - - - - - - - - - -
    - -

    Clients

    - - - -
    - -
  • - - - - - + -
    +
    Resume Section

    Resume

    @@ -532,41 +259,36 @@

    Education

  • -

    University school of the arts

    +

    Western Institute of Technology

    - 2007 — 2008 + 2019 — present

    - Nemo enims ipsam voluptatem, blanditiis praesentium voluptum delenit atque corrupti, quos dolores et - quas molestias - exceptur. +

  • -

    New york academy of art

    +

    Colegio de San Jose

    - 2006 — 2007 + 2012 — 2019

    - Ratione voluptatem sequi nesciunt, facere quisquams facere menda ossimus, omnis voluptas assumenda est - omnis.. +

  • -

    High school of art and design

    +

    Bito-on Elementary School

    - 2002 — 2004 + 2006 — 2012

    - Duis aute irure dolor in reprehenderit in voluptate, quila voluptas mag odit aut fugit, sed consequuntur - magni dolores - eos. +

  • @@ -587,44 +309,53 @@

    Experience

      +
    1. -

      Creative director

      +

      OJT/Internship

      - 2015 — Present + 2019

      - Nemo enim ipsam voluptatem blanditiis praesentium voluptum delenit atque corrupti, quos dolores et qvuas - molestias - exceptur. + Iloilo PAGASA Complex

    2. -

      Art director

      +

      Customer Service Representative

      + + 2020 + +

      + iXL Solutions +

      + +
    3. + + + +
    4. + +

      Customer Service Representative

      - 2013 — 2015 + 2022

      - Nemo enims ipsam voluptatem, blanditiis praesentium voluptum delenit atque corrupti, quos dolores et - quas molestias - exceptur. + Transcom Worldwide

    5. -

      Web designer

      +

      OJT/Internship

      - 2010 — 2013 + 2024

      - Nemo enims ipsam voluptatem, blanditiis praesentium voluptum delenit atque corrupti, quos dolores et - quas molestias - exceptur. + Healthway Qualimed Hospital Iloilo

    6. @@ -642,25 +373,12 @@

      My skills

    7. -
      Web design
      - 80% -
      - -
      -
      -
      - -
    8. - -
    9. - -
      -
      Graphic design
      - 70% +
      Electronic design
      + 100%
      -
      +
    10. @@ -668,12 +386,12 @@
      Graphic design
    11. -
      Branding
      - 90% +
      Web design
      + 60%
      -
      +
    12. @@ -681,12 +399,12 @@
      Branding
    13. -
      WordPress
      - 50% +
      Coding
      + 60%
      -
      +
    14. @@ -705,67 +423,12 @@
      WordPress
      - #PORTFOLIO --> -
      +
      Portfolio Section

      Portfolio

      -
      - -
        - -
      • - -
      • - -
      • - -
      • - -
      • - -
      • - -
      • - -
      • - -
      - -
      - - - -
        - -
      • - -
      • - -
      • - -
      • - -
      • - -
      • - -
      • - -
      • - -
      - -
      - - - - - - -
      - -
      -

      Blog

      -
      - -
      - - - -
      - -
      - - - - - -
      +
      Contact

      Contact

      -
      -
      - -
      -
      -

      Contact Form

      diff --git a/index.txt b/index.txt index 60668de736..697ae5ac9e 100644 --- a/index.txt +++ b/index.txt @@ -2,8 +2,8 @@ vCard - Personal Portfolio # sidebar -alt = Richard hanrick -Richard hanrick +alt = Charles Benedict Ragasa +Charles Benedict Ragasa Web developer Show Contacts