Skip to content

OurTaiko/TJAAnalyzer

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

550 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TJA Analyzer

A versatile tool for visualizing, analyzing, and annotating TJA charts.

TJA Analyzer on laptop and phone

Features

Chart rendering

  • Renders TJA charts in native resolution with zooming support.
  • Renders branches (Normal, Expert, Master) individually or stacked together.
  • Supports player side selection for multi-player charts.
  • Full-screen chart view with PWA support and mobile optimizations.

Analysis

  • Displays note statistics such as BPM and note gaps (in beats or milliseconds).
  • Annotate hands (L/R) manually or automatically with customizable hand inference.
  • Note separator annotations for marking chart sections.

Search

  • Advanced search with filters for difficulty, star rating range, and BPM range.
  • Shareable search state via URL parameters.

Export

  • Exports selected chart section as TJA, with loop customizations.
  • Save rendered charts as high-quality images.
  • Share link to current chart with search options.

Getting Started

Prerequisites

  • Node.js (for building/running locally)

Installation

npm install

Running

Development Mode (Hot Reload):

npm run dev

Access at the URL shown in your terminal. Use this for active development.

Production Preview:

npm start

This serves the built assets from dist/ to simulate a production deployment. Requires npm run build first.

Desktop Mode (Neutralinojs):

npm run start:exe

Starts the application as a standalone desktop executable.

Building

To build the web assets:

npm run build

To build the standalone executable:

npm run build:exe

Development

Formatting & Linting: This project uses Biome for formatting and linting.

npm run format

Testing:

npm test

Updating ESE Assets: To fetch the latest charts from the ESE database:

npm run fetch-ese

Project Structure

  • src/: Source code (TypeScript, CSS, Components) for the main application (TJA Analyzer).
  • TJARenderer/: Core chart rendering logic as a git submodule (TJARenderer).
  • renderer-example/: Minimal usage example for the renderer package.
  • public/: Static assets (such as HTML and chart database) served directly.
  • tests/: Playwright and unit test suites.
  • dist/: Build output for the web application (generated).
  • release/: Build output for standalone executables (generated).

Version History

A brief summary of each minor version:

  • v0.11.x: Note separator annotations and customizable auto-annotation. Extracted renderer into a standalone package with public API.
  • v0.10.x: Advanced search filters (BPM range, difficulty, star rating), wiki links, player side selection, shareable search state via URL.
  • v0.9.x: Added playdata management (import and export), play status indicators in chart list, persistent URL updates, refined ESE search functionality.
  • v0.8.x: Implemented PWA offline support and auto-updates, migrated build system, extracted renderer logic into a standalone package.
  • v0.7.x: Overhauled judgement handling for better game integration, introduced portable builds for desktop, added scripts for generating song mappings.
  • v0.6.x: Responsive horizontal layout and dark mode support, consolidated input tabs, refactored core components.
  • v0.5.x: Automatic hand annotation features based on note patterns and segmentation logic, visual improvements for note selection.
  • v0.4.x: Stacked rendering of multiple branches, improved visual cues for Gogo time and branching.
  • v0.3.x: ESE integration, added Neutralinojs packaging for desktop deployment.
  • v0.2.x: Added note selection export functionality, allowing users to export specific sections of a chart with custom loop settings.
  • v0.1.x: Initial release featuring basic TJA chart rendering, navigation, and zooming support.

About

Understand everything about your favorite TJA charts

Resources

License

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • TypeScript 85.2%
  • CSS 5.8%
  • JavaScript 4.5%
  • HTML 3.4%
  • Other 1.1%