Some would call TreeLine an Outliner, others would call it a PIM. Basically, it just stores almost any kind of information.
A tree structure makes it easy to keep things organized. And each node in the tree can contain several fields, forming a mini-database.
The output format for each node can be defined, and the output can be shown on the screen, printed, or exported to HTML.
Key Features
General
- Stores almost any type of information, including plain text, rich text, HTML, numbers, dates, times, Boolean, URLs, etc.
- The tree structure helps keep things organized.
- Each node can have several fields that form a mini-database.
- Several node types, with different sets of fields, can be included in one file.
- The node format, including fields, output lines, formatting and tree-view icon, can be defined for each node type.
Views
- The left-hand view shows an indented, expandable list of titles.
- The right-hand view can show one of three views – for showing output, editing node data and editing node titles.
- The right-hand view is normally split to show data from the parent node and its children.
- If multiple nodes are selected, the right-hand view shows all of their data.
- The output view can be set to show indented output from all descendant nodes.
- An upper breadcrumb view shows titles of the selected node’s ancestors; the titles can be clicked to select them in the tree.
Navigation
- Find commands can search node data for text matches or for more specific rules.
- Filtering commands show only matching nodes in a flat left-hand view.
- Previous and next selection commands toggle selections to quickly move between parts of the tree.
Formatting
- The dialog for data type configuration has several tabs to easily set all type, field and output parameters.
- Each tree node can be set to a type format independently.
- Formatting information can be copied from another TreeLine file.
File Handling
- Undo and redo commands are available for all modifying operations.
- TreeLine files use a JSON format, with options for automatically compressing or encrypting the files.
- Document templates for new files are pre-formatted to cover basic needs.
- The formatted output can be printed with parent/child lines, headers and footers.
File Import and Export
- The data can be exported to single or multiple HTML files with optional navigation panes.
- A live tree HTML export creates an interactive view with expandable nodes and a descendant output pane.
- Plain text, tab-indented text and delimited table files can be imported and exported.
- Files from older versions of TreeLine (2.x and 1.x) can be imported and exported.
- Mozilla and XBEL format bookmark files can be imported and exported.
- Generic XML files can be imported and exported, allowing TreeLine to function as a crude XML editor.
- ODF text documents can be imported and exported as outlines.
Linking
- Internal link fields select a linked node when clicked.
- External link fields can be used to open URLs in web browsers.
- Both internal and external links can be embedded into text fields.
- Nodes that are duplicated by cloning show up as separate clickable paths in the upper breadcrumb view.
Data Manipulation
- Nodes can be sorted by title or by predefined key fields.
- Math fields can be defined that automatically calculate their contents based on numerical values in other nodes.
- Numbering fields can be defined and automatically updated.
- A node’s icon and output format can be changed conditionally based on its data.
- Cloned nodes (the same nodes with multiple parents/locations) can be created using special paste commands or by automatically matching identical nodes.
- Text data can be spell checked (requires an external program.
- Data can be automatically re-arranged using categories from data fields.
Customization
- There are many options for customizing both general and file-based attributes.
- There are editors for keyboard shortcuts and toolbar commands.
- Fonts used in the GUI, editors and output views can be customized.
- The user interface is available in English, German and Spanish. Translations into other languages are TBD.
Website: treeline.bellz.org
Support: Documentation, GitHub Code Repository
Developer: Douglas W. Bell
License: GNU General Public License v2.0

TreeLine is written in Python. Learn Python with our recommended free books and free tutorials.
Related Software
| Personal Information Managers | |
|---|---|
| Kontact | Unites mature and proven applications |
| Evolution | Integrated mail, addressbook and calendaring functionality |
| TagSpaces | Offline, open source, personal data manager |
| Org mode | Mode for the Emacs text editor |
| Makagiga | To-do manager, RSS reader, notepad, widgets, image viewer |
| TreeTag | Personal data manager |
| TreeLine | Stores almost any kind of information |
| Osmo | Includes calendar, task manager and address book modules |
Read our verdict in the software roundup.
Explore our comprehensive directory of recommended free and open source software. Our carefully curated collection spans every major software category.This directory is part of our ongoing series of informative articles for Linux enthusiasts. It features hundreds of detailed reviews, along with open source alternatives to proprietary solutions from major corporations such as Google, Microsoft, Apple, Adobe, IBM, Cisco, Oracle, and Autodesk. You’ll also find interesting projects to try, hardware coverage, free programming books and tutorials, and much more. Discovered a useful open source Linux program that we haven’t covered yet? Let us know by completing this form. |

