The following enhancements are being considered. Comments are welcome.
The CSS styling for tables and lists is general but quite verbose. Add a simple aliasing mechanism that allows a presentation developer to use a single alias class for a frequently used combination of list or table classes. Perhaps the aliases could be specified in a JSON file. The ES6 Element.classList methods should be used.
Difficulty: not sure
The handling of external SVG definitions and CSS files suffers from having relative paths interpreted relative to the main document rather than the SVG document. Define a mechanism for specifying these files relative to the SVG document. We can use "data-*" attributes to specify the external files, but we need JavaScript support to bring in the content of the files.
Difficulty: probably easy
Add a mechanism that allows a presentation developer to use JSON files to add table and list elements to a presentation. It would be easy to create a Java library to support creating a JSON file from a list of objects. The library should use Java generic classes.
For a list presentation element the support library could use a class whose constructor has one parameter for the list and a second function parameter to extract a string from each list item.
For a table presentation element the same idea could be used, but the second parameter would have to be expanded to a varargs column specifier list. Each column specifier is an object that specifies a column header and a function to extract a column value from each list item.
It would also be useful to have similar libraries for languages other than Java. I'll leave that to others. They can use the Java version as a guide.
Difficulty: probably easy
In addition to list and table progressions, it would be nice to have a more general mechanism that gives the presentation developer more control. It could use something like progression start tags (class="progression-start"). It would have to be upward compatible with the existing progression mechanism.
Difficulty: the idea needs to be refined
The intention of side panes is to hold complex content, such as a diagram or a code file, that cannot be fully presented in a single presentation pane. The complex content can be set up as a side pane in a section with a menu. Each menu item discusses a different aspect of the complex content. The complex content remains visible for all of the menu items in the menu.
It would be helpful if there was a signalling mechanism from the menu to the diagram or code file that scrolled the complex content and/or grayed out parts that are not relevant to the current menu item.
Difficulty: could be difficult, but there are mechanisms available. There is a DOM Scollable interface for scrolling. Graying out can be accomplished in SVG diagrams with an overlay. The latter has been done, but not under control from the menu.
For conference presentations it would be nice to be able to initially display a title page. This would also be nice for classroom presentations. If the title page included the jsLib imports it would also hide the module fetch time.
Difficulty: probably easy
Work on the limited.js file to support making exams and other documents needed by people who teach technical subjects. Completing the Java Graphics project is an important part of the teachers office software. Also it is important to have a program for developing web presentations.
Difficulty: the idea needs to be refined and is open ended.