Skip to content

GSoD 2019 Project Ideas

Mikael Simberg edited this page Apr 12, 2019 · 6 revisions

HPX's existing documentation can be found here. While it's already quite extensive, it has grown organically and is in need of restructuring and heavy editing. We recently moved our documentation to Sphinx for better navigation, but the content remained mostly unchanged. One problem is that the documentation contains a lot of information, which means that beginners can often struggle to find what they're looking for. At the same time, we don't want more advanced users to feel like they can't find what they're looking for.

The HPX documentation is written using reStructuredText and rendered using Sphinx. Familiarity with these is helpful, but not required as reStructuredText is easy to pick up. In addition, since most of HPX is implemented in C++, at least a basic level of familiarity with C++ will be helpful in understanding code examples and concepts explained in the documentation.


Edit and streamline the content of the existing HPX documentation

  • Abstract: The HPX documentation contains a lot of information, however, the content one needs can be hard to find, inconsistent, duplicated, or outdated. The aim of this project is to edit the existing content both in terms of language and structure to make it easier for users to find the essential information quickly.
  • Deliverable: The goal of this project is open-ended, but the technical writer should at least focus on one or two sections of the manual in our documentation. No new content has to be added in this project, but duplicated and inconsistent content should be regrouped and pruned.
  • Mentors: Parsa Amini (parsa%20amini), Mikael Simberg (mikael%20simberg)

Write tutorials based on existing tutorials presentation material

  • Abstract: There are several HPX tutorials (e.g. HPX Workshop at CSCS - 2017) that implement example applications that are useful beginners. Some of these examples (e.g. Fibonacci, 1D Stencil) are included in the HPX documentation, some are not. The objective of this project is to add these tutorials to the HPX documentation.
  • Deliverable: New tutorials in HPX documentation based on existing code and other presentation material
  • Mentors: Parsa Amini (parsa%20amini), Mikael Simberg (mikael%20simberg)

Extend contributor's guide and consolidate content from wiki

  • Abstract: We always appreciate volunteer contributions to HPX but think that the process could be made easier to encourage new contributors. Our contributor's guide should be as straightforward as possible and contain the necessary steps for a new contributor to go from building to testing and submitting a pull request. Currently there exists only minimal information in the "Developer documentation" section of our documentation. In addition, there is scattered information for contributor's in this wiki.
  • Deliverable: A new contributor's guide in our documentation that consolidates the existing information in the documentation and this wiki, as well as expands it if needed with missing information.
  • Mentors: Parsa Amini (parsa%20amini), Mikael Simberg (mikael%20simberg)
Clone this wiki locally
You can’t perform that action at this time.