100JSProjects
LearnProjectsExplore all projects
100JS_WORKSPACE/Build · Learn · Repeat
100JSProjects

Practical HTML, CSS, and JavaScript projects designed to help you turn concepts into real skills—one build at a time.

01Explore

./All projects./Learning guides./About./Contact./Privacy

02Resources

./GitHub repository./Support the project

© 2026 100 JS Projects. Built for developers.

TermsCookiesContact
JS//Projects/Profile Statistics

Profile StatisticsHTML, CSS & JavaScript Project

HTML5CSS3JavaScript
View Source CodeLive Demo
Profile Statistics project previewTry Live Demo
What you'll build

Profile Statistics

This project involves creating an interactive profile statistics display showcasing work experience, websites made, and apps made. The design centers around three icons from the Font Awesome library: a briefcase for work experience, a cloud for websites made, and an apple for apps made. Each icon is accompanied by a number that increments from zero to the final value, achieved using the JavaScript set time method to create a function that proportionally increments the number. This effect triggers every time the page loads. The design is styled with CSS to create a modern and sleek look. The end result is an engaging and visually appealing way to showcase professional accomplishments on a profile.

HTML
— Structure
CSS
— Design
JavaScript
— Logic
Complete project files

Build It from the Source Code

Create these three files, copy the code into each one, then open index.html with Live Server.

Project structure
profile-statistics/
├── index.html
├── style.css
└── index.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Profile Statistics</title>
    <link
      rel="stylesheet"
      href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0-beta2/css/all.min.css"
      integrity="sha512-YWzhKL2whUzgiheMoBFwW8CKV4qpHQAEuvilg9FAn5VJUDwKZZxkJNuGM4XkWuk94WCrrwslk8yWNGmY1EduTA=="
      crossorigin="anonymous"
      referrerpolicy="no-referrer"
    />
    <link rel="stylesheet" href="style.css" />
  </head>
  <body>
    <div class="stats-container">
      <i class="fas fa-briefcase fa-3x icon"></i>
      <div class="counter" data-ceil="15">15</div>
      <h4>Years Exprerience</h4>
    </div>
    <div class="stats-container">
      <i class="fas fa-cloud fa-3x icon"></i>
      <div class="counter" data-ceil="260">260</div>
      <h4>Websites Made</h4>
    </div>
    <div class="stats-container">
      <i class="fab fa-apple fa-3x icon"></i>
      <div class="counter" data-ceil="27">27</div>
      <h4>Apps Made</h4>
    </div>
    <script src="index.js"></script>
  </body>
</html>

JS// Related Projects

Keep Building with Similar Projects

Continue your learning journey with these handpicked projects that share similar concepts and technologies

Simple Stopwatch project preview
HTMLCSSJavaScript

Simple Stopwatch

Welcome to the Stopwatch Project! We will create a timer displayed at the top, along with three buttons - start, stop, and reset. Clicking the START button will begin the timer. The STOP button will pause the timer using a JavaScript method called SetInterval, which can be cleared using clearInterval. The RESET button will reset the timer to zero. If you click STOP and then START again, the timer will continue from the previously elapsed time. We'll start by installing CSS for the buttons' design and hover effects, then use JavaScript to get the browser time, manipulate the content, replace it with the calculated time, and provide the start, stop, and reset functionality.

View project
Dice Roll Simulator project preview
HTMLCSSJavaScript

Dice Roll Simulator

Welcome to the Dice Roll Simulator project. The final version of the project features a dice at the center of the screen and a "Roll dice" button. The button triggers an animation and generates a random number, which is displayed in the center of the dice when clicked, t. Additionally, the number is added to a history list. To achieve this, we used modern CSS to style the dice and added a JavaScript event listener to the button. The listener generates a random number, saves it to an array, and updates the history list.

View project
Tip Calculator project preview
HTMLCSSJavaScript

Tip Calculator

In this project, our aim is to build a modern tip calculator. The project's primary interface comprises a container labeled "Tip Calculator" with two input fields: one for the bill amount and the other for the tip percentage. The tip calculator has a modern design that is styled using CSS. We utilized JavaScript to obtain the values of the two input fields and calculate the total amount based on these values.

View project
{ }View All Projects