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

Bundle VC-API and provide UX on API Docs #270

Merged
merged 11 commits into from
Mar 20, 2022

Conversation

mprorock
Copy link
Contributor

bundles up the openapi specs, and provides the ability for developers to cleanly generate stubs from a variety of tools for:

  • all api functions by role (holder / verifier / issuer)
  • any specific role

additionally provides the ability for developers to use their doc interface of choice as raw swagger can be painful.

NB: several rooms for improvement areas, such as proper tag names, etc for the docs, but those should be discussed as a group

Copy link
Contributor

@msporny msporny left a comment

Choose a reason for hiding this comment

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

Overall, +1 to the direction of this PR and looking forward to merging it in.

Two concrete change suggestions:

  • We shouldn't be checking in files that are auto-generated and/or duplicate content we already have - everything in /api/* seems to be auto-generated as a part of the build process, can we get rid of those and push the generation to build time/the workflows script?
  • Same for package-lock.json file -- this isn't production software yet, no need to lock versions in -- we want builds to break to keep pace w/ latest packages... we can lock this in when this stuff goes to REC.

We should link to the auto-generated docs from the main spec header, like we do in DID Core -- see "Related Documents": https://www.w3.org/TR/did-core/

@mprorock
Copy link
Contributor Author

  • We shouldn't be checking in files that are auto-generated and/or duplicate content we already have - everything in /api/* seems to be auto-generated as a part of the build process, can we get rid of those and push the generation to build time/the workflows script?
  • Same for package-lock.json file -- this isn't production software yet, no need to lock versions in -- we want builds to break to keep pace w/ latest packages... we can lock this in when this stuff goes to REC.

+1 to both of these - wanted to at least give folks the ability to see the generated in the event they aren't used to bundling multiple spec definitions

have pushed appropriate changes to gitignore, etc and folks can ref commits prior to this comment if they want to see or pull down a generated file to test

@mprorock mprorock requested a review from msporny March 13, 2022 18:17
@mprorock
Copy link
Contributor Author

We should link to the auto-generated docs from the main spec header, like we do in DID Core -- see "Related Documents": https://www.w3.org/TR/did-core/

yep - that is definitely the idea - I think lets get this in first, then get a CI PR that handles builds and push to gh-pages the way we want it (i.e. deploy both spec itself as well as api docs) - then adjust README and spec to point correctly to final locations

Comment on lines +86 to +89
- `api/vc-api.yaml` a master file with all specifications rolled into one
- `api/bundles/issuer.yml` issuer endpoints bundled with no external refs
- `api/bundles/verifier.yml` verifier endpoints bundled with no external refs
- `api/bundles/holder.yml` holder endpoints bundled with no external refs
Copy link
Collaborator

Choose a reason for hiding this comment

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

Suggested change
- `api/vc-api.yaml` a master file with all specifications rolled into one
- `api/bundles/issuer.yml` issuer endpoints bundled with no external refs
- `api/bundles/verifier.yml` verifier endpoints bundled with no external refs
- `api/bundles/holder.yml` holder endpoints bundled with no external refs
- `api/vc-api.yaml` a master file with all specifications rolled into one
- `api/bundles/issuer.yml` issuer endpoints bundled with no external refs
- `api/bundles/verifier.yml` verifier endpoints bundled with no external refs
- `api/bundles/holder.yml` holder endpoints bundled with no external refs

Copy link
Contributor

Choose a reason for hiding this comment

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

I don't have the ability to accept this change (don't have access to @mprorock's repo). I will put this change in right after I merge.

Copy link
Contributor

Choose a reason for hiding this comment

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

Implemented in 9b001e6.

@msporny msporny merged commit 00d1f96 into w3c-ccg:main Mar 20, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

7 participants