Skip to content

Commit fea3c16

Browse files
Update README.md
1 parent ea30187 commit fea3c16

File tree

1 file changed

+103
-10
lines changed

1 file changed

+103
-10
lines changed

README.md

Lines changed: 103 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,15 @@
33
![Trần Hữu Đạt Portfolio Banner](assets/profile.PNG) <!-- THAY THẾ bằng ảnh chụp màn hình trang chủ portfolio của bạn -->
44

55
Welcome to the source code repository for my personal portfolio website! This site serves as a central hub to showcase my skills, projects, and professional resume. It's designed with a clean, responsive interface and enhanced with interactive elements to provide an engaging user experience.
6+
This README is available in English and Vietnamese. Please expand the section for your preferred language.
67

78
**🚀 Live Portfolio:** [https://tranhuudat2004.github.io/](https://tranhuudat2004.github.io/) <!-- Cập nhật link nếu khác -->
9+
**👤 Author GitHub:** [@TranHuuDat2004](https://github.com/TranHuuDat2004)
10+
11+
---
12+
13+
<details>
14+
<summary><strong>English Version (Click to Expand)</strong></summary>
815

916
## ✨ Key Features
1017

@@ -28,7 +35,7 @@ This portfolio is built using a combination of modern front-end technologies:
2835
* **CSS3:** Custom styling for visual appeal, layout management (Flexbox, Grid), and animations.
2936
* **Bootstrap 5:** Leveraged for its robust responsive grid system, pre-styled UI components, and utility classes.
3037
* **JavaScript (ES6+):** Powers all dynamic functionalities:
31-
* **Custom Cursor Logic:** Manages cursor movement, text cycling with fade effects, and context-aware text display (embedded CaCl HMTL page).
38+
* **Custom Cursor Logic:** Manages cursor movement, text cycling with fade effects, and context-aware text display (embedded in each HTML page).
3239
* **Bilingual System:** Dynamically loads and applies language translations to page content.
3340
* **GitHub API Integration (`js/github.js`):** Fetches and renders project information on the "Projects" page.
3441
* **UI Interactions:** Handles events for the language switcher, interactive grids, and other dynamic elements.
@@ -39,8 +46,6 @@ This portfolio is built using a combination of modern front-end technologies:
3946
* [GitHub API](https://docs.github.com/en/rest) (for project data)
4047
* **Hosting:** Deployed as a static website via [GitHub Pages](https://pages.github.com/).
4148

42-
## 📂 Project Structure
43-
4449

4550
## 🚀 How to View / Local Setup
4651

@@ -66,26 +71,114 @@ This portfolio is built using a combination of modern front-end technologies:
6671
6772
## 💡 Development Insights & Customizations
6873
69-
* **Contextual Cursor Text:** The custom cursor's text changes based on the page being viewed, providing relevant, cycling messages (e.g., greetings on the homepage, skill-related info when hovering over skill tags). This is achieved by defining unique `autoTexts` arrays within the JavaScript embedded in each HTML page.
70-
* **Dynamic Language Switching:** A JavaScript-driven system allows users to toggle between English and Vietnamese content. Translations are stored in a JS object, and the DOM is updated dynamically. The selected language is persisted in `localStorage`.
71-
* **GitHub Projects Showcase:** The `projects.html` page leverages the GitHub API via `js/github.js` to automatically fetch and display my public repositories as interactive project cards, keeping the project list up-to-date.
74+
* **Contextual Cursor Text:** The custom cursor's text changes based on the page being viewed, providing relevant, cycling messages. This is achieved by defining unique `autoTexts` arrays within the JavaScript embedded in each HTML page.
75+
* **Dynamic Language Switching:** A JavaScript-driven system allows users to toggle between English and Vietnamese content. The selected language is persisted in `localStorage`.
76+
* **GitHub Projects Showcase:** The `projects.html` page leverages the GitHub API to automatically fetch and display public repositories as project cards.
7277

7378
## 🌟 Future Enhancements (Ideas)
7479

7580
* Implement a dark mode/light mode toggle.
7681
* Add a dedicated blog section.
77-
* Further optimize image loading for even faster performance.
78-
* Explore more advanced animations or micro-interactions.
82+
* Further optimize image loading and performance.
7983

8084
## 👤 Author & Contact
8185

8286
* **Trần Hữu Đạt**
8387
* **GitHub:** [@TranHuuDat2004](https://github.com/TranHuuDat2004)
84-
* **LinkedIn:** [linkedin.com/in/tranhuudat2004](https://linkedin.com/in/tranhuudat2004) <!-- Cập nhật link đầy đủ -->
88+
* **LinkedIn:** [linkedin.com/in/tranhuudat2004](https://linkedin.com/in/tranhuudat2004) <!-- Full link -->
8589
* **Email:** `huudat.peashooer@gmail.com`
8690

8791
---
8892

8993
<p align="center">
9094
Thank you for exploring my portfolio and its source code! Feel free to connect.
91-
</p>
95+
</p>
96+
97+
</details>
98+
99+
---
100+
101+
<details>
102+
<summary><strong>Phiên bản Tiếng Việt (Nhấn để Mở rộng)</strong></summary>
103+
104+
## ✨ Các Tính năng Chính
105+
106+
Trang web portfolio này tích hợp một số tính năng chính:
107+
108+
* **Bố cục Đa trang Toàn diện:**
109+
* **🏠 Trang chủ (`index.html`):** Giới thiệu bản thân, làm nổi bật các kỹ năng chính thông qua một lưới tương tác và cung cấp cái nhìn tổng quan về khả năng của tôi.
110+
* **📄 Hồ sơ (`resume.html`):** Trình bày chi tiết về kinh nghiệm chuyên môn, quá trình học vấn và những thành tích đáng chú ý.
111+
* **💡 Dự án (`projects.html`):** Giới thiệu các dự án phát triển phần mềm của tôi theo danh mục, kèm theo mô tả, ngăn xếp công nghệ và liên kết trực tiếp đến demo trực tuyến cũng như kho lưu trữ GitHub. Trang này tự động tải dữ liệu dự án từ GitHub API.
112+
* **✉️ Liên hệ (`contact.html`):** Một biểu mẫu liên hệ thân thiện với người dùng (sử dụng SB Forms - *cần thiết lập API token để hoạt động đầy đủ*) cùng với thông tin liên hệ trực tiếp.
113+
* **🖱️ Con trỏ Chuột Tùy chỉnh Tương tác:** Một con trỏ chuột được thiết kế tùy chỉnh độc đáo, theo dõi chuyển động của người dùng trên tất cả các trang. Nó hiển thị văn bản thay đổi động (với hiệu ứng fade-in/fade-out) được **điều chỉnh theo ngữ cảnh cho từng trang cụ thể** (Trang chủ, Hồ sơ, Dự án, Liên hệ), cung cấp các thông điệp chào mừng hoặc thông tin liên quan. Con trỏ cũng thay đổi giao diện khi di chuột qua các yếu tố tương tác.
114+
* **🌐 Hỗ trợ Song ngữ (Tiếng Anh/Tiếng Việt):** Người dùng có thể chuyển đổi liền mạch nội dung trang web giữa tiếng Anh và tiếng Việt bằng cách sử dụng bộ chọn ngôn ngữ trực quan trên thanh điều hướng. Tùy chọn ngôn ngữ được lưu cục bộ để mang lại trải nghiệm nhất quán.
115+
* **📱 Thiết kế Đáp ứng (Responsive):** Được xây dựng với Bootstrap 5, đảm bảo trang web hiển thị đẹp mắt và hoạt động tối ưu trên nhiều kích thước màn hình khác nhau, bao gồm máy tính để bàn, máy tính bảng và thiết bị di động.
116+
* **🛠️ Hiển thị Kỹ năng Tương tác:** Các kỹ năng kỹ thuật được trình bày dưới dạng lưới tương tác hấp dẫn trên trang Chủ và Hồ sơ, nơi việc di chuột qua sẽ hiển thị thêm thông tin thông qua con trỏ tùy chỉnh.
117+
118+
## 🛠️ Ngăn xếp Công nghệ
119+
120+
Portfolio này được xây dựng bằng sự kết hợp của các công nghệ front-end hiện đại:
121+
122+
* **HTML5:** Đánh dấu ngữ nghĩa để cấu trúc nội dung của tất cả các trang.
123+
* **CSS3:** Tạo kiểu tùy chỉnh cho giao diện, quản lý bố cục (Flexbox, Grid) và hiệu ứng động.
124+
* **Bootstrap 5:** Được tận dụng cho hệ thống lưới đáp ứng mạnh mẽ, các thành phần UI được tạo kiểu sẵn và các lớp tiện ích.
125+
* **JavaScript (ES6+):** Cung cấp năng lượng cho tất cả các chức năng động:
126+
* **Logic Con trỏ Tùy chỉnh:** Quản lý chuyển động của con trỏ, thay đổi văn bản theo chu kỳ với hiệu ứng mờ dần và hiển thị văn bản theo ngữ cảnh (được nhúng trong từng trang HTML).
127+
* **Hệ thống Song ngữ:** Tải và áp dụng các bản dịch ngôn ngữ động cho nội dung trang.
128+
* **Tích hợp GitHub API (`js/github.js`):** Tìm nạp và hiển thị thông tin dự án trên trang "Dự án".
129+
* **Tương tác UI:** Xử lý các sự kiện cho bộ chọn ngôn ngữ, lưới tương tác và các yếu tố động khác.
130+
* **Thư viện & API Bên ngoài:**
131+
* [Bootstrap Icons](https://icons.getbootstrap.com/)
132+
* [Google Fonts (Plus Jakarta Sans)](https://fonts.google.com/specimen/Plus+Jakarta+Sans)
133+
* [SB Forms](https://startbootstrap.com/solution/contact-forms) (cho biểu mẫu liên hệ - *yêu cầu API token*)
134+
* [GitHub API](https://docs.github.com/en/rest) (cho dữ liệu dự án)
135+
* **Hosting:** Được triển khai dưới dạng trang web tĩnh thông qua [GitHub Pages](https://pages.github.com/).
136+
137+
## 🚀 Cách Xem / Thiết lập Cục bộ
138+
139+
1. **Trang Trực tuyến:**
140+
* Cách dễ nhất để xem portfolio là truy cập trang trực tuyến tại: [https://tranhuudat2004.github.io/](https://tranhuudat2004.github.io/)
141+
142+
2. **Thiết lập Cục bộ:**
143+
* Sao chép kho lưu trữ này:
144+
```bash
145+
git clone https://github.com/TranHuuDat2004/tranhuudat2004.github.io.git
146+
```
147+
*(Thay thế bằng URL kho lưu trữ thực tế của bạn nếu khác)*
148+
* Điều hướng vào thư mục dự án vừa sao chép:
149+
```bash
150+
cd tranhuudat2004.github.io
151+
```
152+
* Mở bất kỳ tệp `.html` nào (ví dụ: `index.html`) trực tiếp bằng trình duyệt web của bạn. Không cần các bước build đặc biệt vì đây là một trang web tĩnh.
153+
154+
* **Lưu ý Quan trọng cho Biểu mẫu Liên hệ:** Biểu mẫu liên hệ trên `contact.html` sử dụng SB Forms. Để nó hoạt động gửi email, bạn phải:
155+
1. Đăng ký tại [https://startbootstrap.com/solution/contact-forms](https://startbootstrap.com/solution/contact-forms).
156+
2. Lấy API token duy nhất của bạn.
157+
3. Thay thế placeholder `API_TOKEN_CUA_BAN` trong thuộc tính `data-sb-form-api-token` của thẻ `<form>` trong `contact.html` bằng token thực tế của bạn.
158+
159+
## 💡 Điểm Nổi bật & Tùy chỉnh Phát triển
160+
161+
* **Văn bản Con trỏ theo Ngữ cảnh:** Văn bản của con trỏ tùy chỉnh thay đổi dựa trên trang đang xem, cung cấp các thông điệp theo chu kỳ liên quan. Điều này đạt được bằng cách định nghĩa các mảng `autoTexts` duy nhất trong JavaScript được nhúng trong mỗi trang HTML.
162+
* **Chuyển đổi Ngôn ngữ Động:** Một hệ thống dựa trên JavaScript cho phép người dùng chuyển đổi giữa nội dung tiếng Anh và tiếng Việt. Ngôn ngữ được chọn sẽ được lưu trong `localStorage`.
163+
* **Giới thiệu Dự án từ GitHub:** Trang `projects.html` tận dụng GitHub API để tự động tải và hiển thị các kho lưu trữ GitHub công khai của tôi dưới dạng các thẻ dự án tương tác.
164+
165+
## 🌟 Các Cải tiến Tiềm năng (Ý tưởng)
166+
167+
* Thêm chức năng chuyển đổi chế độ tối/sáng.
168+
* Tích hợp một mục blog riêng.
169+
* Tối ưu hóa thêm việc tải hình ảnh và hiệu suất.
170+
171+
## 👤 Tác giả & Liên hệ
172+
173+
* **Trần Hữu Đạt**
174+
* **GitHub:** [@TranHuuDat2004](https://github.com/TranHuuDat2004)
175+
* **LinkedIn:** [linkedin.com/in/tranhuudat2004](https://linkedin.com/in/tranhuudat2004) <!-- Link đầy đủ -->
176+
* **Email:** `huudat.peashooer@gmail.com`
177+
178+
---
179+
180+
<p align="center">
181+
Cảm ơn bạn đã ghé thăm portfolio và mã nguồn của tôi! Rất vui được kết nối.
182+
</p>
183+
184+
</details>

0 commit comments

Comments
 (0)