Sinar / sinarngo

Sinar NGO is a set of resuable Plone components to build NGO website with integrated knowledge management and MEL features
0 stars 0 forks source link

Review and test out git based documentation system for Sinar NGOs #27

Open kaerumy opened 1 year ago

samqi commented 1 year ago

docs

samqi commented 1 year ago

Had tested and stored review elsewhere, pasting here for review.

  1. github project wiki Home Is already git based (see bottom right) No template features

  2. readthedocs

  3. gitbook

    • gui based markdown generated is on gitbooks Web UI
    • team collaboration requires paid service
    • used by civic tech such as civic switchboard
    • also see the newer comment for more info

For above, can see this comparison of ReadTheDocs vs Gitbooks.io

  1. other SSG with github.io pages

There are several Python-based static site generators that work with Markdown. One of the most popular is Pelican. Here's a brief overview:

1. Pelican

If you are comfortable with Python and want something other than MkDocs, Pelican is an excellent choice due to its flexibility and active community.

2. Lektor

3. Nikola

samqi commented 1 year ago

Basic structure and workflow of ReadTheDocs (RTD) and MkDocs for generating Git-based site documentation.

  1. ReadTheDocs (RTD)

    +---------------------------------------------+
    |               Your Git Repository            |
    |   +---------------------------------------+  |
    |   |     .rst (reStructuredText) Files     |  |
    |   +---------------------------------------+  |
    +---------------------------------------------+
                   |
                   | Push/Update
                   |
                   v
    +---------------------------------------------+
    |            ReadTheDocs Platform             |
    |   +-------------------+    +-------------+   |
    |   | Sphinx Generator  |-->|  HTML Site  |   |
    |   +-------------------+    +-------------+   |
    +---------------------------------------------+
                   |
                   | Hosted
                   |
                   v
    +---------------------------------------------+
    |             ReadTheDocs Web UI              |
    +---------------------------------------------+

    Explanation:

    • You write your documentation in reStructuredText (.rst) format and commit them to your Git repository.
    • When you push or update your documentation, RTD automatically detects these changes.
    • ReadTheDocs uses Sphinx to generate an HTML site from your .rst files.
    • The generated documentation is then made available via the ReadTheDocs web UI.
  2. MkDocs

    +---------------------------------------------+
    |               Your Git Repository            |
    |   +---------------------------------------+  |
    |   |          .md (Markdown) Files         |  |
    |   +---------------------------------------+  |
    +---------------------------------------------+
                   |
                   | Push/Update
                   |
                   v
    +---------------------------------------------+
    |                 MkDocs Tool                 |
    |   +-------------------+    +-------------+   |
    |   | MkDocs Generator  |-->|  HTML Site  |   |
    |   +-------------------+    +-------------+   |
    +---------------------------------------------+
                   |
                   | Hosted (Optionally on RTD or other platforms)
                   |
                   v
    +---------------------------------------------+
    |             Web UI (e.g., GitHub Pages, RTD)   |
    +---------------------------------------------+

    Explanation:

    • You write your documentation in Markdown (.md) format and commit them to your Git repository.
    • Upon pushing or updating your documentation, you use the MkDocs tool to generate an HTML site.
    • The generated site can then be hosted on platforms like ReadTheDocs, GitHub Pages, or any other server.

Both RTD and MkDocs are tools to generate static site documentation from source files. While RTD traditionally uses Sphinx and reStructuredText, MkDocs uses its generator and Markdown. Both can be integrated with version control systems (like Git) to automate the generation and deployment of updated documentation.

samqi commented 1 year ago

GitBook allows for documentation generation and hosting, but it has its distinct flow and user interface. Here's a block diagram representation of how GitBook works for generating Git-based site documentation:

+---------------------------------------------+
|               Your Git Repository            |
|   +---------------------------------------+  |
|   |          .md (Markdown) Files         |  |
|   +---------------------------------------+  |
|   +---------------------------------------+  |
|   |       Additional Assets (Images, etc.)|  |
|   +---------------------------------------+  |
+---------------------------------------------+
                   |
                   | Sync (Webhooks/Integrations)
                   |
                   v
+---------------------------------------------+
|                GitBook Platform              |
|   +---------------------------------------+  |
|   |       GitBook Editor & Interface      |  |
|   +---------------------------------------+  |
|   +-------------------+    +-------------+   |
|   | GitBook Generator |-->|  HTML Site  |   |
|   +-------------------+    +-------------+   |
+---------------------------------------------+
                   |
                   | Hosted & Publicly Accessible
                   |
                   v
+---------------------------------------------+
|                GitBook Web UI                |
+---------------------------------------------+

Explanation:

With GitBook, the advantage is the seamless integration of a Git workflow with a rich, web-based editing experience. It merges the strengths of version control and a user-friendly documentation platform.


Many civic tech has reduced the usage of Gitbook since 2016/17 once they changed the business model and linitations to the free versions.

samqi commented 11 months ago