Skip to content

Instantly share code, notes, and snippets.

@nilshoerrmann
Last active December 21, 2015 05:59
Show Gist options
  • Save nilshoerrmann/6260980 to your computer and use it in GitHub Desktop.
Save nilshoerrmann/6260980 to your computer and use it in GitHub Desktop.
Ideas for updating Documenter for Symphony, see https://github.com/symphonists/documenter

Storing Documentation

Documenter should not longer store documentation in the database but in plain Markdown text files on the server in the workspace folder. This way, it would be possible to easily share texts between installs and to track changes using Git.

Showing Documentation

In order to keep things simple, documentation should be converted from Markdown to HTML on the fly. This will remove the need to keep server and database in sync. To reduce page load, we could do the following instead:

  • Documenter should only add references to the actual files on the server when loading a backend page.
  • Each of these reference should carry a last modified timestamp of the server file.
  • Documenter should load these files using AJAX as soon a the user opens the documentation drawer.
  • Documenter should store the result for later use in the browsers localStorage.
  • Documenter should only update the localStorage, if the reference's timestamp changed.

User Types

It should be possible to limit access to the documentation based on the user types author, manager and developer. This could be a simple multiple select box or tag list field.

Default Symphony Documentation

There should be two general Documenter preferences:

  • "Enable default Symphony documentation" and
  • "Enable developer Symphony documentation"

The first option should load the default Symphony documentation for the current backend page, e. g. the documentation how to use and create pages, see http://www.getsymphony.com/learn/concepts/.

The second optoin should load and display the API documentation for the current backend page, e. g. when viewing the pages area it should display the documentation for the used classes and which delegates are available to the programmer, see http://www.getsymphony.com/learn/api/2.3.3/.

@nilshoerrmann
Copy link
Author

@brendo
Copy link

brendo commented Aug 27, 2013

Do you need a hand making this happen?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment