Skip to content

Roadmap

This page outlines the current and planned features required for TagStudio to be considered "feature complete" (v10.0.0). Features and changes are broken up by group in order to better assess the overall state of those features. Priority levels and version estimates are provided in order to give a rough idea of what's planned and when it may release.

This roadmap will update as new features are planned or completed. If there's a feature you'd like to see but is not listed on this page, please check the GitHub Issues page and submit a feature request if one does not already exist!

Priority Levels

Planned features and changes are assigned priority levels to signify how important they are to the feature-complete version of TagStudio and to serve as a general guide for what should be worked on first, along with version estimates. When features are completed, their priority level icons are removed.

Priority Level Icons

  • High Priority - Core features
  • Medium Priority - Important, but not necessary
  • Low Priority - Just nice to have

Version Estimates

Features are given rough estimations for which version they will be completed in, and are listed next to their names (e.g. Feature [v9.0.0]). They are eventually replaced with links to the version changelog in which they were completed in, if applicable.

Tip

For a more definitive and up-to-date list of features planned for near-future updates, please reference the current GitHub Milestones!


Core

SQL Library Database

An improved SQLite-based library save file format in which legacy JSON libraries are be migrated to. Must be finalized or deemed "feature complete" before other core features are developed or finalized.

  • A SQLite-based library save file format [v9.5.0]
  • Cached File Properties Table [v9.6.0]
    • Date Entry Added to Library
    • Date File Created
    • Date File Modified
    • Date Photo Taken
    • Media Duration
    • Media Dimensions
    • Word Count

Core Library + API

A separated, UI agnostic core library that is used to interface with the TagStudio library format. Would host an API for communication from outside the program.

  • Core Library [v10.0.0]
  • Core Library API [v10.0.0]

Format Specification

A detailed written specification for the TagStudio tag and/or library format. Intended for used by third-parties to build alternative cores or protocols that can remain interoperable.

  • Format Specification Established [v10.0.0]

Application

UI/UX

  • Library Grid View
    • Explore Filesystem in Grid View
  • Library List View
    • Explore Filesystem in List View
  • Lightbox View
    • Similar to List View in concept, but displays one large preview that can cycle back/forth between entries.
    • Smaller thumbnails of immediate adjacent entries below
  • Translations
  • Search Bar Rework [v9.7.0]
    • Improved Tag Autocomplete
    • Tags appear as widgets in search bar
  • Unified Media Player
    • Auto-Hiding Player Controls
    • Play/Pause
    • Loop
    • Toggle Autoplay
    • Volume Control
    • Toggle Mute
    • Timeline scrubber
    • Fullscreen
    • Fine-Tuned UI/UX [v9.5.4]
  • 3D Model Thumbnails/Previews
    • STL File Support
    • OBJ File Support
  • Toggleable Persistent Tagging Panel
    • Top Tags
    • Recent Tags
    • Tag Search
    • Pinned Tags
  • New Tabbed Tag Building UI to Support New Tag Features [v9.6.0]
  • Custom Thumbnail Overrides
  • Media Duration Labels [v9.6.0]
  • Word/Line Count Labels
  • Custom Tag Badges
    • Would serve as an addition/alternative to the Favorite and Archived badges.

Settings

  • Application Settings
    • Stored in System User Folder/Designated Folder
    • Language
    • Date and Time Format
    • Theme
  • Configurable Page Size
  • Library Settings
    • Stored in .TagStudio folder
  • Toggle File Extension Label
  • Toggle Duration Label

Plugin Support

Some form of official plugin support for TagStudio, likely with its own API that may connect to or encapsulate part of the the core library API.

  • Plugin Support [v10.0.0]

Library

Library Mechanics

  • Per-Library Tags
  • Global Tags
  • Multiple Root Directories [v9.6.0]
  • Automatic Entry Relinking [v9.7.0]
    • Detect Renames
    • Detect Moves
    • Detect Deletions
    • Performant
  • Background File Scanning [v9.7.0]
  • Thumbnail Caching [v9.5.0]
    • Audio Waveform Caching [v9.7.0]

Entries

Library representations of files or file-like objects.

  • File Entries [v1.0.0]
  • Folder Entries
  • URL Entries / Bookmarks
  • Fields
    • Text Lines
    • Text Boxes
    • Datetimes [v9.5.4]
    • User-Titled Fields [v9.6.0]
    • Removal of Deprecated Fields [v9.6.0]
  • Entry Groups [v9.7.0]
    • Non-exclusive; Entries can be in multiple groups
    • Ability to number entries within group
    • Ability to set sorting method for group
    • Ability to set custom thumbnail for group
    • Group is treated as entry with tags and metadata
    • Nested groups

Tags

Discrete library objects representing attributes. Can be applied to library entries, or applied to other tags to build traversable relationships.

  • Tag Name [v8.0.0]
  • Tag Shorthand Name [v8.0.0]
  • Tag Aliases List [v8.0.0]
  • Tag Color [v8.0.0]
  • Tag Description [v9.6.0]
  • Tag Colors
    • Built-in Color Palette [v8.0.0]
    • User-Defined Colors [v9.5.0]
    • Primary and Secondary Colors [v9.5.0]
  • Tag Icons [v9.6.0]
    • Small Icons [v9.6.0]
    • Large Icons for Profiles [v9.6.0]
    • Built-in Icon Packs (i.e. Boxicons) [v9.6.0]
    • User-Defined Icons [v9.6.0]
  • Category Property [v9.5.0]
    • Property available for tags that allow the tag and any inheriting from it to be displayed separately in the preview panel under a title
    • Fine-tuned exclusion from categories [v9.6.0]
  • Hidden Property [v9.6.0]
    • Built-in "Archived" tag has this property by default [v9.6.0]
    • Checkbox near search bar to show hidden tags in search [v9.6.0]
  • Tag Relationships
  • Multiple Language Support [v9.9.0]
  • Tag Overrides
  • Tag Merging
  • Tag Search [v8.0.0]
  • Filename Search [v9.5.0]
  • Filetype Search [v9.5.0]
    • Search by Extension (e.g. ".jpg", ".png") [v9.5.0]
      • Optional consolidation of extension synonyms (i.e. ".jpg" can equal ".jpeg") [v9.5.0]
    • Search by media type (e.g. "image", "video", "document") [v9.5.0]
  • Field Content Search [v9.6.0]
  • Boolean Operators [v9.5.0]
    • AND Operator
    • OR Operator
    • NOT Operator
    • Parenthesis Grouping
    • Character Escaping
  • HAS Operator (for Component Tags) [v9.6.0]
  • Conditional Search [v9.7.0]
    • Compare Dates
    • Compare Durations
    • Compare File Sizes
    • Compare Dimensions
  • Smartcase Search [v9.5.0]
  • Search Result Sorting
    • Sort by Filename [v9.5.2]
    • Sort by Date Entry Added to Library [v9.5.2]
    • Sort by File Creation Date [v9.6.0]
    • Sort by File Modification Date [v9.6.0]
    • Sort by File Modification Date
    • Sort by Date Taken (Photos) [v9.6.0]
  • OCR Search
  • Fuzzy Search

Macros

  • Standard, Human Readable Format (TOML) [v9.5.4]
  • Versioning System [v9.5.4]
  • Triggers [v9.5.4]
    • On File Added
    • On Library Refresh
    • [...]
  • Actions [v9.5.4]
    • Add Tag(s)
    • Add Field(s)
    • Set Field Content
    • [...]

Sharable Data

Sharable TagStudio library data in the form of data packs (tags, colors, etc.) or other formats. Packs are intended as an easy way to import and export specific data between libraries and users, while export-only formats are intended to be imported by other programs.

  • Color Packs [v9.6.0]
    • Importable
    • Exportable
    • UUIDs + Namespaces
    • Standard, Human Readable Format (TOML)
    • Versioning System
  • Tag Packs [v9.9.0]
    • Importable
    • Exportable
    • UUIDs + Namespaces
    • Standard, Human Readable Format (TOML)
    • Versioning System
  • Macro Sharing [v9.6.0]
    • Importable
    • Exportable
  • Sharable Entry Data [v9.9.0]
    • Specifics of this are yet to be determined
  • Export Library to Human Readable Format [v10.0.0]
    • Intended to give users more flexible options with their data if they wish to migrate away from TagStudio