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

Add API standards #299

Merged
merged 13 commits into from
Mar 4, 2022
Merged

Add API standards #299

merged 13 commits into from
Mar 4, 2022

Conversation

matthinz
Copy link
Contributor

@matthinz matthinz commented Mar 3, 2022

This PR brings in the now-archived 18F API Standards repo into the guide. The new page, called APIs, is (for now) in the Our Approach section.

Things I'd like to do before landing:

  • Find some good example links for APIs demonstrating these practices
  • Incorporate our classification system (SUGGESTION, REQUIREMENT, etc.)

Closes #295

matthinz added 6 commits March 3, 2022 10:02
- Remove old intro
- Remove public domain notice (availble in LICENSE.md)
https://https.cio.gov/ happened since these recommendations were written. We can likely avoid extra detail around things like ciphers and SNI.
Remove outdated references to e.g. JSONP and IE 8.
@matthinz matthinz self-assigned this Mar 3, 2022
@github-actions
Copy link

github-actions bot commented Mar 3, 2022

Pa11y testing results
> [email protected] pa11y-ci:sitemap
> pa11y-ci --sitemap https://engineering.18f.gov/sitemap.xml --sitemap-find https://engineering.18f.gov --sitemap-replace http://localhost:4000 --sitemap-exclude "/*.pdf"

Running Pa11y on 41 URLs:
 > http://localhost:4000/architecture-reviews/ - 0 errors
 > http://localhost:4000/about/ - 0 errors
 > http://localhost:4000/architecture-reviews/data-act-pilot/ - 0 errors
 > http://localhost:4000/accessibility-scanning/ - 0 errors
 > http://localhost:4000/code-review/ - 0 errors
 > http://localhost:4000/books-we-have-read/ - 0 errors
 > http://localhost:4000/architecture-reviews/micro-purchase/ - 0 errors
 > http://localhost:4000/browser-testing/ - 0 errors
 > http://localhost:4000/datastore-selection/ - 0 errors
 > http://localhost:4000/continuous-deployment/ - 0 errors
 > http://localhost:4000/development-environments/ - 0 errors
 > http://localhost:4000/docker/ - 0 errors
 > http://localhost:4000/css/ - 0 errors
 > http://localhost:4000/example-workflows/ - 0 errors
 > http://localhost:4000/frontend/ - 0 errors
 > http://localhost:4000/incident-reports/ - 0 errors
 > http://localhost:4000/ - 0 errors
 > http://localhost:4000/integrations/ - 0 errors
 > http://localhost:4000/incident-reports/cloud-gov/ - 0 errors
 > http://localhost:4000/language-selection/ - 0 errors
 > http://localhost:4000/javascript/ - 0 errors
 > http://localhost:4000/laptop-setup/ - 0 errors
 > http://localhost:4000/license/ - 0 errors
 > http://localhost:4000/markdown/ - 0 errors
 > http://localhost:4000/nodejs/ - 0 errors
 > http://localhost:4000/people/ - 0 errors
 > http://localhost:4000/people/assessment/ - 0 errors
 > http://localhost:4000/python/ - 0 errors
 > http://localhost:4000/project-setup/ - 0 errors
 > http://localhost:4000/release-strategies/ - 0 errors
 > http://localhost:4000/resources/ - 0 errors
 > http://localhost:4000/security/ - 0 errors
 > http://localhost:4000/security/cloud-services/ - 0 errors
 > http://localhost:4000/ruby/ - 0 errors
 > http://localhost:4000/security/content-security-policy/ - 0 errors
 > http://localhost:4000/security/dependency-remediation/ - 0 errors
 > http://localhost:4000/security/incident-response-drills/ - 0 errors
 > http://localhost:4000/security/output-encoding/ - 0 errors
 > http://localhost:4000/web-architecture/ - 0 errors
 > http://localhost:4000/sharepoint/ - 0 errors
 > http://localhost:4000/workflow/ - 0 errors

✔ 41/41 URLs passed

@github-actions
Copy link

github-actions bot commented Mar 3, 2022

Pa11y testing results
> [email protected] pa11y-ci:sitemap
> pa11y-ci --sitemap https://engineering.18f.gov/sitemap.xml --sitemap-find https://engineering.18f.gov --sitemap-replace http://localhost:4000 --sitemap-exclude "/*.pdf"

Running Pa11y on 41 URLs:
/home/runner/work/development-guide/development-guide/node_modules/puppeteer/lib/Page.js:215
    this.emit('error', new Error('Page crashed!'));
                       ^

Error: Page crashed!
    at Page._onTargetCrashed (/home/runner/work/development-guide/development-guide/node_modules/puppeteer/lib/Page.js:215:24)
    at CDPSession.<anonymous> (/home/runner/work/development-guide/development-guide/node_modules/puppeteer/lib/Page.js:123:56)
    at CDPSession.emit (node:events:520:28)
    at CDPSession._onMessage (/home/runner/work/development-guide/development-guide/node_modules/puppeteer/lib/Connection.js:200:12)
    at Connection._onMessage (/home/runner/work/development-guide/development-guide/node_modules/puppeteer/lib/Connection.js:112:17)
    at WebSocket.<anonymous> (/home/runner/work/development-guide/development-guide/node_modules/puppeteer/lib/WebSocketTransport.js:44:24)
    at WebSocket.onMessage (/home/runner/work/development-guide/development-guide/node_modules/ws/lib/event-target.js:120:16)
    at WebSocket.emit (node:events:520:28)
    at Receiver.receiverOnMessage (/home/runner/work/development-guide/development-guide/node_modules/ws/lib/websocket.js:789:20)
    at Receiver.emit (node:events:520:28)
Emitted 'error' event on Page instance at:
    at Page._onTargetCrashed (/home/runner/work/development-guide/development-guide/node_modules/puppeteer/lib/Page.js:215:10)
    at CDPSession.<anonymous> (/home/runner/work/development-guide/development-guide/node_modules/puppeteer/lib/Page.js:123:56)
    [... lines matching original stack trace ...]
    at Receiver.emit (node:events:520:28)

matthinz added 6 commits March 3, 2022 13:08
Try to start "closest to the wire," with HTTPS, UTF-8, JSON, then move into formatting recommendations
Keep the stuff we're going to have badges for at the top
Output example ISO date/times using `date`
@github-actions
Copy link

github-actions bot commented Mar 4, 2022

Pa11y testing results
> [email protected] pa11y-ci:sitemap
> pa11y-ci --sitemap https://engineering.18f.gov/sitemap.xml --sitemap-find https://engineering.18f.gov --sitemap-replace http://localhost:4000 --sitemap-exclude "/*.pdf"

Running Pa11y on 41 URLs:
 > http://localhost:4000/about/ - 0 errors
 > http://localhost:4000/architecture-reviews/ - 0 errors
 > http://localhost:4000/architecture-reviews/data-act-pilot/ - 0 errors
 > http://localhost:4000/accessibility-scanning/ - 0 errors
 > http://localhost:4000/browser-testing/ - 0 errors
 > http://localhost:4000/code-review/ - 0 errors
 > http://localhost:4000/books-we-have-read/ - 0 errors
 > http://localhost:4000/architecture-reviews/micro-purchase/ - 0 errors
 > http://localhost:4000/continuous-deployment/ - 0 errors
 > http://localhost:4000/datastore-selection/ - 0 errors
 > http://localhost:4000/development-environments/ - 0 errors
 > http://localhost:4000/docker/ - 0 errors
 > http://localhost:4000/frontend/ - 0 errors
 > http://localhost:4000/example-workflows/ - 0 errors
 > http://localhost:4000/css/ - 0 errors
 > http://localhost:4000/incident-reports/ - 0 errors
 > http://localhost:4000/incident-reports/cloud-gov/ - 0 errors
 > http://localhost:4000/ - 0 errors
 > http://localhost:4000/language-selection/ - 0 errors
 > http://localhost:4000/integrations/ - 0 errors
 > http://localhost:4000/laptop-setup/ - 0 errors
 > http://localhost:4000/javascript/ - 0 errors
 > http://localhost:4000/license/ - 0 errors
 > http://localhost:4000/people/ - 0 errors
 > http://localhost:4000/markdown/ - 0 errors
 > http://localhost:4000/people/assessment/ - 0 errors
 > http://localhost:4000/nodejs/ - 0 errors
 > http://localhost:4000/release-strategies/ - 0 errors
 > http://localhost:4000/python/ - 0 errors
 > http://localhost:4000/resources/ - 0 errors
 > http://localhost:4000/project-setup/ - 0 errors
 > http://localhost:4000/security/content-security-policy/ - 0 errors
 > http://localhost:4000/ruby/ - 0 errors
 > http://localhost:4000/security/ - 0 errors
 > http://localhost:4000/security/cloud-services/ - 0 errors
 > http://localhost:4000/security/dependency-remediation/ - 0 errors
 > http://localhost:4000/security/output-encoding/ - 0 errors
 > http://localhost:4000/security/incident-response-drills/ - 0 errors
 > http://localhost:4000/sharepoint/ - 0 errors
 > http://localhost:4000/web-architecture/ - 0 errors
 > http://localhost:4000/workflow/ - 0 errors

✔ 41/41 URLs passed

@matthinz matthinz changed the title Draft: Add API standards Add API standards Mar 4, 2022
Copy link
Collaborator

@echappen echappen left a comment

Choose a reason for hiding this comment

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

This looks good to me. Thank you @matthinz for doing this!

@svenaas
Copy link

svenaas commented Mar 4, 2022

This doesn't need another review but I want to add my thanks, @matthinz. It's good to see work like this rescued from an archived repository, and even better to see it updated!

@matthinz
Copy link
Contributor Author

matthinz commented Mar 4, 2022

Thanks all, I think there's some more work that could be done on these recommendations, but I'm gonna merge and think about that next week!

@matthinz matthinz merged commit 60e97c6 into main Mar 4, 2022
@matthinz matthinz deleted the api-standards branch March 4, 2022 21:56
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Add the 18F API Standards to the site
3 participants