LiveSplit / LiveSplit/LiveSplit

UX Enhancement during startup when connecting to the internet

Open
#2,591 4 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement
Dominant language
C#
Stars
1.9k
Forks
815
Avg merge
4d 17h
Merged PRs (30d)
3

Description

As far as I can tell, the way LiveSplit works currently is it downloads certain files (such as the autosplitters list) during the startup. During this time, the UI doesn't even start to render. On the surface it doesn't seem like a big deal, it's a small download that shouldn't take long in a decent connection, but imo this is bad UX. Something similar happens when the splits file is changed as well.

First, even with the good connection it feels like livesplit is slow and unresponsive during the download. Second, there are several reasons why the download could fail or worse, be waiting forever for that 504 response to come. This could be due to some firewall block, server issues from speedrun.com or github, etc.

My proposed solution - LiveSplit should render the UI first and show some kind of loader with appropriate text during the download. There should be a hard timeout and maybe even an error message if it fails. The main issue currently is that there is no communication to the user that LiveSplit is trying to download something from the internet. So when there are any issues like I mentioned above, it's natural to assume the LiveSplit itself is not working. My proposal would solve that issue with the added benefit of making LiveSplit feel more responsive than it currently is.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by tracing the startup path and the path triggered when the splits file changes, focusing on where internet downloads block UI rendering. Done means the UI renders before downloads complete, users see loader or status text, and timeout or failure is communicated clearly.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp
Domain
desktop, networking
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.