Skip to content
This repository has been archived by the owner on Apr 24, 2024. It is now read-only.

decision: frontend documentation #161

Merged
merged 9 commits into from
Apr 10, 2023
Merged

Conversation

Bushuo
Copy link
Contributor

@Bushuo Bushuo commented Mar 23, 2023

Closes #128

Basics

  • Details of what you changed are in commit messages
    (first line should have module: short statement syntax)
  • References to issues, e.g. close #X, are in the commit messages.
  • The buildserver is happy.
  • The PR is rebased with current master.

Checklist

  • I added unit tests for my code
  • I fully described what my PR does in the documentation
    (not in the PR description)
  • I fixed all affected documentation
  • I fixed all affected decisions
  • I added code comments, logging, and assertions as appropriate
  • I mentioned every code not directly written by me in reuse syntax

Review

@Bushuo Bushuo added the please review Review by unspecified person requested label Mar 23, 2023
@Bushuo Bushuo self-assigned this Mar 23, 2023
@Bushuo
Copy link
Contributor Author

Bushuo commented Mar 23, 2023

I could include screenshots of how the embedded documentation looks in my local setup, if you want to see :)

Copy link
Contributor

@buenaflor buenaflor left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍

Copy link
Contributor

@markus2330 markus2330 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Very good first version. I personally would split this into two decisions and link them to each other (or even three to decide about testing tool).

doc/decisions/frontend_documentation.md Outdated Show resolved Hide resolved
doc/decisions/frontend_documentation.md Outdated Show resolved Hide resolved
doc/decisions/frontend_documentation.md Outdated Show resolved Hide resolved

1. With a good and beautiful documentation tool, developers are more likely to use and maintain it.
2. With a documentation tool that enables the viewing of react components, the code quality is improved. Presentation components, should not contain logic with side effects.
Hooks should be used outside of presentation components, with props passed into them.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This should be in general guidelines about frontend (architecture), and we should like from here to this document.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@markus2330 I added it to contrib/frontend.

doc/decisions/frontend_documentation.md Outdated Show resolved Hide resolved
doc/decisions/frontend_documentation.md Outdated Show resolved Hide resolved
doc/decisions/frontend_documentation.md Outdated Show resolved Hide resolved
doc/decisions/frontend_documentation.md Outdated Show resolved Hide resolved
doc/decisions/frontend_documentation.md Show resolved Hide resolved
## Decision
We will use [Storybook](https://storybook.js.org/) to enable a project wide component overview and style-guide.
It has support for `MDX`, a format that enables embeddable components in markdown.
It has support for automated testing via `Jest` and `Playwright`.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe we can also immediately decide on that?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

(But maybe in a separate PR because it seems like we already have consensus about the rest.)

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is still open. Can you please comment on #39.

@markus2330
Copy link
Contributor

Yes, if you already created screenshots it would be nice to see.

@Bushuo
Copy link
Contributor Author

Bushuo commented Mar 27, 2023

Hi @markus2330

Yes, if you already created screenshots it would be nice to see.

These are two screenshots from my local setup. I changed how the typedoc-plugin-markdown renders the markdown files, such that they can be recognized by storybook directly. There is still some work to do, to make the linking and hierarchical structure of the generated files work. I guess it is a good start.
README_md
Enumeration_Quality_md

@Bushuo
Copy link
Contributor Author

Bushuo commented Mar 28, 2023

The local storybook setup, I have been working on, now displays all generated typedoc documentation files, links between them, and search 🎉🎉
I have the plugin in a fork.
Screenshot 2023-03-28 at 23 51 36

@markus2330
Copy link
Contributor

Great to see it! Please fix the remaining small things so that we can get this merged!

@Bushuo Bushuo force-pushed the decision/frontend_documentation branch from ff1f716 to 1820079 Compare April 1, 2023 20:06
Copy link
Contributor

@markus2330 markus2330 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great job, a few minor last suggestions. Please (automatically) reformat this Markdown file so that it is consistent, see #159. Please tell everyone about this decision next meeting.

doc/decisions/frontend_documentation.md Outdated Show resolved Hide resolved
doc/decisions/frontend_documentation.md Outdated Show resolved Hide resolved
doc/decisions/frontend_documentation.md Outdated Show resolved Hide resolved
doc/decisions/frontend_documentation.md Outdated Show resolved Hide resolved
doc/decisions/frontend_documentation.md Outdated Show resolved Hide resolved
doc/decisions/frontend_documentation.md Outdated Show resolved Hide resolved
## Decision
We will use [Storybook](https://storybook.js.org/) to enable a project wide component overview and style-guide.
It has support for `MDX`, a format that enables embeddable components in markdown.
It has support for automated testing via `Jest` and `Playwright`.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is still open. Can you please comment on #39.

```

### How to structure a storybook
https://storybook.js.org/blog/structuring-your-storybook/
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This should then also be in the main documentation.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I added it to the Helpful Links section

@markus2330 markus2330 merged commit 693fb6d into master Apr 10, 2023
@markus2330
Copy link
Contributor

Great job! Looking forward to see this realized.

@markus2330 markus2330 deleted the decision/frontend_documentation branch April 10, 2023 10:10
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
please review Review by unspecified person requested
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Write decision about Frontend Documentation system
6 participants