NUKnightLab / NUKnightLab/TimelineJS3

Zoom repositions to the active timemarker

Open
#326 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Enhancement
Dominant language
JavaScript
Stars
3.2k
Forks
645
PR merge metrics
No merged PRs in 30d

Description

Would it be possible to add a option where you pick between the regular zoom functionality or an option where the zoom functionality keeps the timenav at the relative same position prezoom action?

Scenario Currently: A user zooms out to the maximum allowed factor, moves the timeline from 2010 to 1960 where there is a dense population of markers. The user zooms in to take a better look and is suddenly back at the active marker and now has to move the timeline back all the way to 1960.

Scenario Ideally: A user zooms out to the maximum allowed factor, moves the timeline from 2010 to 1960 where there is a dense population of markers. The user zooms in to take a better look and goes on with his life.

Contributor guide

Open the contributing guide

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 locating the JavaScript code that handles timeline zooming, timenav positioning, and the active timemarker. Trace how the current zoom target is selected, then determine how an option could preserve the timeline's relative pre-zoom position. Done means both zoom behaviors are available and the view remains near the user's chosen time when the new behavior is selected.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
frontend
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.