I think this is a great idea!

Some projects use a separate wiki, but sometimes it backfires when domain name 
changes or wiki software gets updated.

Making certain parts of documentation such as these notes, a part of the code 
repository not only eliminates these failure modes, but provides additional 
benefit of doc review along with the code review, documentation in sync with 
the code, and ability to diff the changes.

Github markdown is a fairly new feature, sometimes a bit complicated to use 
(tables), but it does get rendered by Github and some IDEs (Eclipse, for 
example).

I second John's suggestion, but also I am curious as to what other people think.

-andy



From: openjfx-dev <openjfx-dev-r...@openjdk.org> on behalf of John Hendrikx 
<john.hendr...@gmail.com>
Date: Friday, May 12, 2023 at 12:02
To: openjfx-dev@openjdk.org <openjfx-dev@openjdk.org>
Subject: Developer documentation
In PR https://github.com/openjdk/jfx/pull/910 a lot of "new" insights
were gained in the snapping logic.  Michael Strauss suggested
documenting this, and I thought we may as well discuss this on the
mailing list instead of continuing the discussion in that PR.

In my normal line of work, I usually encourage projects to include
developer documentation as part of the Git repository. This allows any
developer to access and modify the documentation easily, and allows you
to keep documentation in sync with relevant commits (and one can ask
developers to do so as part of the PR).

The documentation is provided in markdown format and is usually stored
in a /doc folder. If there are multiple modules, there can be
specialized doc folders per module with a top level doc folder which
contains an index.md linking all the docs together, and containing
documentation that is not module specific.

The documentation is intended for developers only, not for users of
JavaFX, and hence does not need to be published. Markdown files can
either be read directly in your IDE of choice or online via GitHub/GitLab.

The build documentation may be a good candidate to place there as well.

So, my suggestion would be:

- Create a top level /doc folder, and create module level /doc folders
as needed when relevant documentation is written
- In each /doc folder there is an index.md file that links to all
documentation in that folder
- A higher level index.md also contains links to child indexes
- Consider moving the build and any onboarding documentation there
- The top level README.md should have a link to /doc/index.md
- Use only GitHub supported markdown features

--John


Reply via email to