A hands-on cybersecurity learning platform that teaches browser DevTools and web security fundamentals through 10 interactive 3D challenges.
Built for beginners, students, and educators. No prior security knowledge required.
Each level pairs a real-world security concept with a specific browser DevTools skill. Players progress from inspecting HTML elements to setting breakpoints and stepping through code, building practical debugging skills alongside security awareness.
An in-game walkthrough system provides three tiers of guidance per level:
- Concept explanation in plain language
- Progressive hints with step-by-step DevTools instructions
- Full solution revealed only after all hints
git clone https://github.com/Suffix30/3D-Authentication-LAB.git
cd 3D-Authentication-LAB
npm install
npm run devOpen http://localhost:3000/3D-Authentication-LAB/ in a Chromium-based browser for the best DevTools experience.
| Level | Security Concept | DevTools Skill | Difficulty |
|---|---|---|---|
| 1 | Basic Authentication | Elements Tab | Easy |
| 2 | Two-Factor Authentication | Sources Tab | Medium |
| 3 | Pattern Recognition | Console Tab | Hard |
| 4 | Hidden Headers | Network Tab | Medium |
| 5 | SQL Injection Prevention | Console + Debugging | Hard |
| 6 | JWT Token Verification | Console + atob() |
Expert |
| 7 | XSS Prevention | Elements + Live Editing | Hard |
| 8 | Steganography | Application Tab + Storage | Expert |
| 9 | Buffer Overflow Prevention | Debugger + Breakpoints | Expert |
| 10 | Zero-Knowledge Proof | Full DevTools Mastery | Master |
- Read the hint displayed below the form
- Use the ? button in the bottom-right corner to open the walkthrough panel
- Work through the progressive hints -- each one teaches you exactly where to click and what to look for in DevTools
- Enter your answer in the form and click Submit
- A green packet animation confirms a correct answer; red means try again
| Component | Technology |
|---|---|
| 3D Rendering | Three.js |
| Build Tool | Vite |
| Deployment | gh-pages |
├── index.html Entry point
├── vite.config.js Vite configuration
├── package.json
└── src/
├── main.js Application logic, UI, help panel
├── index.css Styles
├── levels/
│ └── config.js Level definitions, validation, walkthroughs
└── components/
└── LevelVisualizer.js Three.js scene management per level
Build and deploy to GitHub Pages:
npm run build
npm run deployContributions are welcome. To add a new level:
- Add a level object to
src/levels/config.jswithid,name,difficulty,requirements,hint,solution,validation,devtoolsSkill, andwalkthrough - Add a corresponding visualization method in
src/components/LevelVisualizer.js - Register the new case in the
createVisualizationswitch statement
Each level includes a built-in walkthrough accessible via the ? button. The walkthrough teaches you which DevTools tab to open, where to click, and what to look for -- without giving away the answer directly. Use DevTools to find the solutions yourself.
See LICENSE.