Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Documentation page of the Spezi Ecosystem #118

Open
wants to merge 8 commits into
base: main
Choose a base branch
from

Conversation

milanagm
Copy link

Overview of the Spezial Ecosystem

→ prime modules with links to their documentation and use cases

♻️ Current situation & Problem

I worked on the first task of this ticket: #82

⚙️ Release Notes

This documentation is not changing any public interfaces nor any new features.

📚 Documentation

Please ensure that you properly document any additions in conformance to Spezi Documentation Guide.
You can use this section to describe your solution, but we encourage contributors to document your reasoning and changes using in-line documentation.
Not relevant for this PR.

✅ Testing

Please ensure that the PR meets the testing requirements set by CodeCov and that new functionality is appropriately tested.
This section describes important information about the tests and why some elements might not be testable.
Not relevant for this PR.

📝 Code of Conduct & Contributing Guidelines

By submitting creating this pull request, you agree to follow our Code of Conduct and Contributing Guidelines:

Copy link
Member

@PSchmiedmayer PSchmiedmayer left a comment

Choose a reason for hiding this comment

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

Thank you for your first contribution @milanagm!

Happy to see better and more clearer documentation around Spezi and the functionalities we provide. I provided a few suggestions thought the PR to point us to a few improvements.

I would generally aim to:

  • Use some more visual & links to the relevant documentation/code examples to guide them right to the interesting parts of the relevant modules.
  • Ensure that we have a good mixture of written out text & elements that make it a good introduction to newcomers to the ecosystem.
  • Ensure that we make this maintainable & extensible in the future by not being too overly specific around version numbers and elements that might change but focus on the high-level concepts of reach module.
  • Ensure that we have a general introduction at the beginning about Spezi & the ecosystem to answer some immediate questions people might have & those that you had at the very beginning.

@@ -24,9 +24,13 @@ Unfortunately, DocC currently does not support dark mode images: https://github.
-->
@Row {
@Column {
@Image(source: "https://raw.githubusercontent.com/StanfordSpezi/SpeziOnboarding/main/Sources/SpeziOnboarding/SpeziOnboarding.docc/Resources/ConsentView.png", alt: "Screenshot displaying the UI of the onboarding module.") {
@Image(source: "https://raw.githubusercontent.com/StanfordSpezi/SpeziOnboarding/main/Sources/SpeziOnboarding/SpeziOnboardistong.docc/Resources/ConsentView.png", alt: "Screenshot displaying the UI of the onboarding module.") {
Copy link
Member

Choose a reason for hiding this comment

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

Might be a typo here; probably shouldn't be included in the diff.

Comment on lines 30 to 33




Copy link
Member

Choose a reason for hiding this comment

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

Suggested change

Copy link
Member

Choose a reason for hiding this comment

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

We should generally use the same naming scheme as used for the other files.

SPDX-License-Identifier: MIT
-->

Discover the core modules available in the Spezi framework and understand their use cases.
Copy link
Member

Choose a reason for hiding this comment

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

We should aim to unify the usage of ecosystem & framework. I suspect that most of the elements are relating to the ecosystem? Maybe we phrase it more positively, ideally something like: "... and how you can use it to build your applications."

Copy link
Author

Choose a reason for hiding this comment

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

I adjusted the sentence but i am a bit unsure about your explanation.

Comment on lines 18 to 26
### Spezi Onboarding
- **[SpeziOnboarding](https://github.com/StanfordSpezi/SpeziOnboarding)**
- [SpeziOnboarding Documentation](https://swiftpackageindex.com/StanfordSpezi/SpeziOnboarding/1.2.2/documentation/spezionboarding)
- Use Case: This module handles user onboarding and initial registration flows.
- Features:
- Welcome screen
- Sequential onboarding screens
- Consent screen for users to read and agree to documents
- This module is included and demonstrated in the Template Application.
Copy link
Member

Choose a reason for hiding this comment

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

I am wondering if we should use a more visual approach here and ideally also point people to some documentation in the relevant modules, ensuring that we point to some concrete types or relevant documentation articles/overviews in the relevant modules. I would avoid too many bullet points here, maybe only for the key features. Other elements could be transformed into 1-2 liners & some code examples and screenshots or relevant modules.

The initial DocC home page uses the visuals form the other modules to provide a nice overview of the module with one screenshot each. We might want to add tables of 3-4 screenshots from the relevant modules or code examples to highlight the usage of the modules.

I would suggest that we link to a few key types & use cases in the bullet points that detail the features to allow readers to easily jump to a point where they can learn how to implement the relevant feature.


### Spezi Onboarding
- **[SpeziOnboarding](https://github.com/StanfordSpezi/SpeziOnboarding)**
- [SpeziOnboarding Documentation](https://swiftpackageindex.com/StanfordSpezi/SpeziOnboarding/1.2.2/documentation/spezionboarding)
Copy link
Member

Choose a reason for hiding this comment

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

We might want to package these documentation links into nice Tip boxes or something similar that highlights them in the DocC documentation? In addition, I would avoid linking concrete versioned tags, we should always aim to link to the latest documentation (https://swiftpackageindex.com/StanfordSpezi/SpeziOnboarding/1.2.2/documentation/spezionboarding -> https://swiftpackageindex.com/StanfordSpezi/SpeziOnboarding/documentation/spezionboarding). Links without explicit version tags should always point to the latest version.

The Spezi ecosystem provides a collection of interoperable modules designed to accelerate healthcare and research application development. Each module is built to work independently or in combination with others, allowing you to choose the components that best fit your needs.

## Core Modules
Some of the following modules can be tested and interact with using the Template Application: **[SpeziTemplate](https://github.com/StanfordSpezi/SpeziTemplateApplication)**
Copy link
Member

Choose a reason for hiding this comment

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

I would generally suggest embedding links right in the text & flow of the documentation rather then explicitly spelling them out:

Suggested change
Some of the following modules can be tested and interact with using the Template Application: **[SpeziTemplate](https://github.com/StanfordSpezi/SpeziTemplateApplication)**
Some of the following modules can be tested and interact with using the **[Spezi Template Application](https://github.com/StanfordSpezi/SpeziTemplateApplication)**

@@ -87,6 +91,9 @@ You can learn more about modules in the <doc:Module> documentation.

## Topics

### Ecosystem Overview
Copy link
Member

Choose a reason for hiding this comment

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

We shoulda also aim to incorporate some general documentation on how to get started with Spezi & your learnings of embedding yourself in the ecosystem as part of this PR to help people who are new to the ecosystem to help them answer some clarifying questions.

@PSchmiedmayer PSchmiedmayer added the documentation Improvements or additions to documentation label Jan 20, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation
Projects
Status: In Progress
Development

Successfully merging this pull request may close these issues.

2 participants