A full-stack, “Super Saiyan” level web application built with Node.js, Express, and EJS.
This project allows users to explore the vast universe of Dragon Ball Z — from iconic characters to distant planets — by pulling real-time data from the Dragon Ball API.
Browse a complete list of fighters with detailed stats, descriptions, and background information.
Discover legendary worlds from the DBZ universe — from Namek to Planet Vegeta.
View:
- Transformations
- Ki levels
- Origin stories
- Character stats
Instantly find your favorite warriors using the live search feature.
- Background music integration
- Smooth scroll-triggered animations using the Intersection Observer API
This project goes beyond visuals and implements production-level security practices:
- Secures HTTP headers
- Prevents clickjacking
- Protects against MIME sniffing
- Mitigates XSS attacks
- Protects against spam and bot attacks
- Displays a custom “Limit Break” error page when limits are exceeded
- Uses
encodeURIComponent()for safe URL handling - Leverages EJS’s built-in escaping to prevent XSS
- Validates API responses
- Prevents server crashes from malformed or unexpected data
- Backend: Node.js, Express.js
- Frontend: EJS (Embedded JavaScript), CSS3, Vanilla JavaScript
- API Interactions: Axios
- Security: Helmet, Express-Rate-Limit
git clone https://github.com/RSP-007/DBZ-Web.git
cd DBZ-Webnpm installnode app.jsOr, if you use Nodemon:
npm run devVisit:
http://localhost:3000
DBZ-MAIN
│
├── node_modules/
│
├── public/
│ ├── styles/
│ │ ├── 404.css
│ │ ├── characters.css
│ │ ├── error.css
│ │ ├── main.css
│ │ ├── planets.css
│ │ └── transformation.css
│ │
│ ├── audio-handler.js
│ ├── card-observer.js
│ ├── dbz-dragon-ball-z-goku-dragon-ball-super.jpg
│ ├── dragon-ball-goku-sparks-gif-preview.gif
│ ├── Dragon-Ball-Z-Logo-PNG-File.png
│ └── thisisbeatkitchen-beatkitchen-i-will-fight.mp3
│
├── views/
│ ├── 404.ejs
│ ├── character-details.ejs
│ ├── characters.ejs
│ ├── error-limiter.ejs
│ ├── index.ejs
│ └── planets.ejs
│
├── .gitignore
├── app.js
├── LICENSE
├── package-lock.json
├── package.json
└── README.md
This project is licensed under the MIT License.
See the LICENSE file for more details.
- Data provided by the Dragon Ball API
- Created by RSP-007 as part of a Web Development Portfolio project
