Project setup
Prerequisites
Make sure you've installed all the required tools before starting this tutorial.
Create a new Pavex project
The pavex
CLI provides a new
subcommand to scaffold a new Pavex project.
You can choose between different templates, each one tailored for a specific use case. We'll use the quickstart
template for this tutorial:
Commands
Build a Pavex project
cargo
is not enough, on its own, to build a Pavex project:
you need to use the cargo-px
subcommand instead.
From a usage perspective, it's a drop-in replacement for cargo
:
you can use it to build, test, run, etc. your project just like you would with cargo
itself.
Let's use it to check that your project compiles successfully:
If everything went well, try to execute the test suite:
Run a Pavex project
Now launch your application:
Once the application is running, you should start seeing JSON logs in your terminal:
{
"name": "demo",
"msg": "Starting to listen for incoming requests at 127.0.0.1:8000",
"level": 30,
"target": "api"
// [...]
}
Leave it running in the background and open a new terminal window.
Issue your first request
Let's issue your first request to a Pavex application!
The template project comes with a GET /api/ping
endpoint to be used as health check.
Let's hit it:
If all goes according to plan, you'll receive a 200 OK
response with an empty body:
> GET /api/ping HTTP/1.1
> Host: localhost:8000
> User-Agent: [...]
> Accept: */*
>
< HTTP/1.1 200 OK
< content-length: 0
< date: [...]
You've just created a new Pavex project, built it, launched it and verified that it accepts requests correctly.
It's a good time to start exploring the codebase!