Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Skyrim Character Builder (SCB)

Project Overview

Skyrim Character Builder is a free Single Page Application (SPA) designed to create and plan character builds for The Elder Scrolls V: Skyrim.

The application allows users to create a character, select race, equipment, skills, perks, and passive bonuses, while dynamically recalculating character statistics in real time.
The project focuses on complex UI logic, rich interactivity, and clean architecture — built entirely with Vanilla JavaScript.

This project was built without frameworks to demonstrate core JavaScript skills.

Features

  • Character creation (name + race required before access to the main menu)
  • Fully interactive SPA (no page reloads)
  • Equipment system:
    • Items grouped into 5 main categories with subcategories (e.g. Armor → Light / Heavy)
    • Sorting by:
      • Name
      • Weight
      • Damage or Armor rating
    • Advanced filters with multiple options
    • Real-time search by item name
    • Equip / unequip / change items
  • Skills & Perks:
    • All 18 Skyrim skill trees
    • SVG-based fully interactive skill trees
    • Interactive perk selection (left or right click)
    • Descriptions on hover or long tap (mobile)
  • Boons:
    • All 12 Standing Stones
    • Additional passive bonuses
    • Flexible combinations based on game rules
  • Real-time character statistics:
    • Armor, Damage output
    • Different resistances
    • Visualized caps for them using Canvas-based dynamic charts
  • Rich UI interactions:
    • Item descriptions and thumbnails
    • Image zoom on hover or click
    • Optimized image loading and caching

Tech Stack

  • HTML
  • CSS3
    • Pure CSS
    • BEM methodology
  • JavaScript (Vanilla JS)
  • Vite (build tool)
  • IntersectionObserver
    • Lazy loading of images
  • Canvas
    • Real-time statistics visualization
  • SVG
    • Fully interactive skill trees and perks
  • Custom image caching logic for performance optimization

Architecture & Approach

  • Single Page Application (SPA)
  • Modular project structure
  • Clear separation of UI and logic
  • Responsive design (desktop & mobile)
  • Focus on:
    • Readable code
    • Predictable behavior
    • Maintainability

The project was developed solo, without external frameworks, to focus on fundamental frontend principles and hands-on problem solving.

What This Project Demonstrates

  • Strong understanding of core JavaScript
  • Complex state-dependent UI logic
  • Working with Canvas and SVG
  • Performance-oriented techniques (lazy loading, image caching)
  • SPA architecture without frameworks
  • Attention to UX details and edge cases

Installation & Run Locally

WebP images are hosted separately to keep the repository lightweight and fast to clone via GitHub Pages: https://vzhhub.github.io/SCB-webp/

Releases

Packages

Contributors

Languages