Run a Temporal hackathon
Tip
See the development environment setup
Thanks for joining in with this hackathon. It's designed to be enjoyable and educational.
The first step is to fork this repo or use it as a template.
You will need to have access to a Temporal instance. By default, this application will be connected to a local instance of Temporal.
Tip
If you use a supported development environment, you may already have a running instance of Temporal.
You can stop this with make temporal-stop.
Run Temporal with make temporal. This will show the WebUI on localhost:8233
and your application will connect to this on localhost:7233.
If you wish to use Temporal Cloud, you may do so by configuring these environment variables.
Note
Temporal is an open-source workflow orchestration platform that allows developers to build reliable, long-running applications as simple code. It ensures tasks run to completion by handling retries, failures, and state management automatically.
Temporal a code-first platform and many languages are supported. For this hackathon, see the individual languages:
This is a hands-on hackathon, so you will need to write some code. You're free to use any development environment you wish, but we have provided some pre-configured environments so you can get started quicker. These are all supported equally and you should choose the setup that you're most comfortable with.
Note
Codespaces is a remote development environment that allows one-click configuration of your development environment.
Codespaces is a remote development environment that allows one-click configuration of your development environment.
Note
Dev Containers allows you to use a container as a full-featured development environment.
- Install Docker
- Install VSCode or VSCode Insiders
- Install the Dev Containers extension
- Either:
- Clone this repo and open in VSCode, or
- Open in Dev Containers
Note
Run the application inside Docker Compose. This is NOT a development environment, but does allow you to run the whole application stack on your local machine.
This will run the Temporal UI on localhost:8080
- Enter the directory for the language you wish to develop in (eg,
cd golang) - Install the dependencies. This is language-dependent, so please check the relevant README.
- In one terminal window, run
docker compose up worker - In another terminal window, run
docker compose up starter
Note
Gitpod is a remote development environment that allows one-click configuration of your development environment.
Gitpod is a remote development environment that allows one-click configuration of your development environment.
Caution
You're strongly advised to use a pre-configured development environment as these are tested to make your development environment setup rapid, easy and reliable.
If you do want to configure local development, the latest version of these dependencies should be used unless otherwise stated.
If you wish to configure Temporal manually, you will need to install the following dependencies: