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

I corrected errors and made an update to api-only.md #4108

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

Conversation

Dev-Liz
Copy link

@Dev-Liz Dev-Liz commented Oct 13, 2022

No description provided.

@welcome
Copy link

welcome bot commented Oct 13, 2022

Thanks for submitting your first pull request! You are awesome! 🤗

If you haven't done so already, check out Jupyter's Code of Conduct. Also, please make sure you followed the pull request template, as this will help us review your contribution more quickly.
welcome
You can meet the other Jovyans by joining our Discourse forum. There is also a intro thread there where you can stop by and say Hi! 👋

Welcome to the Jupyter community! 🎉

@Dev-Liz
Copy link
Author

Dev-Liz commented Oct 17, 2022

Hello @Mackenzie-OO7, I see my PR is labeled outdated. What do I do to improve it, please??

@Mackenzie-OO7
Copy link
Contributor

Hello @Mackenzie-OO7, I see my PR is labeled outdated. What do I do to improve it, please??

Hi, that just means you've made changes to the lines reviewed. You should click on the "Resolve conversation" button

@Dev-Liz
Copy link
Author

Dev-Liz commented Oct 17, 2022

Oh, alright. Thank you so much!

@Dev-Liz
Copy link
Author

Dev-Liz commented Oct 17, 2022

@Mackenzie-OO7 did you see the new commit please, is it fit for a merge now? do I need to do anything more to improve it, please??

@Mackenzie-OO7
Copy link
Contributor

@Mackenzie-OO7 did you see the new commit please, is it fit for a merge now? do I need to do anything more to improve it, please??

So, I'm seeing ">>>>>head" and I'm not sure what it means, were you trying to make a heading with markdown? Plus, there are still instances of "JupyterHub" spelled wrongly

@minrk minrk added documentation outreachy-dec22 Issues and tasks related to the Dec 22 cohort of Outreachy needs: upstream action labels Oct 20, 2022
@@ -1,60 +1,47 @@
(api-only)=

# Deploying JupyterHub in "API only mode"
# Deploying JupyterHub In "API Only Mode"
Copy link
Member

Choose a reason for hiding this comment

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

Let's keep headings formatted as "Sentence case" not "Title Case" (here and below)

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
# Deploying JupyterHub In "API Only Mode"
# Deploying JupyterHub in "API only mode"

For convenience, JupyterHub also ships with a _basic_ web UI built using that REST API.
The basic web UI enables users to click a button to quickly start and stop their servers,
and it lets admins perform some basic user and server management tasks.
Jupyterhub, as a service for deploying and managing Jupyter servers for users, exposes its functionality, _primarily_ through a [REST API](rest).
Copy link
Member

Choose a reason for hiding this comment

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

We capitalize the H in JupyterHub.

Also, the as construction no longer works this way:

Suggested change
Jupyterhub, as a service for deploying and managing Jupyter servers for users, exposes its functionality, _primarily_ through a [REST API](rest).
JupyterHub is a service for deploying and managing Jupyter servers for users exposes its functionality, _primarily_ through a [REST API](rest).

In other words, no UI pages should rely on information not available via the REST API.
Previously, some admin UI functionality could only be achieved via admin pages,
such as paginated requests.
For convenience, Jupyterhub also ships a basic web UI, built on the REST API. The basic web UI enables users to easily interact with their servers. E.g by clicking on the button to quickly start or stop their servers. It also enable admins to perform basic user and server mananagement tasks.
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
For convenience, Jupyterhub also ships a basic web UI, built on the REST API. The basic web UI enables users to easily interact with their servers. E.g by clicking on the button to quickly start or stop their servers. It also enable admins to perform basic user and server mananagement tasks.
For convenience, Jupyterhub also ships a basic web UI, built on the REST API.
The basic web UI enables users to easily interact with their servers,
for example by clicking on buttons to quickly start or stop their servers.
The web UI also enable admins to perform basic user and server management tasks.

but this has some limited scope to what can be customized.
Adding some content and messages to existing pages is well supported,
but changing the page flow and what pages are available are beyond the scope of what is customizable.
Previously, one could only achieve some admin UI functionalities through admin pages, such as paginated requests. The REST API provides additional functionality beyond what is available in the basic web UI. With Jupyterhub 2.0, the UI will always be composed from the REST API. This means that information on the pages will not be reliable, unless made available through the API.
Copy link
Member

Choose a reason for hiding this comment

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

I don't think this quite conveys what we want it to anymore.

The key points to hit:

  • JupyterHub is built "API first" so everything you can do can be done via the API
  • The web UI will only ever expose a subset of the API
  • The web UI is built on the REST API, so there's nothing you can do in the web UI that you can't do in the REST API.

I think we can drop the mention of what's changed in 2.0, since that's a while ago now.


## Rich UI customization with REST API based apps
## Why Rest API Only?
Copy link
Member

Choose a reason for hiding this comment

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

REST is an acronym, but perhaps this isn't quite the question we want to ask. How about:

Suggested change
## Why Rest API Only?
## Why would I want to deploy JupyterHub with only its REST API?


One example of such an application is [BinderHub][], which powers https://mybinder.org,
and motivates many of these changes.
The JupyterHub UI can be customized through extensive HTML [templates](templates), but the scope at which it can be customized, is limited. It supports adding of content and messages to existing pages, but the page flow and available pages, cannot be customized.
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
The JupyterHub UI can be customized through extensive HTML [templates](templates), but the scope at which it can be customized, is limited. It supports adding of content and messages to existing pages, but the page flow and available pages, cannot be customized.
The JupyterHub UI can be customized through extensible HTML [templates](templates), but the scope at which it can be customized, is limited.
Custom templates support adding content and messages to existing pages, but the page flow and which pages are available cannot be customized.

users are presented with a form to specify what environment they would like to launch:
### Rich UI Customization with REST API based Apps

JupyterHub is primarily used as an API for managing Jupyter servers for other Jupyter-based applicatons that might want to present a different User Experience. However, With an option of a fully customized experience available, you can now disable the hub UI and easily use your own pages, together with the JupyterHub Rest API, to build your own web applications to serve your users; relying on the hub only as an API for managing Users and Servers.
Copy link
Member

Choose a reason for hiding this comment

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

This is no longer accurate. It is not primarily used as an API. This is an increasingly common case, but not the primary case.

JupyterHub's handling of this request shows this page,
telling you that the server is not running,
with a button to launch it again:
JupyterHub's handling of this request shows this page, telling you that the server is not running, with a button to launch it again:
Copy link
Member

Choose a reason for hiding this comment

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

Most of the changes here are to re-wrap text, which isn't an improvement. The lines are wrapped on clauses or sentences.

We don't enforce that because I don't like to enforce any style that can't be autoformatted, but I'd prefer to avoid pure style changes that remove the preferred style.

@minrk
Copy link
Member

minrk commented Nov 24, 2022

Thanks for your contribution!

This PR still has outstanding review that needs to be addressed before it can be merged.

If you don’t plan to finish this PR since the outreachy contribution period has ended, let us know and we will take over the remaining issues. If we don’t hear from you, we may close the PR. Don’t worry, PRs can always be reopened!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation needs: upstream action outreachy-dec22 Issues and tasks related to the Dec 22 cohort of Outreachy
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants