A modern, responsive profile card built with HTML, CSS, and JavaScript. Features a clean black and white design with smooth animations and full keyboard accessibility.
- ✨ Modern, minimalist black and white design
- 📱 Fully responsive across all screen sizes
- ⌨️ Keyboard accessible (all interactive elements are focusable)
- 🎨 Smooth hover animations and transitions
- ⏱️ Real-time millisecond timer display
- 🔗 Social media integration (Twitter, GitHub, LinkedIn, Instagram)
- 🎯 Clean, semantic HTML structure
Visit the live demo: [Demo Link]
- HTML5 - Semantic markup
- CSS3 - Modern styling with Flexbox, gradients, and transitions
- JavaScript - Real-time timer functionality
- Font Awesome 7.0.1 - Social media icons
profile-card/
├── index.html # Main HTML file
├── style.css # Stylesheet with responsive design
├── script.js # JavaScript for timer functionality
├── profile-image.jpg # Profile picture
└── README.md # Project documentation
- A modern web browser (Chrome, Firefox, Safari, Edge)
- A local web server (optional, but recommended)
-
Clone the repository
git clone https://github.com/dtechbro/profile-card.git
-
Navigate to the project directory
cd profile-card -
Open in browser
- Simply double-click
index.htmlor - Right-click
index.html→ Open with → Your Browser
- Simply double-click
-
Clone the repository
git clone https://github.com/dtechbro/profile-card.git cd profile-card -
Using Python's built-in server
# Python 3 python -m http.server 8000 # Python 2 python -m SimpleHTTPServer 8000
Then open
http://localhost:8000in your browser -
Using Node.js http-server
# Install http-server globally (one-time) npm install -g http-server # Run the server http-server -p 8000
Then open
http://localhost:8000in your browser -
Using VS Code Live Server Extension
- Install the "Live Server" extension in VS Code
- Right-click on
index.html - Select "Open with Live Server"
- Profile Image: Replace
profile-image.jpgwith your own image - Name: Edit line 25 in
index.html - Bio: Edit lines 35-36 in
index.html - Social Links: Update URLs in lines 43-72 in
index.html - Hobbies & Dislikes: Modify the list items in lines 77-91 in
index.html
Edit style.css to change:
- Colors: Modify color values (currently black/white theme)
- Fonts: Change the font-family in line 12
- Spacing: Adjust padding and gap values
- Responsive breakpoints: Modify media queries (lines 181-248)
The timer displays time in milliseconds. To modify:
- Edit
script.jsto change the timer format or behavior
- ✅ Chrome (latest)
- ✅ Firefox (latest)
- ✅ Safari (latest)
- ✅ Edge (latest)
- ✅ Mobile browsers (iOS Safari, Chrome Mobile)
- All interactive elements are keyboard-focusable
- Semantic HTML structure
- Proper ARIA labels via
data-testidattributes - High contrast black and white theme
- Responsive text sizing
The project includes test IDs for automated testing:
test-profile-card- Main article containertest-user-avatar- Profile imagetest-user-name- Username headingtest-user-time- Timer displaytest-user-bio- Bio paragraphtest-user-social-links- Social links containertest-user-social-twitter/github/linkedin/instagram- Individual social linkstest-user-hobbies- Hobby list itemstest-user-dislikes- Dislike list items
This project is open source and available under the MIT License.
dtechbro
- GitHub: @dtechbro
- Twitter: @dtechbro
- LinkedIn: Olaoye Muhammad-Nabeel
- Instagram: @detechbro
Contributions, issues, and feature requests are welcome! Feel free to check the issues page.
- Fork the project
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
- Font Awesome for the social media icons
- Inspiration from modern profile card designs
⭐ Star this repo if you find it helpful!