Skip to content

Commit 5c8027f

Browse files
committed
Improve About Portfolio Menu
- Update about.png - Add commits-over-time.png - Small content structure adjusted. - Fix Forum link german and english
1 parent 172ef9a commit 5c8027f

File tree

3 files changed

+108
-26
lines changed

3 files changed

+108
-26
lines changed

docs/en/reference/help/about.md

Lines changed: 108 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -1,59 +1,141 @@
11
---
22
title: Help > About Portfolio Performance
3-
todo: platform choice implications
3+
lastUpdate: 2025-05-18
4+
description: Detailed information about the Portfolio Performance program, including version, platform, Java version, key software components, contributors, translators, and installation details.
5+
authors:
6+
- name: Portfolio Performance Team
7+
version: 1.0
8+
slug: help-about-portfolio-performance
9+
tags:
10+
- Portfolio Performance
11+
- Software
12+
- About
13+
- Open Source
14+
- Java
15+
changes:
16+
- date: 2025-05-18
17+
author: Nirus2000
18+
description:
19+
- Updated to version 0.76.2 (May 2025)
20+
- Expanded Key Software Components & Libraries section
21+
- Updated contributor and translation info
422
---
5-
Detailed information about the Portfolio Performance program could be found in the menu `Help > About Portfolio Performance`. The top panel contains the version, e.g. 0.67.0 from december 2023, the platform and the Java version it runs on. The platform could be Windows (win32, x86_64), Linux, or macOS; see [Installation](../../getting-started/installation.md). The Portfolio Performance program is built with the Java programming language. The most recent Long Term Support (LTS) version of the OpenJDK (Java Development Kit) is obtained through [Azul.com](https://www.azul.com/downloads/?package=jdk#zulu). From the copyright info, you learn that the author `Andreas Buchen` started development back in 2012.
623

7-
Figure: The About Portfolio Performance panel.{class=pp-figure}
24+
# Help > About Portfolio Performance
825

9-
![](images/about.png)
26+
Detailed information about the **Portfolio Performance** program is available under the menu:
27+
`Help > About Portfolio Performance`.
1028

11-
The bottom panel contains links to the used (open source) software, code contributors, translators, and Writers. There is also a section about Installation Details.
29+
---
1230

13-
## Software
31+
## About Panel Overview
1432

15-
[Eclipse Foundation](https://www.eclipse.org/): Eclipse is a free and open source software development environment that supports various languages, platforms and plugins. It is a very popular and widely used IDE (Integrated Development Environment). Eclipse allows developers to create, test, debug, and deploy applications using a common framework and a rich set of tools. From a user perspective, the choice of a specific IDE is not important. The development platform e.g. Java SDK however is very much.
33+
Figure: About Portfolio Performance Panel {class="pp-figure"}
1634

17-
[Apache Software Foundation](https://apache.org/): Several libraries are used; for example to extract text and metadata from PDF documents, and to perform HTTP requests and handle responses (e.g. communicate with Portfolio Report).
35+
![About Portfolio Performance Panel](./images/about.png)
1836

19-
[SWT Chart Project](https://github.com/eclipse/swtchart/wiki): The Eclipse SWTChart software is used to create the line and pie charts in the app. Portfolio Performance uses the Standard Widget Toolkit (SWT) which is a graphical user interface (GUI) library that allows Java developers to create native-looking applications for different platforms. You enable this library in `Help > Preferences > General`.
37+
---
2038

21-
[Tree Map Library](https://github.com/smurf667/treemaplib): Treemaps represent a distinct visualization technique for illustrating hierarchical data by using a series of nested rectangles. This kind of map is used in the Taxonomies menu.
39+
### Top Section
2240

23-
[jsoup Java HTML Parser](https://jsoup.org/): jsoup is a Java library that simplifies working with real-world HTML and XML. It offers an easy-to-use API for URL fetching, data parsing, extraction, and manipulation using DOM API methods, CSS, and xpath selectors. The library is used for example to fetch the historical prices from a table on a financial website.
41+
- **Version:** 0.76.2 (May 2025)
42+
- **Platform:** Windows (win32, x86*64), Linux, or macOS
43+
See [Installation](../../getting-started/installation.md) for details.
44+
- **Java Version:** Version of the Java Runtime Environment (JRE) or Java Development Kit (JDK) used
45+
Portfolio Performance is developed in **Java**. It is recommended to use the latest **Long-Term Support (LTS)** OpenJDK version, available from [Azul Zulu](https://www.azul.com/downloads/?package=jdk#zulu).
46+
- The project was started in 2012 by **Andreas Buchen**.
2447

25-
[JSON.simple](https://github.com/fangyidong/json-simple): JSON.simple is a simple Java toolkit for JSON. You can use JSON.simple to encode or decode JSON text. This tool is used in the app for downloading historical prices from a JSON data source.
48+
---
2649

27-
[Protobuf](https://github.com/protocolbuffers/protobuf): Protocol Buffers (a.k.a., protobuf) are Google's language-neutral, platform-neutral, extensible mechanism for serializing structured data. The software is used to convert the XML-datastructures of the portfolio file into Java usable data structures.
50+
### Bottom Section
2851

29-
[Guava](https://github.com/google/guava): The Guava libraries are intended to complement the core java libraries and make working in the Java language more pleasant and more productive.
52+
Links to:
53+
- Open source software used by the program
54+
- Code contributors
55+
- Translators
56+
- Documentation authors
57+
- [Installation Details](../../getting-started/installation.md)
58+
Detailed information about the environment Portfolio Performance runs in (operating system, Java and Eclipse components, log file paths, etc.)
3059

31-
[JsonPath](https://github.com/json-path/JsonPath): JsonPath is a query language for JSON. It allows to select and extract a sub-section from a JSON document using a simple syntax that is similar to XPath for XML.
60+
---
3261

33-
[D3.js](https://d3js.org/): D3.js is an abbreviation for Data-Driven Documents and is a JavaScript library to work on data visualization e.g. graphs.
62+
## Key Software Components & Libraries
3463

35-
[XStream](https://github.com/x-stream/xstream): A Java library that allows you to serialize and deserialize Java objects to and from XML or JSON.
64+
Portfolio Performance leverages a robust set of open-source libraries and frameworks to deliver its features, ensure cross-platform compatibility, and provide a native user experience:
3665

37-
[OpenJDK](https://openjdk.org/): Running a Java program on for example a Windows machine requires that the Java Development Kit (JDK) is installed on that computer. Portfolio Performance uses the JDK provided by Azul.com.
66+
- **[Eclipse Foundation](https://www.eclipse.org/)**
67+
The backbone development platform for Portfolio Performance. Eclipse provides the **Integrated Development Environment (IDE)** and the **Standard Widget Toolkit (SWT)**, a GUI toolkit used to create native-looking graphical interfaces across platforms. SWT enables rendering components that feel consistent on Windows, Linux, and macOS by using the underlying OS widgets.
3868

39-
## Code Contributors
69+
- **[Apache Software Foundation](https://apache.org/)**
70+
Provides multiple foundational libraries. For example:
4071

41-
A link to the Github pages of each of the 159 contributors is given. A graphical overview of all contributions from 2012 till today can be found at [Github](https://github.com/portfolio-performance/portfolio/graphs/contributors).
72+
- PDF parsing and metadata extraction (allowing Portfolio Performance to handle PDFs for reports or document processing).
73+
- HTTP client libraries that manage network communication, including requests to online price data providers and Portfolio Report services.
4274

43-
## Translators
75+
- **[SWT Chart Project](https://github.com/eclipse/swtchart/wiki)**
76+
Extends SWT with rich charting capabilities. Portfolio Performance uses it to render line charts, pie charts, and other visual financial data representations, ensuring interactive and high-quality graphics.
4477

45-
Portfolio Performance has been translated into Spanish, Dutch, Portuguese, Brazilian Portuguese, French, Italian, Czech, Russian, Slovak, Polish, Chinese (simplified), Chinese (traditional), and Danish.
78+
- **[Tree Map Library](https://github.com/smurf667/treemaplib)**
79+
Implements treemap visualizations, a space-efficient way to represent hierarchical data with nested rectangles. Used notably in the Taxonomies menu to visualize portfolio asset distribution and classifications.
4680

47-
## Writers
48-
The two main sources of documentation for the program are the Forum ([German](https://forum.portfolio-performance.info/c/deutsch/10) - [English](https://forum.portfolio-performance.info/c/english/10)) and the Handbook ([German](https://help.portfolio-performance.info/de/) - [English](https://help.portfolio-performance.info/en/)).
81+
- **[jsoup Java HTML Parser](https://jsoup.org/)**
82+
A powerful, user-friendly HTML and XML parser library. Portfolio Performance uses jsoup to scrape historical price data and other relevant information from financial websites by parsing real-world web pages, even if they are poorly formatted.
4983

50-
## Installation Details
84+
- **[JSON.simple](https://github.com/fangyidong/json-simple)**
85+
A lightweight Java toolkit to encode and decode JSON text. Essential for handling data downloads from JSON APIs, such as retrieving historical price feeds and other online data sources.
86+
87+
- **[Protocol Buffers (Protobuf)](https://github.com/protocolbuffers/protobuf)**
88+
Google's efficient, language- and platform-neutral serialization mechanism. Portfolio Performance uses protobuf to convert the portfolio’s XML-based data structures into optimized Java objects for faster access and manipulation.
89+
90+
- **[Guava](https://github.com/google/guava)**
91+
Google's core Java libraries extension. Guava provides immutable collections, caching utilities, advanced concurrency libraries, and other utilities that make the codebase more robust and developer-friendly.
92+
93+
- **[JsonPath](https://github.com/json-path/JsonPath)**
94+
A query language for JSON, inspired by XPath for XML. Portfolio Performance uses JsonPath to extract specific pieces of information efficiently from large JSON documents.
95+
96+
- **[D3.js](https://d3js.org/)**
97+
Although primarily a JavaScript library for creating dynamic, interactive data visualizations on the web, D3.js is used within Portfolio Performance's reporting components (e.g., Portfolio Report) to generate rich, web-based charts and graphs embedded in the app.
98+
99+
- **[XStream](https://github.com/x-stream/xstream)**
100+
Serializes and deserializes Java objects to XML and JSON formats. This library helps Portfolio Performance persist and load complex portfolio data structures seamlessly.
101+
102+
- **[OpenJDK](https://openjdk.org/)**
103+
The open-source Java Development Kit required to run Portfolio Performance. The recommended builds come from [Azul Zulu](https://www.azul.com/downloads/?package=jdk#zulu), ensuring stability and long-term support across platforms.
104+
105+
---
51106

52-
Clicking on this tab will generate a very long and detailed description of the environment Portfolio Performance is running in (OS, Java and Eclipse components, paths to log-files, ...).
107+
## Contributors
53108

109+
Portfolio Performance is developed and maintained by a large, worldwide community of contributors. Hundreds of developers from around the globe continuously improve the software.
110+
A full overview of contributors and their activity since 2012 is available on the [GitHub contributors graph](https://github.com/portfolio-performance/portfolio/graphs/contributors).
54111

112+
Figure: Contributors {class="pp-figure"}
55113

114+
![Contributors](./images/commits-over-time.png)
56115

116+
---
117+
118+
## Translations
119+
120+
Portfolio Performance is localized into many languages including but not limited to:
121+
Spanish, Dutch, Portuguese, Brazilian Portuguese, French, Italian, Czech, Russian, Slovak, Polish, Simplified Chinese, Traditional Chinese, Danish, and many more.
122+
123+
You can contribute or join the translation effort via [Join the POEditor Project](https://poeditor.com/join/project?hash=4lYKLpEWOY).
124+
125+
---
126+
127+
## Documentation Authors
57128

129+
The primary sources of documentation are:
58130

131+
- **Forum:** [German](https://forum.portfolio-performance.info/c/deutsch/10) | [English](https://forum.portfolio-performance.info/c/english/16)
132+
- **Handbook:** [German](https://help.portfolio-performance.info/de/) | [English](https://help.portfolio-performance.info/en/)
59133

134+
---
135+
136+
## Installation Details
137+
138+
The **Installation Details** tab provides a comprehensive report about the environment Portfolio Performance is running in, including:
139+
Operating system details, Java and Eclipse components versions, configuration paths, and locations of log files.
140+
141+
---
16.1 KB
Loading
29.3 KB
Loading

0 commit comments

Comments
 (0)