reorg chapters and set up basic www

This commit is contained in:
Carson Gross 2022-10-20 10:43:09 -06:00
parent 0b49c40f48
commit 20b0c2fe97
26 changed files with 255609 additions and 44 deletions

1
.gitignore vendored
View File

@ -1 +1,2 @@
/.idea
/www/_site/

2
bin/gen-www.sh Executable file
View File

@ -0,0 +1,2 @@
# index.html
asciidoctor -D www/book manuscript/*.adoc

255525
dist/BuildingHypermediaSystems.pdf vendored Normal file

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,21 @@
= Building Hypermedia Systems
Adam Stepinski; Carson Gross; Deniz Akşimşek
:doctype: book
:toc:
:toclevels: 3
include::CH01_ReintroducingHypermedia.adoc[]
include::CH02_RestHATEOASAndAllThat.adoc[]
include::CH03_BuildingASimpleWebApplication.adoc[]
include::CH04_ExtendingHTMLAsHypermedia.adoc[]
include::CH05_htmxInAction.adoc[]
include::CH06_MorehtmxPatterns.adoc[]
include::CH07_ADynamicArchiveUIWithhtmx.adoc[]
include::CH08_Deephtmx.adoc[]
include::CH09_HyperviewAMobileHypermedia.adoc[]
include::CH10_BuildingAContactsAppWithHyperview.adoc[]
include::CH11_ExtendingTheHyperviewClient.adoc[]
include::CH12_ScriptingInAHypermediaApplication.adoc[]
include::CH13_JSONDataAPIs.adoc[]
include::CH14_OtherHypermediaOrientedLibraries.adoc[]
include::CH15_Conclusion.adoc[]

View File

@ -10,7 +10,7 @@
:sourcedir: ../code/src
:source-language:
= A Simple Web Application
= Building A Simple Web 1.0 Application
This chapter covers
@ -30,7 +30,7 @@ that most developers today would assume requires the use of sophisticated client
implement these features entirely using the hypermedia approach, but enhanced with htmx and other libraries that stay
within that paradigm.
=== Picking A "Web Stack" To Use
== Picking A "Web Stack" To Use
In order to demonstrate how a hypermedia application works, we need to pick a server-side language and library for
handling HTTP requests. Colloquially, this is called our "Server Side" or "Web" stack, and there are literally hundreds

View File

@ -11,7 +11,7 @@
:source-language:
= Putting Hypermedia Into Action
= htmx In Action
This chapter covers

View File

@ -10,7 +10,7 @@
:sourcedir: ../code/src
:source-language:
= Advanced Hypermedia Patterns
= More htmx Patterns
This chapter covers

View File

@ -10,7 +10,7 @@
:sourcedir: ../code/src
:source-language:
= Creating A Dynamic Archive UI
= A Dynamic Archive UI With htmx
This chapter covers

View File

@ -10,7 +10,7 @@
:sourcedir: ../code/src
:source-language:
= Developing With htmx
= Deep htmx
This chapter covers

View File

@ -1,21 +0,0 @@
# main chapters
asciidoctor-pdf -a pdf-theme=manning -r /opt/homebrew/Cellar/asciidoctor/2.0.17/libexec/gems/asciidoctor-pdf-1.6.2/lib/sectnumoffset-treeprocessor.rb -o pdfs/generated/CH01_gross_Hypermedia_In_Action.pdf CH01_gross_HypermediaInAction.adoc
asciidoctor-pdf -a pdf-theme=manning -r /opt/homebrew/Cellar/asciidoctor/2.0.17/libexec/gems/asciidoctor-pdf-1.6.2/lib/sectnumoffset-treeprocessor.rb -o pdfs/generated/CH02_gross_Hypermedia_In_Action.pdf CH02_gross_HypermediaInAction.adoc
asciidoctor-pdf -a pdf-theme=manning -r /opt/homebrew/Cellar/asciidoctor/2.0.17/libexec/gems/asciidoctor-pdf-1.6.2/lib/sectnumoffset-treeprocessor.rb -o pdfs/generated/CH03_gross_Hypermedia_In_Action.pdf CH03_gross_HypermediaInAction.adoc
asciidoctor-pdf -a pdf-theme=manning -r /opt/homebrew/Cellar/asciidoctor/2.0.17/libexec/gems/asciidoctor-pdf-1.6.2/lib/sectnumoffset-treeprocessor.rb -o pdfs/generated/CH04_gross_Hypermedia_In_Action.pdf CH04_improving_our_hypermedia_application.adoc
asciidoctor-pdf -a pdf-theme=manning -r /opt/homebrew/Cellar/asciidoctor/2.0.17/libexec/gems/asciidoctor-pdf-1.6.2/lib/sectnumoffset-treeprocessor.rb -o pdfs/generated/CH05_gross_Hypermedia_In_Action.pdf CH05_advanced_hypermedia_patterns.adoc
asciidoctor-pdf -a pdf-theme=manning -r /opt/homebrew/Cellar/asciidoctor/2.0.17/libexec/gems/asciidoctor-pdf-1.6.2/lib/sectnumoffset-treeprocessor.rb -o pdfs/generated/CH06_gross_Hypermedia_In_Action.pdf CH06_hyperview_a_mobile_hypermedia.adoc
asciidoctor-pdf -a pdf-theme=manning -r /opt/homebrew/Cellar/asciidoctor/2.0.17/libexec/gems/asciidoctor-pdf-1.6.2/lib/sectnumoffset-treeprocessor.rb -o pdfs/generated/CH07_gross_Hypermedia_In_Action.pdf CH07_building_a_hyperview_mobile_app.adoc
asciidoctor-pdf -a pdf-theme=manning -r /opt/homebrew/Cellar/asciidoctor/2.0.17/libexec/gems/asciidoctor-pdf-1.6.2/lib/sectnumoffset-treeprocessor.rb -o pdfs/generated/CH08_gross_Hypermedia_In_Action.pdf CH08_extending_the_hyperview_client.adoc
asciidoctor-pdf -a pdf-theme=manning -r /opt/homebrew/Cellar/asciidoctor/2.0.17/libexec/gems/asciidoctor-pdf-1.6.2/lib/sectnumoffset-treeprocessor.rb -o pdfs/generated/CH08_gross_Hypermedia_In_Action.pdf CH09_gross_adding_scripting.adoc
asciidoctor-pdf -a pdf-theme=manning -r /opt/homebrew/Cellar/asciidoctor/2.0.17/libexec/gems/asciidoctor-pdf-1.6.2/lib/sectnumoffset-treeprocessor.rb -o pdfs/generated/CH09_gross_Hypermedia_In_Action.pdf CH10_gross_json_data_apis.adoc
asciidoctor-pdf -a pdf-theme=manning -r /opt/homebrew/Cellar/asciidoctor/2.0.17/libexec/gems/asciidoctor-pdf-1.6.2/lib/sectnumoffset-treeprocessor.rb -o pdfs/generated/CH10_gross_Hypermedia_In_Action.pdf CH11_gross_download_ui.adoc
asciidoctor-pdf -a pdf-theme=manning -r /opt/homebrew/Cellar/asciidoctor/2.0.17/libexec/gems/asciidoctor-pdf-1.6.2/lib/sectnumoffset-treeprocessor.rb -o pdfs/generated/CH11_gross_Hypermedia_In_Action.pdf CH12_gross_developing_with_htmx.adoc
asciidoctor-pdf -a pdf-theme=manning -r /opt/homebrew/Cellar/asciidoctor/2.0.17/libexec/gems/asciidoctor-pdf-1.6.2/lib/sectnumoffset-treeprocessor.rb -o pdfs/generated/CH12_gross_Hypermedia_In_Action.pdf CH13_gross_other_hypermedia_libraries.adoc
asciidoctor-pdf -a pdf-theme=manning -r /opt/homebrew/Cellar/asciidoctor/2.0.17/libexec/gems/asciidoctor-pdf-1.6.2/lib/sectnumoffset-treeprocessor.rb -o pdfs/generated/CH13_gross_Hypermedia_In_Action.pdf CH14_gross_retvrn.adoc
# TOC
asciidoctor-pdf -a pdf-theme=manning -r /opt/homebrew/Cellar/asciidoctor/2.0.17/libexec/gems/asciidoctor-pdf-1.6.2/lib/sectnumoffset-treeprocessor.rb -o pdfs/generated/TOC_gross_Hypermedia_In_Action.pdf TOC.adoc
# book
asciidoctor-pdf -a pdf-theme=manning -r /opt/homebrew/Cellar/asciidoctor/2.0.17/libexec/gems/asciidoctor-pdf-1.6.2/lib/sectnumoffset-treeprocessor.rb -o pdfs/generated/Hypermedia_In_Action.pdf index.adoc

View File

@ -1,17 +0,0 @@
include::CH01_gross_HypermediaInAction.adoc[]
include::CH02_gross_HypermediaInAction.adoc[]
include::CH03_gross_HypermediaInAction.adoc[]
include::CH04_improving_our_hypermedia_application.adoc[]
include::CH05_advanced_hypermedia_patterns.adoc[]
include::CH06_hyperview_a_mobile_hypermedia.adoc[]
include::CH07_building_a_hyperview_mobile_app.adoc[]
include::CH08_extending_the_hyperview_client.adoc[]
include::CH09_gross_adding_scripting.adoc[]
include::CH10_gross_json_data_apis.adoc[]
include::CH11_gross_download_ui.adoc[]
include::CH12_gross_developing_with_htmx.adoc[]
include::CH13_gross_other_hypermedia_libraries.adoc[]
include::CH14_gross_retvrn.adoc[]
include::APP01_gross_roy_fieldings_dissertation.adoc[]

10
www/_config.ts Normal file
View File

@ -0,0 +1,10 @@
import lume from "lume/mod.ts";
import liquid from "lume/plugins/liquid.ts";
const site = lume();
site.use(liquid());
site.copy("book");
export default site;

14
www/_includes/layout.njk Normal file
View File

@ -0,0 +1,14 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Building Hypermedia Systems</title>
<link rel="stylesheet" href="https://the.missing.style">
</head>
<body>
<main>
{{ content | safe }}
</main>
</body>
</html>

8
www/deno.json Normal file
View File

@ -0,0 +1,8 @@
{
"importMap": "./import_map.json",
"tasks": {
"lume": "echo \"import 'lume/cli.ts'\" | deno run --unstable -A -",
"build": "deno task lume",
"serve": "deno task lume -s"
}
}

5
www/import_map.json Normal file
View File

@ -0,0 +1,5 @@
{
"imports": {
"lume/": "https://deno.land/x/lume@v1.12.1/"
}
}

17
www/index.md Normal file
View File

@ -0,0 +1,17 @@
---
layout: layout.njk
---
# Building Hypermedia Systems
This is a book about building systems with hypermedia, or, as we like to call them, Hypermedia Driven Applications (HDAs).
It covers:
* What Hypermedia Is
* Using htmx to build web-based HDAs
* Using HyperView to build mobile HDAs
* Using non-Hypermedia technology effectively within HDAs
You can purchase a PDF of the book here (TBD)
Or you can view the entire book online for free [here](/book.html).