This is a very simple registration website for an event, supporting payment using Stripe.
It is currently very tailored to its use in production, so it can't be used for any other event without significant development work.
It runs on Google App Engine, using Google Datastore to store registrations.
It depends on Go 1.12, and the Google App Engine 'stable' platform 1.12
travis.yml
file.The email verification is implemented in a microservice called vmail: https://github.com/tintinnabulate/vmail.
You have to run build and run this microservice first, before you can make use of it.
The microservice is used in two ways for email verification:
POST
request to vmail_microservice_url/signup/{email_address}
to email the verification link to {email_address}
GET
request to vmail_microservice_url/verify/{code}
to validate the verification code. This happens when you click the verification link sent by (1).User registration also uses the vmail microservice.
A user can take the following steps through the registration process:
GET vmail_microservice_url/signup/{email_address}
response JSON = {"Address": "email_address", "Success": true, "Note": ""}
GOTO (2), else GOTO (3)There is a Dockerfile which sets up a docker image to run the test suite.
If you are familiar with Docker, you can also use this docker image to set up a development environment.