Skip to content

temporal-sa/hackathon-starter

Repository files navigation

Hackathon Starter

Run a Temporal hackathon

Getting started

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.

Running Temporal

You will need to have access to a Temporal instance. By default, this application will be connected to a local instance of Temporal.

Local

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.

Cloud

If you wish to use Temporal Cloud, you may do so by configuring these environment variables.

Resources

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.

Supported languages

Temporal a code-first platform and many languages are supported. For this hackathon, see the individual languages:

Your development environment

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.

Codespaces

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.

Open in GitHub Codespaces

Dev Containers

Note

Dev Containers allows you to use a container as a full-featured development environment.

  1. Install Docker
  2. Install VSCode or VSCode Insiders
  3. Install the Dev Containers extension
  4. Either:

Docker Compose

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

  1. Enter the directory for the language you wish to develop in (eg, cd golang)
  2. Install the dependencies. This is language-dependent, so please check the relevant README.
  3. In one terminal window, run docker compose up worker
  4. In another terminal window, run docker compose up starter

Gitpod

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.

Open in Gitpod

Local development

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:

Optional dependencies

Go

Python

TypeScript