https://github.com/for-get/readme
https://github.com/for-get/readme
Last synced: 5 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/for-get/readme
- Owner: for-GET
- Created: 2013-10-07T12:44:30.000Z (almost 13 years ago)
- Default Branch: master
- Last Pushed: 2017-11-30T13:05:41.000Z (over 8 years ago)
- Last Synced: 2025-06-06T19:13:38.116Z (about 1 year ago)
- Size: 3.91 KB
- Stars: 79
- Watchers: 5
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Forget HTTP
This GitHub organization focuses on designing abstract HTTP helpers or coding reference implementations, as described in IETF/W3C/etc specifications.
**This is one of the least opinionated collection of repositories that you will find on HTTP.**
## More bla
* https://www.youtube.com/watch?v=9Qnx1h5cQxo
* https://hyperrest.github.io/2013-06-10-http-hell-no
* https://hyperrest.github.io/2013-10-14-man-overboard
* https://www.youtube.com/watch?v=UqTlToUYK1E
* https://vimeo.com/20784244
* http://seancribbs.com/tech/2012/01/16/webmachine-vs-grape/
## HTTP flow overview
\* HTTP/2.0 encapsulation is omitted
1. receive request
1. parse messaging - [RFC7230](https://tools.ietf.org/html/rfc7230)
2. parse semantics - [RFC7231](https://tools.ietf.org/html/rfc7231) (and extensions)
2. prepare response
1. decide
3. send response
1. generate semantics
2. generate messaging
## Effort overview (roadmap)
Dependencies and their reference implementations:
* 1. and 3. need a server
* [HTTPDD Server](https://github.com/for-GET/server)
* 2. needs an FSM
* [HTTPDD (HTTP decision diagram)](https://github.com/for-GET/http-decision-diagram)
* [HTTPDD Machine](https://github.com/for-GET/machine)
* 1.i. and 1.ii. need parsers
* [Core PEGjs](https://github.com/for-GET/core-pegjs)
* 2.i., 3.i. and 3.ii. need helpers/generators
* [API PEGjs](https://github.com/for-GET/api-pegjs)
* 1., 2. and 3. need language agnostic tests
* [parse->AST->stringify (API PEGjs)](https://github.com/for-GET/api-pegjs-test)
* Decision
* [Content Negotiation](https://github.com/for-GET/conneg-test)
* Caching
* Conditional
* ...