-
Notifications
You must be signed in to change notification settings - Fork 24
Stubbing out the aep tooling list #238
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
Merged
Merged
Changes from 3 commits
Commits
Show all changes
6 commits
Select commit
Hold shift + click to select a range
84f52c5
Stubbing out the aep tooling list
earth2marsh 9c21362
Cleaning up the adoption CTA
earth2marsh a450a5d
tightening language
earth2marsh c16594d
Apply suggestions from code review
earth2marsh fc6d334
Apply suggestions from code review
toumorokoshi 36c6483
updating repo URLs
toumorokoshi File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,11 +1,16 @@ | ||
| # Adopting AEPs for your company | ||
|
|
||
| Currently, we encourage adoption of AEPs via having your APIs adhere to the | ||
| guidance served at https://aep.dev. | ||
| By adopting the guidelines from the API Enhancement Proposals, you establish a much | ||
| tighter and efficient possibility space. APIs that follow the | ||
| [AEP guidance](https://aep.dev) from the design stage are: | ||
earth2marsh marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
|
|
||
| In the future, we plan to introduce a broader ecosystem of tooling including: | ||
| - More consistent APIs within and across teams, reducing cognitive load for consumers | ||
| - Argue less about API design decisions, saving time thanks to AEPs explar design patterns | ||
earth2marsh marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
|
|
||
| - A forkable repository which allows for internal mirrors and | ||
| organization-specific guidance. | ||
| - Client-side and server-side code generators. | ||
| - Validators to ensure adherence to the specification. | ||
| Having an AEP-compliant API also means benefitting from the AEP ecosystem of tooling, such as: | ||
|
|
||
| - Linters and validators to ensure adherence to the AEP design specification [proto]()/[openapi]() | ||
| - Command line tool that make it easier to work with APIs ([aepcli](https://github.com/aep-dev/aepcli)) | ||
earth2marsh marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
| - Client-side and server-side code generators ([aepc](https://github.com/aep-dev/aepc)) | ||
| - A Terraform provider ([terraform-provider-aep](https://github.com/aep-dev/terraform-provider-aep)) | ||
| - ... and more! Please start a [discussion](https://github.com/aep-dev/aep.dev/discussions) if there is something you wish to see, validate, or prioritize. | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,22 +1,22 @@ | ||
| # Frequently Asked Questions | ||
|
|
||
| ## What is the difference between aep.dev and google.aip.dev? | ||
| ## What are the differences between AEPs and AIPs? | ||
|
|
||
| As aep.dev is derived from [google.aip.dev](https://google.aip.dev), a lot of | ||
| content will be familiar. | ||
| If you are familiar with Google's API Improvement Proposals | ||
| [google.aip.dev](https://google.aip.dev), then much of the | ||
| [API Enhancement Proposals](https://aep.dev) content will be familiar. | ||
|
|
||
| However, aep.dev has significant philosophical differences: | ||
| However, AEPs have notable philosophical differences, including: | ||
|
|
||
| - aep.dev prioritizes broadly applicable design guidance, while google.aip.dev | ||
| prioritizes design guidance this best for Google, such as guidance that is | ||
| backwards-compatible with existing decisions at the company. | ||
| - aep.dev is protocol-agonistic, and considers gRPC and HTTP + JSON as | ||
| first-class protocols for which examples and other content will be authored. | ||
| - google.aip.dev encourages forking the guidance, while aep.dev focuses on a | ||
| set of core specification that should not be forked, paired with a method to | ||
| add organization-specific guidance that does not contradict the | ||
| specification. | ||
| - AEPs prioritize broadly applicable design guidance for any company, while AIPs | ||
| prioritized design guidance specifically for Google (e.g., providing | ||
| backwards-compatibility with prior decisions to meet Gogole-specific needs). | ||
earth2marsh marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
| - AEPs are protocol-agonistic and consider both gRPC and HTTP+JSON as | ||
| first-class protocols for which examples and other content are necessary. | ||
| - AEPs focuses on a core specification that should not be forked, paired with a | ||
earth2marsh marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
| mechanism for optional organization-specific guidance extends the | ||
| specification. (Whereas AIPs encourage forking its guidance outright.) | ||
earth2marsh marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
|
|
||
| aep.dev also has the advantage of hindsight, which makes it possible in some | ||
| cases to provide better guidance than google.aip.dev. (One small example: | ||
| AEPs also have the advantage of hindsight, which makes it possible in some | ||
| cases to provide better guidance. (One small example: | ||
| renaming `page_size` to `max_page_size` for requests to paginated API methods.) | ||
earth2marsh marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.