Skip to content
Browse files

rejig

  • Loading branch information...
1 parent e1bcf0c commit 54bf5b3dfbe3e2a993828604d79619ba96ea0486 @mnot mnot committed
View
19 _layouts/front.html
@@ -0,0 +1,19 @@
+<!DOCTYPE HTML>
+
+<html>
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+ <title>HTAPI - {{ page.title }}</title>
+ <link rel="STYLESHEET" href="/style.css" type="text/css" />
+ </head>
+ <body>
+ <header>
+ <h1>HTAPI</h1>
+ <h1 class="subtitle"><a href="/">{{ page.title }}</a></h1>
+ </header>
+ <section>
+ {{ content }}
+ </section>
+ </body>
+</html>
+
View
20 format/index.md
@@ -0,0 +1,20 @@
+---
+layout: layout
+title: Formats
+---
+
+Creating Formats
+----------------
+
+Identifying Formats with Media Types
+------------------------------------
+
+
+JSON
+----
+
+XML
+---
+
+Others
+------
View
23 format/json.md
@@ -0,0 +1,23 @@
+---
+layout: layout
+title: Using JSON Formats
+---
+
+When to use JSON
+----------------
+
+JSON Namespaces
+---------------
+
+JSON Schemas
+------------
+
+Extending JSON
+--------------
+
+Links in JSON
+-------------
+
+
+PATCH Formats for JSON
+----------------------
View
10 format/versioning.md
@@ -0,0 +1,10 @@
+---
+layout: layout
+title: Versioning
+---
+
+When to Version Your API
+------------------------
+
+Version Identifiers
+-------------------
View
24 format/xml.md
@@ -0,0 +1,24 @@
+---
+layout: layout
+title: Using XML Formats
+---
+
+When to use XML
+---------------
+
+XML Namespaces
+--------------
+
+XML Schemas
+-----------
+
+Extending XML
+-------------
+
+
+Links in XML
+------------
+
+
+PATCH Formats for XML
+---------------------
View
32 getting-started.md
@@ -17,4 +17,36 @@ circles.
Instead, we'd rather focus on the concrete benefits that you can get by using
a particular RESTful protocol, HTTP, well.
+So, an HTAPI is really just a RESTful HTTP API, but without all of the
+guilt.
+
+How Do I Create One?
+--------------------
+
+One of the core concepts of HTAPIs is defining resources in terms of
+_typed relations_, formats by their _media types_, and then linking them
+together using links.
+
+For example, you might say that your application has a "widget" resource, and
+it gets created by POSTing to the "widgetCreator". Widgets might have a JSON
+representation, and can be updated with the PUT and PATCH methods.
+
+Those widget representations themselves should contain links to things that
+are related to that specific widget, and identify them using link relations.
+
+The important thing is that you do *not* define static URIs for your API as
+you design it; instead, all that someone needs to do is to go to the
+root URL for your application (usually, the "home page" URL, like
+http://www.example.com/) and then uses links inside of the representations
+that it fetches to interact with the application.
+
+What Does that Get Me?
+----------------------
+
+
+What Should I Do If...
+----------------------
+
+
+What's Next?
View
0 guide/conneg.md
No changes.
View
0 guide/json.md
No changes.
View
4 guide/xml.md
@@ -1,4 +0,0 @@
----
-layout: layout
-title: XML
----
View
13 http/auth.md
@@ -0,0 +1,13 @@
+---
+layout: layout
+title: Authentication
+---
+
+
+Basic with TLS
+--------------
+
+
+
+OAuth Bearer
+------------
View
17 http/caching.md
@@ -0,0 +1,17 @@
+---
+layout: layout
+title: Caching
+---
+
+
+Caching Basics
+--------------
+
+
+Stale Controls
+--------------
+
+
+
+Invalidation
+------------
View
20 http/conneg.md
@@ -0,0 +1,20 @@
+---
+layout: layout
+title: Content Negotiation
+---
+
+For Compression
+---------------
+
+
+For Format
+----------
+
+
+For Language
+------------
+
+
+
+For Other Purposes
+------------------
View
12 http/headers.md
@@ -0,0 +1,12 @@
+---
+layout: layout
+title: HTTP Headers
+---
+
+
+When To Use Headers
+-------------------
+
+
+Creating New Headers
+--------------------
View
2 guide/formats.md → http/index.md
@@ -1,5 +1,5 @@
---
layout: layout
-title: Formats
+title: HTTP Guidelines
---
View
3 guide/links.md → link/index.md
@@ -8,6 +8,9 @@ Link Relations
--------------
+### Creating New Link Relations
+
+
URI Templates
-------------
View
13 patterns/collections.md
@@ -0,0 +1,13 @@
+---
+layout: layout
+title: Collections
+---
+
+
+Collection Basics
+-----------------
+
+
+
+Paged Collections
+-----------------
View
17 patterns/create.md
@@ -0,0 +1,17 @@
+---
+layout: layout
+title: Creating Resources
+---
+
+Creating with POST
+------------------
+
+
+
+Creating with PUT
+-----------------
+
+
+
+Managing Side Effects
+---------------------
View
15 patterns/discovery.md
@@ -0,0 +1,15 @@
+---
+layout: layout
+title: Discovery
+---
+
+"Root" Documents
+----------------
+
+
+Well-Known Locations
+--------------------
+
+
+WebFinger
+---------
View
4 patterns/filter.md
@@ -0,0 +1,4 @@
+---
+layout: layout
+title: Filtering Responses
+---
View
4 guide/caching.md → patterns/index.md
@@ -1,4 +1,4 @@
---
layout: layout
-title: Caching
----
+title: Patterns
+---
View
5 patterns/query.md
@@ -0,0 +1,5 @@
+---
+layout: layout
+title: Querying Resources
+---
+
View
4 patterns/range.md
@@ -0,0 +1,4 @@
+---
+layout: layout
+title: Range Requests and Partial Content
+---
View
13 guide/smells.md → patterns/smells.md
@@ -1,6 +1,6 @@
---
layout: layout
-title: Smells
+title: Smells (Anti-Patterns)
---
Check your HTAPI to make sure that you don't exhibit any of these smells;
@@ -16,4 +16,13 @@ they indicate that you're probably doing it wrong.
Baked-in URLs
--------------
+-------------
+
+
+WebDAV
+------
+
+
+"Contracts"
+-----------
+
View
12 patterns/update.md
@@ -0,0 +1,12 @@
+---
+layout: layout
+title: Updating Resources
+---
+
+Update with PUT
+---------------
+
+
+
+Update with PATCH
+-----------------
View
15 style.css
@@ -64,21 +64,6 @@ a:active {
color: #303a86;
background-color: #acf;
}
-a.offsite:hover {
- background-color: #99A;
- color: white;
- text-decoration: none;
- border-bottom: none;
- padding: 0.2em 0;
-}
-
-@media screen {
- a[type="application/pdf"]:after {
- content: " pdf";
- vertical-align: super;
- font-size: 0.75em;
- }
-}
img { max-width: 100%; }

0 comments on commit 54bf5b3

Please sign in to comment.
Something went wrong with that request. Please try again.