All Projects → alexozer → flitter

alexozer / flitter

Licence: MIT license
A Livesplit-inspired speedrunning split timer for Linux/macOS terminal. Supports global hotkeys.

Programming Languages

ocaml
1615 projects
scheme
763 projects

Projects that are alternatives of or similar to flitter

Splitter
A speedrunning timer for macOS
Stars: ✭ 34 (-69.64%)
Mutual labels:  timer, speedrun, speedrunning, livesplit, speedrun-timer
LiveSplitOne
A version of LiveSplit that works on a lot of platforms.
Stars: ✭ 172 (+53.57%)
Mutual labels:  timer, speedrun, speedrunning, livesplit
Unload
An advanced automatic speedrun load time remover for community verifiers.
Stars: ✭ 20 (-82.14%)
Mutual labels:  speedrun, speedrunning
mist
minimal, improved speedrun timer
Stars: ✭ 34 (-69.64%)
Mutual labels:  speedrun, speedrun-timer
TimerInterrupt
This library enables you to use Interrupt from Hardware Timers on an Arduino, such as Nano, UNO, Mega, etc. It now supports 16 ISR-based timers, while consuming only 1 hardware Timer. Timers' interval is very long (ulong millisecs). The most important feature is they're ISR-based timers. Therefore, their executions are not blocked by bad-behavin…
Stars: ✭ 76 (-32.14%)
Mutual labels:  timer
scitime
Training time estimation for scikit-learn algorithms
Stars: ✭ 119 (+6.25%)
Mutual labels:  timer
timer
🕚 A simple, beautiful cubing timer.
Stars: ✭ 26 (-76.79%)
Mutual labels:  timer
langx-java
Java tools, helper, common utilities. A replacement of guava, apache-commons, hutool
Stars: ✭ 50 (-55.36%)
Mutual labels:  timer
asynctimerqueue
Asynchronous timer queue mechanism(C++11)
Stars: ✭ 21 (-81.25%)
Mutual labels:  timer
r6operators
r6operators is a collection of high-quality vectorized Rainbow Six: Siege Operator icons & metadata for Node.js
Stars: ✭ 75 (-33.04%)
Mutual labels:  rainbow
croner
Trigger functions and/or evaluate cron expressions in JavaScript. No dependencies. Most features. All environments.
Stars: ✭ 169 (+50.89%)
Mutual labels:  timer
CountdownTimer-TeLeTiPs
The very first powerful Telegram bot to countdown to your important events in any group chat. Live countdown timer (days : hours : minutes : seconds)
Stars: ✭ 122 (+8.93%)
Mutual labels:  timer
SAMD TimerInterrupt
This library enables you to use Interrupt from Hardware Timers on an SAMD-based board. These SAMD Hardware Timers, using Interrupt, still work even if other functions are blocking. Moreover, they are much more precise (certainly depending on clock frequency accuracy) than other software timers using millis() or micros(). That's mandatory if you …
Stars: ✭ 28 (-75%)
Mutual labels:  timer
favloader
Vanilla JavaScript library for loading animation in favicon (favicon loader)
Stars: ✭ 20 (-82.14%)
Mutual labels:  timer
chigo
🌈 Lolcat in Go: Rainbows and Unicorns!
Stars: ✭ 34 (-69.64%)
Mutual labels:  rainbow
revisiting rainbow
Revisiting Rainbow
Stars: ✭ 71 (-36.61%)
Mutual labels:  rainbow
rainbowify
Fabric mod for rainbow and blur backgrounds in minecraft guis
Stars: ✭ 18 (-83.93%)
Mutual labels:  rainbow
cups-rl
Customisable Unified Physical Simulations (CUPS) for Reinforcement Learning. Experiments run on the ai2thor environment (http://ai2thor.allenai.org/) e.g. using A3C, RainbowDQN and A3C_GA (Gated Attention multi-modal fusion) for Task-Oriented Language Grounding (tasks specified by natural language instructions) e.g. "Pick up the Cup or else"
Stars: ✭ 38 (-66.07%)
Mutual labels:  rainbow
plf nanotimer
A simple C++ 03/11/etc timer class for ~microsecond-precision cross-platform benchmarking. The implementation is as limited and as simple as possible to create the lowest amount of overhead.
Stars: ✭ 108 (-3.57%)
Mutual labels:  timer
ES-Timer
A USB timer powered by Digispark ATtiny85 according to 🍅 pomodoro time management technique
Stars: ✭ 45 (-59.82%)
Mutual labels:  timer

Flitter

A Livesplit-inspired speedrunning split timer for terminal / command-line.

Animated demo GIF

All screenshots

Features

  • Global hotkeys
  • 🌈 Animated rainbow best splits
  • 24-bit terminal color
  • Undo / delete split
  • Pause / resume
  • Splits and history stored in single human-editable file
  • 60 FPS rendering with low CPU usage
  • Robust time computations: float math is mostly avoided

Install

Flitter has been tested on Linux, but in theory it should work on MacOS as well. Windows is not supported.

OCaml Dependencies

Flitter is mostly written in OCaml.

Install opam: opam install instructions

Set up opam and install OCaml dependencies:

$ opam init
$ opam switch create 4.07.0
$ opam install dune core lwt re color sexp_pretty uutf lwt_ppx uuseg notty

Python Dependencies

Flitter uses a tiny amount of Python to provide global hotkeys.

Install pip for Python 3. For example, on Ubuntu / Debian:

$ sudo apt install python3-pip

Install Python package dependencies:

$ pip3 install --user pynput

Install Flitter

$ git clone --recursive https://github.com/alexozer/flitter.git
$ cd flitter
$ dune build
$ dune install

Usage

Create your splits:

Copy examples/splits.scm somewhere. Edit it and add your game and split information. The personal best splits, world record splits, and gold segments are not required.

Launch Flitter with your splits file:

$ flitter my-splits.scm

Warning: Don't edit your splits file while Flitter is running, your changes will be overwritten.

Keybindings

Keybindings are all global hotkeys; they will work even when the terminal is not focused.

Keys Action
Space Start / split / save and reset if run finished
J Start / split
K Undo split
D Delete last segment
Backspace Pause / reset (save run if finished and save golds)
Delete Pause / delete run (don't save anything)
Q Quit (if not currently timing)

Contributing

Feel free to make an issue or a pull request!

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].