{"size": 984, "ext": "scrbl", "max_stars_repo_path": "scribblings/workshop.scrbl", "max_stars_repo_name": "bennn/racketcon-2018-web-devel-workshop", "max_stars_repo_stars_event_min_datetime": "2018-09-30T16:11:58.000Z", "max_stars_repo_stars_event_max_datetime": "2022-03-17T23:21:43.000Z", "max_issues_repo_path": "scribblings/workshop.scrbl", "max_issues_repo_name": "bennn/racketcon-2018-web-devel-workshop", "max_issues_repo_issues_event_min_datetime": null, "max_issues_repo_issues_event_max_datetime": null, "max_forks_repo_path": "scribblings/workshop.scrbl", "max_forks_repo_name": "bennn/racketcon-2018-web-devel-workshop", "max_forks_repo_forks_event_min_datetime": "2022-03-17T23:21:52.000Z", "max_forks_repo_forks_event_max_datetime": "2022-03-17T23:21:52.000Z"}
{"max_stars_count": 8, "max_issues_count": null, "max_forks_count": 1, "avg_line_length": 36.4444444444, "max_line_length": 194, "alphanum_fraction": 0.7510162602}
#lang scribble/manual

@title[#:style "toc"]{(eighth RacketCon) Workshop: Web Programming}
@author[(author+email "Jesse Alama" "jesse@lisp.sh")]

@defmodule[racketcon-2018-web-devel-workshop]

At the @tt{(eighth RacketCon)}, a number of workshops were held. This document covers the tutorials on web programming.

There are four tutorials. Once you've installed this package, use @tt{raco} to launch each of them, like so:

@verbatim|{
raco 2018-web-workshop first
}|

Doing that launches the first server (or, if you prefer, web application) on your local machine. Instead of @tt{first}, you can use @tt{second}, @tt{third}, and @tt{fourth} to launch the others.

(This material has been adapted from the first few chapters of my ebook @link["https://serverracket.com"]{@emph{Server: Racket—Practical Web Development with the Racket HTTP Server}}.)

@include-section["first.scrbl"]

@include-section["second.scrbl"]

@include-section["third.scrbl"]

@include-section["fourth.scrbl"]
