mirror of
https://github.com/aantron/dream.git
synced 2025-12-31 00:03:52 -05:00
Defer most extra examples to a roadmap
This commit is contained in:
parent
c1b5d919e5
commit
ce2fcb0572
@ -50,69 +50,97 @@ There are several examples showing Dream with Reason syntax.
|
||||
- [**`r-hello`**](r-hello#files)
|
||||
- [**`r-template`**](r-template#files)
|
||||
- [**`r-template-stream`**](r-template-stream#files)
|
||||
- **`r-fullstack`**
|
||||
- `r-fullstack`
|
||||
|
||||
<br>
|
||||
|
||||
# Extras
|
||||
# Examples
|
||||
|
||||
The rest of the examples cover additional topics in a more-standalone fashion.
|
||||
The goal of the examples is to cover the great majority of real-world HTTP
|
||||
usage, so that they make up a good survey. Please open an issue if something is
|
||||
missing!
|
||||
The goal of the examples is to (eventually) cover the great majority of
|
||||
real-world HTTP usage, so that they make up a good survey. Please open an issue
|
||||
if something is missing!
|
||||
|
||||
<br>
|
||||
|
||||
- [**`w-long-polling`**](w-long-polling#files) — asynchronous
|
||||
communication without WebSockets.
|
||||
- [**`w-query`**](w-query#files) — reading URL query
|
||||
parameters.
|
||||
- [**`w-server-sent-events`**](w-server-sent-events#files) —
|
||||
the server side of JavaScript
|
||||
[`EventSource`](https://developer.mozilla.org/en-US/docs/Web/API/EventSource).
|
||||
- [**`w-site-prefix`**](w-site-prefix#files) — a Web app
|
||||
running not at `/`.
|
||||
- [**`w-template-stream`**](w-template-stream#files) — writing
|
||||
templates asynchronously, one chunk at a time.
|
||||
|
||||
<br>
|
||||
<br>
|
||||
|
||||
# Roadmap
|
||||
|
||||
These examples will be trickled in during the alpha releases.
|
||||
|
||||
Ideas:
|
||||
|
||||
- [**`w-auto-reload`**]()
|
||||
- [**`w-fullstack`**]()
|
||||
- [**`w-index-html`**]()
|
||||
- [**`w-one-binary`**]()
|
||||
- [**`w-ppx-deriving`**]()
|
||||
- [**`w-react-spa`**]()
|
||||
- [**`w-subcommand`**]()
|
||||
- [**`w-template-directory`**]()
|
||||
- [**`w-tyxml`**]()
|
||||
- `w-auto-reload`
|
||||
- `w-fullstack`
|
||||
- `w-index-html`
|
||||
- `w-one-binary`
|
||||
- `w-ppx-deriving`
|
||||
- `w-react-spa`
|
||||
- `w-subcommand`
|
||||
- `w-template-directory`
|
||||
- `w-tyxml` — for
|
||||
[TyXML](https://github.com/ocsigen/tyxml/) templates.
|
||||
|
||||
Basics:
|
||||
|
||||
- [**`w-content-negotiation`**]()
|
||||
- [**`w-query`**]()
|
||||
- [**`w-scope`**]()
|
||||
- [**`w-subsite`**]()
|
||||
- [**`w-testing`**]()
|
||||
- `w-content-negotiation`
|
||||
- [**`w-query`**](w-query#files) — done.
|
||||
- `w-scope` — for
|
||||
[`Dream.scope`](https://aantron.github.io/dream/#val-scope).
|
||||
- `w-subsite` — for
|
||||
[`*` routes](https://aantron.github.io/dream/#val-router).
|
||||
- `w-testing` — for
|
||||
[*Testing*](https://aantron.github.io/dream/#testing).
|
||||
|
||||
Security:
|
||||
|
||||
- [**`w-auth`**]()
|
||||
- [**`w-client-side-session`**]()
|
||||
- [**`w-cors`**]()
|
||||
- [**`w-database-session`**]()
|
||||
- [**`w-file-session`**]()
|
||||
- [**`w-form-expired`**]()
|
||||
- [**`w-json-csrf`**]()
|
||||
- [**`w-jwt`**]()
|
||||
- [**`w-key-rotation`**]()
|
||||
- [**`w-upload-csrf`**]()
|
||||
- `w-auth`
|
||||
- `w-cookie-session` — for
|
||||
[`Dream.cookie_sessions`](https://aantron.github.io/dream/#val-cookie_sessions).
|
||||
- `w-cors`
|
||||
- `w-sql-session` — for
|
||||
[`Dream.sql_sessions`](https://aantron.github.io/dream/#val-sql_sessions).
|
||||
- `w-file-session`
|
||||
- `w-form-expired` — for other cases of
|
||||
[`Dream.form`](https://aantron.github.io/dream/#val-form).
|
||||
- `w-json-csrf` — for
|
||||
[`Dream.csrf_token`](https://aantron.github.io/dream/#val-csrf_token) and
|
||||
`X-CSRF-Token:`.
|
||||
- `w-jwt`
|
||||
- `w-key-rotation` — for a to-be-added `~secrets` argument
|
||||
to [`Dream.run`](https://aantron.github.io/dream/#val-run), which can specify
|
||||
multiple decryption keys.
|
||||
- `w-upload-csrf` — for
|
||||
[`Dream.csrf_token`](https://aantron.github.io/dream/#val-csrf_token) with
|
||||
[`Dream.upload`](https://aantron.github.io/dream/#val-upload).
|
||||
|
||||
Techniques:
|
||||
|
||||
- [**`w-etag`**]()
|
||||
- [**`w-graphql-sql`**]()
|
||||
- [**`w-graphql-subscriptions`**]()
|
||||
- [**`w-https-redirect`**]()
|
||||
- [**`w-long-polling`**]()
|
||||
- [**`w-postgres-docker`**]()
|
||||
- [**`w-server-sent-events`**]()
|
||||
- [**`w-sql-stream`**]()
|
||||
- [**`w-template-stream`**]()
|
||||
- [**`w-websocket-stream`**]()
|
||||
|
||||
Advanced customization:
|
||||
|
||||
- [**`w-globals`**]()
|
||||
- [**`w-typed-session`**]()
|
||||
- `w-etag`
|
||||
- `w-graphql-sql`
|
||||
- `w-graphql-subscriptions`
|
||||
- `w-https-redirect`
|
||||
- [**`w-long-polling`**](w-long-polling#files) — done.
|
||||
- `w-postgres-docker`
|
||||
- [**`w-server-sent-events`**](w-server-sent-events#files) —
|
||||
done.
|
||||
- `w-sql-stream`
|
||||
- [**`w-template-stream`**](w-template-stream#files) — done.
|
||||
- `w-websocket-stream`
|
||||
|
||||
|
||||
<!-- TODO Note that each example is fully self-contained... But also show an
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user