Releases: ferrucci-franco/timeseries-explorer
Release list
Time Series Explorer v0.3.0
Time Series Explorer v0.3.0
Signals you can hear, filters designed from a specification rather than typed as coefficients, Micro-Cap and Apple Lossless files that open on their own, and an interface that no longer recomputes what it already knows.
Downloads
- Windows 10/11 x64: installer and portable EXE.
- macOS Intel: DMG installer and ZIP package.
- macOS Apple silicon: DMG installer and ZIP package.
- Linux x86_64: DEB installer and AppImage package.
- SHA256SUMS files: checksums for verifying the downloaded packages.
The executables are currently unsigned. Verify that the file was downloaded from the official Time Series Explorer download button and compare its SHA-256 checksum before running it.
- Windows: SmartScreen may show an Unknown publisher warning. Choose More info → Run anyway.
- macOS: Gatekeeper refuses an unsigned, un-notarized app with "Time Series Explorer" cannot be opened. Open System Settings → Privacy & Security, scroll to the message naming the app, and click Open Anyway; then confirm in the dialog that follows. On macOS Sequoia this panel is the only route — right-click → Open no longer offers the override.
Listen to a signal
The 🔊 button in a panel's toolbar opens a transport strip under the chart, and the curve the panel draws can be heard, with a playhead moving over it.
- Playable means uniformly sampled, not "is an audio file". A filtered signal, a resampled one, a derived formula — anything on an even grid plays. Comparing a recording with its filtered version is the point, so that comparison had to be possible without exporting anything.
- One player, one clock. Pressing play in another panel stops the first and the first keeps its position, which is what lets two versions of the same sound be judged against each other. What belongs to a panel is where it is listening from; what belongs to the app is the sound itself.
- Click the curve to move the playhead. The instant you clicked is the instant it plays from, and the playhead follows the panel through a zoom, a pan and a redraw.
- The level is not a control. Every signal is normalised so its peak lands at -1 dBFS, because a volume slider on data whose units are volts or degrees invites a reading that is not there.
- What it cannot do, it says. A sample rate outside what the audio hardware accepts is named with the limit it exceeded, rather than failing silently.
- Removing a curve from a panel no longer blanks the panel or cuts the sound, closing the strip takes the playhead with it, and a signal recomputed mid-playback is heard as it is now, not as it was when play was pressed.
New files
- Micro-Cap numeric output (
.tno,.ano,.dno) opens directly: the banner and the Limits/Stepping prose are skipped, each waveform table becomes signals named as they were printed —v(C1),DB(V(2)),PD(R3)— with their units, and the first column is the file's X axis. Parameter stepping repeats the table once per combination, so each signal becomes a tree group with one entry per run, labelled by the values that actually differ (C1=10u,V1=12). Output renamed to.txtor.outis recognised by its banner rather than its extension. - Apple Lossless is decoded by the app itself. An iPhone voice memo recorded on the "Lossless" setting is ALAC in an
.m4a, and no browser but Safari ships a decoder for it, so the file simply did not open. The decoder is now ours — adaptive Rice coding, an adaptive FIR predictor, one stereo decorrelation — and it returns the samples bit-exact at the file's own rate, verified frame for frame against ffmpeg on a 1,290,240-frame recording. - WhatsApp voice messages open. They download as
.mp4, which is the same container.m4anames; only the extension list was refusing them. Accepting it raises the case the extension usually means, so a file holding video and no sound track is now refused by saying exactly that, instead of failing deep inside a decoder.
Design a filter instead of typing one
The Digital filter tool gains a Design from a specification mode: family (Butterworth, Chebyshev I, Chebyshev II, Bessel), response (low-pass, high-pass, band-pass, band-stop), order, and cut-off in Hz. The sample rate is read off the source variable's own time axis; an irregular axis refuses the design with the reason spelled out rather than quietly assuming one.
The design takes the textbook route — analog prototype, frequency transformation, pre-warped bilinear transform — so the coefficients match MATLAB's butter, cheby1, cheby2 and besself and SciPy's iirfilter. They run as a cascade of second-order sections, because at high order with a low cut-off the rounding in a single polynomial alone is enough to put a pole outside the unit circle. The expanded b and a are still written into the coefficient boxes, read-only, for reading and copying. Typed coefficients keep working exactly as before.
Derived datasets
- A cross-correlation tool. Two signals of one file in,
r_xyas a function of lag out, on a lag axis of its own in the file's time unit. The convention is MATLAB'sxcorrand SciPy'scorrelate, and the message after Create reads the sign out in words, so a peak at a positive lag does not have to be interpreted from memory. All four normalisations are available, mean removal is on by default, and holes remove pairs rather than poisoning every lag that touches them. - A resample carries its recipe. A derived file now knows where it came from: it is listed under its source in the variable tree, indented in the files list with a derived badge, given a row in the Transformations table, edited in place, recomputed when its source is reloaded, saved to a session as the recipe rather than as rows, and closed together with its source.
- A resample is plotted alongside its source instead of on a new panel, and the derived-dataset tools got the panel, values view and busy state that the rest of the Data Tools already had.
Derived variables
The formula language gains trigonometry (sin, cos, tan, asin, acos, atan, in radians, with the arcsin spellings accepted), the hyperbolic three (sinh, cosh, tanh), the shape pair sign and step — the ordinary signum and the unit step, so x*step(x) rectifies and step(time - 5) gates — and variadic min and max.
It also gains the named constants pi and e, so a formula can be written the way it is written on paper: sin(2*pi*1000*time). A file's own variables always win: a name is looked up as a constant only when the loaded file has nothing by that name, so no saved formula can change value because this exists. math.pi and math.e are the way out when a file does shadow them.
Faster
- A spectrum is not recomputed when nothing it depends on changed. Hiding a curve, closing one, and switching the amplitude scale to dB each used to bring up the "Computing FFT" pill and spend seconds arriving at a spectrum the panel already had. Spectra are cached per panel against what the transform actually reads; dB is a remap of the result, not a reason to transform again.
- A file's sampling step is measured once. Applying a filter to a minute of audio at 48 kHz froze the interface for about twenty seconds while the filter itself took 64 ms — the time went to measuring the axis thirty-eight times over. The median is now found by selection instead of a sort, and each axis is measured once and shared by the filter, the cross-correlation, the resampler and the interpolator.
- WebGL is chosen from the points drawn, not from the length of the file. A long file decimates to about two thousand points before anything is drawn, so asking for a WebGL context on every redraw bought nothing and cost seconds of blocking per update.
- The FFT time pane is redrawn at the resolution actually visible.
Interface
- The mouse wheel adjusts a slider after a short hover. A notch moves one percent of the slider's span — a full sweep in about a hundred notches — never less than the control's own step and always rounded to a whole number of them, so grids like odd-only windows or whole frames survive. Shift refines it.
- Reload shows the loading overlay while it re-reads the file.
- The browser's Open dialog shows every file, and the desktop dialog offers All files second.
- Data-tool warnings dismiss themselves, and a notice about a file leaves with the file.
- "Computing" is a card that goes green when the result lands, and the audio note and the loading pill are said in the app's language.
Fixes
- The FFT legend stays in panel order when a curve is switched off.
- A cross-correlation's lag axis is kept out of the time link, while a panel that mixes ordinary signals with one stays in it.
- The Micro-Cap file badge is shortened to the brand name.
- Numbers in the data-tool number fields have room on the right again.
Desktop capabilities
- Fully local, offline application and bundled processing libraries.
- External documentation links open in the operating system's default browser.
- No classic Electron menu or secondary Electron browser windows.
Time Series Explorer v0.2.0
Time Series Explorer v0.2.0
Four new Data Tools, an Integral analysis, audio recordings as signals, one export dialog for every panel — and analyses that stay usable on files far larger than memory.
Downloads
- Windows 10/11 x64: installer and portable EXE.
- macOS Intel: DMG installer and ZIP package.
- macOS Apple silicon: DMG installer and ZIP package.
- Linux x86_64: DEB installer and AppImage package.
- SHA256SUMS files: checksums for verifying the downloaded packages.
The executables are currently unsigned. Verify that the file was downloaded from the official Time Series Explorer download button and compare its SHA-256 checksum before running it.
- Windows: SmartScreen may show an Unknown publisher warning. Choose More info → Run anyway.
- macOS: Gatekeeper refuses an unsigned, un-notarized app with "Time Series Explorer" cannot be opened. Open System Settings → Privacy & Security, scroll to the message naming the app, and click Open Anyway; then confirm in the dialog that follows. On macOS Sequoia this panel is the only route — right-click → Open no longer offers the override.
Four new Data Tools
- Fill NaN values. Holes are filled by the method you pick, and the panel says up front what it will do and what it cannot: a gap at the very start has nothing before it to interpolate from, and it says so instead of inventing a value.
- Resample. Puts a signal on a uniform grid, completes the timestamps the file skipped, and states where the Δt came from — read from the data or typed by you. Whether a gap is bridged or left as NaN is your decision, not a default hidden in the code.
- Detrend. Straight line, mean, polynomial, moving-average baseline, or zeroing the first sample. It reports the drift it removed, per second when the axis has a unit and per sample when it does not.
- Digital filter. Coefficient-driven FIR/IIR, forward or forward-and-back for zero phase, with the initial conditions spelled out as a question you can answer — steady state, at rest, a level held before the recording, or the actual past samples. Past inputs and past outputs get a box each, newest first, so their order is something you can see rather than something you have to be told. The help explains what a non-causal pass costs you, and why a filter defined per sample has no fixed cut-off frequency on an irregular Δt.
The Data Tools panel itself was rebuilt around them: each tool starts from its own defaults instead of inheriting the last one's, the buttons have a box of their own, deleting a transformation asks in the row rather than in a dialog, and the panel reports what it did rather than writing silently.
Integral analysis
- One bar per signal, totalled over the visible range, with a pie beside it for the share each signal takes. Both are exported from the same dialog as everything else.
- Missing data is a policy, not an accident. A gap can contribute nothing, be crossed by interpolation, or turn the result into NaN from that point on — and the panel says which was applied and how much time was missing, so a lower bound is never presented as a total.
- Units can be overridden when the file never declared one, instead of the app calling an undeclared unit "hours".
- Lazily loaded files are totalled too, and the panel says what the total averages out to.
Audio recordings
Recordings open as one signal per channel on an elapsed-seconds axis built from the file's own sample rate: .wav, .mp3, .m4a, .flac, .ogg, .opus, .aiff, .3gp, .webm and more, which covers phone voice memos from both iPhone and Android. A Recording node in the variable tree carries the sample rate, channel count, duration and format. WAV is decoded by the app itself; every other container goes through the browser's decoder at the rate written in the file, not the rate of the sound card. Because a small file can decode into a very large one, the size limit for audio is measured on the decoded samples and asked about after decoding.
Export a panel
The panel's CSV button is now one export dialog: CSV, PNG or SVG from the same place, for the time series and for every analysis chart including the three Integral ones. The figure is exported in a theme rather than merely on a background, and the section documenting it in Help was rewritten around the dialog.
Large files stay usable
- Every analysis is bounded. FFT, histogram, calendar heatmap, temporal profile, correlation, curve fitting, the definite integral and the 2D state animation now work against a measured budget instead of trying to consume the whole range. Multi-gigabyte audio is analysable; the window keeps responding while it happens.
- A refused FFT range is replaced by the largest one that fits, not by the last one that worked, and the app says how many samples it actually transformed. When a combination of settings is impossible, the previously accepted settings come back.
- Ranges the app chooses for you stay draggable. An automatic block spanning six seconds of a ten-minute axis used to be drawn a few pixels wide, with both edges inside one grab tolerance — the range control stopped working at exactly the moment the app took the decision.
- An analysis opens on its own view, not on the zoom the previous mode left behind.
- Gridded netCDF loads in part instead of being refused. Evenly spaced points are taken along each dimension within a value budget shared fairly across the file, and the app names which variables were thinned and by how much — with the warning that a subset is enough to see the shape of a field but is not a statistical sample of it.
- The MAT inflate is bounded by memory, not by a compression ratio no reader can judge in advance.
- Sampling uniformity is judged against what the numbers can represent, and against the median step rather than the mean, so a file with one long gap is no longer called irregular. Each sample owns its own step, which is why 32 whole days now read as 32 days.
Desktop
- The window has a zoom again. Removing the Electron application menu had silently removed the Ctrl +, Ctrl − and Ctrl 0 accelerators with it, and the desktop build was the one place with no browser zoom to fall back on. Zoom now has its own row in the menu and the shortcuts work, scaling the whole window so the plots re-lay-out with it.
- The portable zip ships one launcher instead of several, and the port probe no longer cries wolf.
Privacy
Google Analytics is gone, replaced by GoatCounter on the web version only. It stores nothing in the browser — no cookies, no localStorage, no cache — and keeps no IP addresses or tracker IDs, so there is no consent banner and nothing to opt out of. The Desktop and portable builds never load it.
Security
- A pandas pickle can no longer execute code while being read, and a malformed MAT file can no longer eat the tab.
- An exported CSV cannot smuggle a formula out of the file it came from.
- Signal names are escaped where they were interpolated into summaries.
- The local-file server refuses a request that does not address it as loopback.
- Release tests run before
maindeploys, and the release token is no longer handed to jobs that execute dependency code. - The patched dependencies were lifted, and the Node version the project actually needs is pinned in one place for both release paths.
- A dead 941-line copy of the CSV time detector and a 3.6 MB Plotly a full major out of date were deleted; both had been shipping in every web deploy and every installer.
Fixes
- A signal no longer disappears when the language is changed mid-redraw of a large trace.
- A panel's chart is torn down before a re-render throws its element away.
- The 2D state animation has the pan gestures every other 2D plot already had, and a failed view restore no longer takes them with it.
- The partial-load dialog stays on the screen it was drawn on.
- Missing/NaN bands are repainted when a legend toggle hides a trace.
- Repeated timestamps are accepted when filling and resampling.
- A reload that served stale bytes says so, and a failed bootstrap can be retried; the DuckDB view a reload abandoned is given back.
- The Filter panel's collapse actually collapses, and a configuration that fails to read takes its preview down instead of leaving the last valid curve on the plot — for every tool, not only the filter.
- The sampling time is stated in the Recording details, next to the rate it restates.
- Curve Fit and Correlation open on the same view as every other mode.
- Line endings are decided in
.gitattributesand the assumption is guarded in CI.
Desktop capabilities
- Fully local, offline application and bundled processing libraries.
- External documentation links open in the operating system's default browser.
- No classic Electron menu or secondary Electron browser windows.
Time Series Explorer v0.1.1
Time Series Explorer v0.1.1
Large files: faster where it counts, and honest about what it cannot do. Plus a Parquet converter you can reach without opening anything.
Downloads
- Windows 10/11 x64: installer and portable EXE.
- macOS Intel: DMG installer and ZIP package.
- macOS Apple silicon: DMG installer and ZIP package.
- Linux x86_64: DEB installer and AppImage package.
- SHA256SUMS files: checksums for verifying the downloaded packages.
The executables are currently unsigned. Windows SmartScreen may therefore show an Unknown publisher warning. Verify that the file was downloaded from the official Time Series Explorer download button and compare its SHA-256 checksum before running it.
Faster
- Data Tools off the main thread. Outlier removal, resampling and the rest run as pure kernels in a worker, so the window keeps responding while they work. The maths is unchanged — the rewrites are bit-exact against the previous implementation.
- Every format parses off the main thread, not only CSV. A large MAT, pickle or netCDF no longer freezes the tab while it is read.
- Zoom decimates in place. Panning and zooming a large file no longer copies the visible slice before thinning it.
- Derived formulas are compiled instead of interpreted per sample.
diff(x)and friends are 1.5–3.5× faster on large series. - A workbook is decoded once, in a worker. Opening a spreadsheet used to read it on the main thread purely to list its sheets — about a minute of a frozen tab for a 126 MB file, with Firefox offering to stop the page.
Large files
- Oversized files are a warning, not a refusal. The limit per format now asks whether to open the file anyway instead of declining for you, and the answer lasts only for that load — change your mind and it asks again.
- Failures are explained in the app's own words. Out of memory, a killed reader, a string too long for the browser: each says what happened and what to do, instead of forwarding a raw browser message.
- A crashed renderer is reported rather than leaving a blank window.
Convert to Parquet
- From the menu, without opening anything. Convert a file to Parquet… takes a text file or a spreadsheet, lets you check the parsing first, asks where to save, and stops there.
- Any delimited text file, not just
.csv, and spreadsheets in both versions — the browser converts them too, not only the Full Desktop build. - The parsing is always shown before converting. A conversion of a misread file is worse than no conversion, because the result looks authoritative.
- The file it writes is usable. Columns keep their real types instead of arriving as text, the columns you unticked are actually left out, dates stay dates, and the time column keeps the name it had.
- Cancellable, and cancelling means something. The conversion stops within a fraction of a second, and nothing is written or opened.
- Where it goes is asked before the work starts, so the browser's save dialog can actually open. Where a browser offers none — Firefox, Safari — it says so up front instead of quietly downloading the file and calling it saved.
Fixes
- A trace dropped onto a zoomed panel now fills in the viewport, instead of staying at overview resolution while every trace beside it shows detail.
- The query engine is shut down when the last file is closed, returning memory that a WebAssembly heap can otherwise never give back.
- A spreadsheet sheet too large to build is reported as out of memory, not as "sheet not found" or "no sheets with data".
- Escape cancels a load from the first second, including while a workbook is being prepared.
- The version row is dated by its commit rather than by the clock of whatever machine compiled it.
- The Full Desktop download no longer calls the build a beta.
- Release details sits beside the version in the download dialog, instead of at the foot beside Close.
Help
The Large files and memory use section was rewritten for a reader who is not a programmer: what a limit is before what the limits are, which of them switch a file to memory-saving mode and which only warn, what changes between the browser and the Full Desktop version, and what the app can and cannot do about a file that does not fit.
Desktop capabilities
- Fully local, offline application and bundled processing libraries.
- External documentation links open in the operating system's default browser.
- No classic Electron menu or secondary Electron browser windows.
Time Series Explorer v0.1.0
Time Series Explorer v0.1.0
First release of the Full Desktop edition out of beta, for Windows, macOS and Linux.
Downloads
- Windows 10/11 x64: installer and portable EXE.
- macOS Intel: DMG installer and ZIP package.
- macOS Apple silicon: DMG installer and ZIP package.
- Linux x86_64: DEB installer and AppImage package.
- SHA256SUMS files: checksums for verifying the downloaded packages.
The executables are currently unsigned. Windows SmartScreen may therefore show an Unknown publisher warning. Verify that the file was downloaded from the official Time Series Explorer download button and compare its SHA-256 checksum before running it.
New since beta.10
- Plot the time axis. Drag the time axis onto a plot to create a derived "sample index" signal (0, 1, 2, …) that visualizes the shape of the time vector — repeated timestamps (events) show up as vertical steps. It behaves like any derived variable (removable, editable with Data Tools, saved in sessions) and works for every format, including lazy files (computed over the loaded overview).
- Stairs line shape. Right-click a series in the legend to switch it between a straight (linear) line and stairs (steps) — helpful for discrete or sampled variables. The measurement cursor's intersection dot follows the step, and the change is preserved with the session.
- Discrete difference. A new
diff(x)formula function and a Difference Δy (no ÷Δt) method in the Derivative data tool compute plain neighbour differences without dividing by Δt, so duplicate timestamps no longer blow up.diff(time)reveals the sampling shape (Δt),diff(diff(time))is zero for uniform sampling, and the time axis is now offered in the formula autocomplete. - Per-axis auto-fit everywhere. The Fit X / Fit Y buttons now also appear in the analysis modes — FFT, Histogram, Temporal profile and Correlation get both; Heatmap gets Fit X (its vertical axis is a fixed categorical axis) — each fitting the analysis pane.
- Safer examples. Loading a project example replaces the whole workspace, so it now confirms whenever any file is loaded — no more silently discarding your loaded files — and says plainly that all files and plots will be replaced.
- Desktop path helpers. In the Full Desktop app, the Copy OpenModelica temp path and Copy Dymola directory actions build an exact, per-platform path with your real user name (no USERNAME placeholder) and drop the browser-only guidance.
- FFT on event data. Sampling that is uniform apart from a few duplicated event timestamps (a fraction of a ULP up to a tiny event epsilon apart) is no longer rejected as not uniform; near-duplicate timestamps are collapsed before the transform.
- Dymola units. Dymola variable descriptions that embed clock/type metadata inside the unit bracket (e.g.
[rad/s:#(clock=…)]) now show a clean unit instead of the raw metadata, in both the variable tree and axis labels.
Desktop capabilities
- Fully local, offline application and bundled processing libraries.
- External documentation links open in the operating system's default browser.
- No classic Electron menu or secondary Electron browser windows.
- Native local-file access and Live Update.
- Higher loading limits and support for large CSV/TXT and Parquet data.
- MATLAB MAT v4 through v7.3 import, including selective matrix import and independent indexes.
- CSV/TXT, Parquet, Excel, generic and PyPSA netCDF and supported pandas Pickle files.
- Time plots, phase plots, 2D curve fitting, state animation, FFT, histograms, correlation, heatmaps and data tools.
- View/session saving and complete-project ZIP saving for in-memory files.
Requirements and limitations
- Windows 10 or Windows 11, x64.
- macOS Intel or Apple silicon.
- Linux x86_64.
- No Internet connection is required after installation.
- Complete-project ZIP export is intentionally unavailable while any loaded source is using lazy loading.
- Automatic updates are not included in this release. Download newer releases manually from GitHub.
Please report reproducible problems in the GitHub issue tracker.
Time Series Explorer v0.1.0-beta.10
Time Series Explorer v0.1.0-beta.10
Beta release of the Full Desktop edition for Windows, macOS and Linux.
Downloads
- Windows 10/11 x64: installer and portable EXE.
- macOS Intel: DMG installer and ZIP package.
- macOS Apple silicon: DMG installer and ZIP package.
- Linux x86_64: DEB installer and AppImage package.
- SHA256SUMS files: checksums for verifying the downloaded packages.
The executables are currently unsigned. Windows SmartScreen may therefore show an Unknown publisher warning. Verify that the file was downloaded from the official Time Series Explorer download button and compare its SHA-256 checksum before running it.
New since beta.9
- Unified time axis, mixed overlays. Files with different time formats can now share one plot. Each file's per-file gear opens a Time axis menu where you choose its X axis: use the file's own time vector or create a row index, and show it as a calendar, a duration (hh:mm:ss), plain seconds, or a real calendar built from a start date.
- Promote numeric time. A simulation whose time is plain seconds can be shown as a duration or promoted to an absolute calendar by fixing its start date, so it overlays real datetime recordings. Duration-vs-seconds is resolved consistently across a panel, independent of trace order.
- Reindex safeguards. A warning explains that a generated row index assumes equidistant samples and hides gaps, and the overlay guard blocks — with a clearer, illustrated message — combinations that would misplace traces.
- Per-axis auto-scale. New Fit X and Fit Y toolbar buttons in time-series and 2D modes: fit X to all data, or rescale Y to the data visible in the current X window.
- Numeric elapsed import. The CSV import dialog can read a numeric time column as elapsed seconds instead of anchoring it to a datetime.
- Fixes and polish. The measurement cursor now lands on the curve when it belongs to the right-hand Y axis; the active file's time-axis menu is tinted so it stands out; a new Align and reindex files help section walks through combining very different files; full French, Spanish and Italian translations.
Desktop capabilities
- Fully local, offline application and bundled processing libraries.
- External documentation links open in the operating system's default browser.
- No classic Electron menu or secondary Electron browser windows.
- Native local-file access and Live Update.
- Higher loading limits and support for large CSV/TXT and Parquet data.
- MATLAB MAT v4 through v7.3 import, including selective matrix import and independent indexes.
- CSV/TXT, Parquet, Excel, generic and PyPSA netCDF and supported pandas Pickle files.
- Time plots, phase plots, 2D curve fitting, state animation, FFT, histograms, correlation, heatmaps and data tools.
- View/session saving and complete-project ZIP saving for in-memory files.
Requirements and limitations
- Windows 10 or Windows 11, x64.
- macOS Intel or Apple silicon.
- Linux x86_64.
- No Internet connection is required after installation.
- Complete-project ZIP export is intentionally unavailable while any loaded source is using lazy loading.
- Automatic updates are not included in this beta. Download newer releases manually from GitHub.
Please report reproducible problems in the GitHub issue tracker.
Time Series Explorer v0.1.0-beta.9
Time Series Explorer v0.1.0-beta.9
Beta release of the Full Desktop edition for Windows, macOS and Linux.
Downloads
- Windows 10/11 x64: installer and portable EXE.
- macOS Intel: DMG installer and ZIP package.
- macOS Apple silicon: DMG installer and ZIP package.
- Linux x86_64: DEB installer and AppImage package.
- SHA256SUMS files: checksums for verifying the downloaded packages.
The executables are currently unsigned. Windows SmartScreen may therefore show an Unknown publisher warning. Verify that the file was downloaded from the official Time Series Explorer download button and compare its SHA-256 checksum before running it.
New since beta.8
- The macOS Intel build now uses GitHub Actions’ current
macos-15-intelrunner label. - The release workflow retains native builds for Windows x64, macOS Apple silicon and Linux x86_64.
Desktop capabilities
- Fully local, offline application and bundled processing libraries.
- External documentation links open in the operating system's default browser.
- No classic Electron menu or secondary Electron browser windows.
- Native local-file access and Live Update.
- Higher loading limits and support for large CSV/TXT and Parquet data.
- MATLAB MAT v4 through v7.3 import, including selective matrix import and independent indexes.
- CSV/TXT, Parquet, Excel, generic and PyPSA netCDF and supported pandas Pickle files.
- Time plots, phase plots, 2D curve fitting, state animation, FFT, histograms, correlation, heatmaps and data tools.
- View/session saving and complete-project ZIP saving for in-memory files.
Requirements and limitations
- Windows 10 or Windows 11, x64.
- macOS Intel or Apple silicon.
- Linux x86_64.
- No Internet connection is required after installation.
- Complete-project ZIP export is intentionally unavailable while any loaded source is using lazy loading.
- Automatic updates are not included in this beta. Download newer releases manually from GitHub.
Please report reproducible problems in the GitHub issue tracker.
Time Series Explorer v0.1.0-beta.4
Time Series Explorer v0.1.0-beta.4
Beta of the Full Desktop edition for Windows 10/11 x64. It supersedes beta.3 and is built with the supported Node.js 22 release environment.
Downloads
- Setup: recommended for most users; installs shortcuts and supports choosing the destination folder.
- Portable: runs directly without installation.
- SHA256SUMS.txt: hashes for verifying both downloads.
The executables are currently unsigned. Windows SmartScreen may therefore show an "Unknown publisher" warning. Verify that the file was downloaded from this GitHub repository and compare its SHA-256 hash before running it.
New since beta.3
- In-app feedback: a new feedback workflow with draft saving and clearer draft controls, a documented fallback path, layout and scrolling fixes, and protection against accidental dismissal.
- Bundled examples: configured project examples, including a correlation curve-fitting example, ship with the app.
- Unix launchers: launch scripts for macOS/Linux development alongside the feedback workflow tooling.
- Session restore: the mode toolbar now syncs correctly when a saved session is restored.
- Fixes: heatmap generated-datetime handling and the sidebar scrollbar layout.
Desktop capabilities
- Fully local, offline application and bundled processing libraries.
- External documentation links open in the operating system's default browser.
- No classic Electron menu or secondary Electron browser windows.
- Native local-file access and Live Update.
- Higher loading limits and support for large CSV/TXT and Parquet data.
- MATLAB MAT v4 through v7.3 import, including selective matrix import and independent indexes.
- CSV/TXT, Parquet, Excel, generic and PyPSA netCDF and supported pandas Pickle files.
- Time plots, phase plots, 2D curve fitting, state animation, FFT, histograms, correlation, heatmaps and data tools.
- View/session saving and complete-project ZIP saving for in-memory files.
Requirements and limitations
- Windows 10 or Windows 11, x64.
- No Internet connection is required after downloading.
- Complete-project ZIP export is intentionally unavailable while any loaded source is using lazy loading.
- Automatic updates are not included in this beta. Download newer releases manually from GitHub.
- macOS, Linux and Windows ARM builds are not part of this release.
Please report reproducible problems in the GitHub issue tracker.
Time Series Explorer v0.1.0-beta.3
Time Series Explorer v0.1.0-beta.3
Beta of the Full Desktop edition for Windows 10/11 x64. It supersedes beta.2 and is built with the supported Node.js 22 release environment.
Downloads
- Setup: recommended for most users; installs shortcuts and supports choosing the destination folder.
- Portable: runs directly without installation.
- SHA256SUMS.txt: hashes for verifying both downloads.
The executables are currently unsigned. Windows SmartScreen may therefore show an "Unknown publisher" warning. Verify that the file was downloaded from this GitHub repository and compare its SHA-256 hash before running it.
New since beta.2
- 2D Curve Fit: per-pair linear/quadratic OLS fitting in 2D mode, with a temporal pane, All/Selection range control, CSV export of fit results, help modals, and lazy DuckDB support for large files.
- Temporal profiles for lazy files: daily/period temporal-profile analysis now works with lazy-loaded sources, with responsive progress and side-panel warnings.
- MATLAB datetime/duration: standalone MATLAB
datetime/durationfields load as time axes, including grouped MCOS datetime fields inside structs/cells. - netCDF: improved generic netCDF time-axis detection.
- Polish: CSV parsing tweaks, generated-time autoscale, time-series Y-axis autoscale after axis moves, WebGL for 2D point displays, and analysis range/legend UI refinements.
Build provenance
- The Menu > Version entry now shows the build's short commit hash and build date, so testers can report exactly which build they are running (web and desktop).
Desktop capabilities
- Fully local, offline application and bundled processing libraries.
- External documentation links open in the operating system's default browser.
- No classic Electron menu or secondary Electron browser windows.
- Native local-file access and Live Update.
- Higher loading limits and support for large CSV/TXT and Parquet data.
- MATLAB MAT v4 through v7.3 import, including selective matrix import and independent indexes.
- CSV/TXT, Parquet, Excel, generic and PyPSA netCDF and supported pandas Pickle files.
- Time plots, phase plots, 2D curve fitting, state animation, FFT, histograms, correlation, heatmaps and data tools.
- View/session saving and complete-project ZIP saving for in-memory files.
Requirements and limitations
- Windows 10 or Windows 11, x64.
- No Internet connection is required after downloading.
- Complete-project ZIP export is intentionally unavailable while any loaded source is using lazy loading.
- Automatic updates are not included in this beta. Download newer releases manually from GitHub.
- macOS, Linux and Windows ARM builds are not part of this release.
Please report reproducible problems in the GitHub issue tracker.
Time Series Explorer v0.1.0-beta.2
Time Series Explorer v0.1.0-beta.2
This is the first public beta of the Full Desktop edition for Windows 10/11 x64. It supersedes beta.1 and uses the supported Node.js 22 release environment.
Downloads
- Setup: recommended for most users; installs shortcuts and supports choosing the destination folder.
- Portable: runs directly without installation.
- SHA256SUMS.txt: hashes for verifying both downloads.
The executables are currently unsigned. Windows SmartScreen may therefore show an "Unknown publisher" warning. Verify that the file was downloaded from this GitHub repository and compare its SHA-256 hash before running it.
Desktop capabilities
- Fully local, offline application and bundled processing libraries.
- External documentation links open in the operating system's default browser.
- No classic Electron menu or secondary Electron browser windows.
- Native local-file access and Live Update.
- Higher loading limits and support for large CSV/TXT and Parquet data.
- MATLAB MAT v4 through v7.3 import, including selective matrix import and independent indexes.
- CSV/TXT, Parquet, Excel, PyPSA netCDF and supported pandas Pickle files.
- Time plots, phase plots, state animation, FFT, histograms, correlation, heatmaps and data tools.
- View/session saving and complete-project ZIP saving for in-memory files.
Requirements and limitations
- Windows 10 or Windows 11, x64.
- No Internet connection is required after downloading.
- Complete-project ZIP export is intentionally unavailable while any loaded source is using lazy loading.
- Automatic updates are not included in this beta. Download newer releases manually from GitHub.
- macOS, Linux and Windows ARM builds are not part of this release.
Please report reproducible problems in the GitHub issue tracker.