Skip to content

Somnia1337/csTimer-Analyzer-web

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

English | 中文

The web app for csTimer-Analyzer, leveraging the power of WebAssembly and the Rust toolchain.

Features:

  • SECURE. Your data will not be uploaded, all computations are done in your browser(thanks to WebAssembly).
  • FAST. It can read and analyze thousands of records in under a second.
  • CONFIGURABLE. The analyzer reads your configuration from the web app's textarea, making it simple to use.
  • FLEXIBLE. It generates and renders a markdown document as the analysis report, so you can read it right in your browser.

Usage

  1. Go to csTimer, click on the "EXPORT" button, then click "Export to file". A data file named cstimer_YYYYMMDD_hhmmss.txt should be downloaded.
  2. Open csTimer-Analyzer-web, write your analysis options in the textarea, see below for configuration tutorials.
  3. Press the file selection button and choose the data file you just downloaded, your browser should begin analyzing automatically and show the report afterwards.

Analysis Options

The analyzer reads your options from the textarea, here's how to write it.

  • summary: Provides an summary of a session, including best and worst times, mean and average, and counts of +2s and DNFs.
  • stats: The metric of statistics, choose one of these:
    • single: single solves
    • mo{n}: mean of n solves
    • ao{n}: average of n solves
  • pbs(stats): Tracks your personal best history for stats over time.
  • group(stats, millis): Groups stats into intervals of millis milliseconds, producing a histogram.
    • millis could be 0, in which case the analyzer decides a proper interval.
  • trend(stats): Tracks the trend of stats, generating a trend chart.
  • commented: Filters records with a comment(maybe useful if you comment when skipping OLL/PLL).

Check below for a real example of options.

# The options for analysis

# Comment starts with '#'

# Summary
summary

# Pb histories
pbs(single)
pbs(mo3)

# Grouping charts
group(single, 500) # 500ms

# Trending charts
trend(ao12)
trend(ao100)

# Recent solves
recent(200)                    # 200 solves
recent(10%)                    # 10% solves
recent(2025-01-01)             # start date
recent(2024-01-01, 2024-12-31) # date range

# Commented records
commented

Todo

  • test: add test modules.