We’ve released v1 of Golapa — an App Engine launch page written in Go that allows a web startup to begin building a mailing list of interested leads. Content is easily editable using the existing templates and CSS is generated using Sass.
DISCLAIMER: While a free tier of App Engine exists, certain configuration changes can push an app beyond those limits and incur charges. Use this code at your own risk!
1. Create a new project in Google App Engine
2. Grab the latest Golapa:
git clone https://github.com/turret-io/golapa
3. Enter the golapa directory
4. In app.yaml, replace <PROJECT-ID-HERE> with the ID of the project you just created (this displays in the Project ID column of the projects page)
5. In launch/email.go, replace <APPENGINE-EMAIL-SENDER> with the email address associated with your Google App Engine account or any other email address that’s listed as an owner of your project, then replace <RECIPIENT> with the email address that should receive the submitted name and email address of your signups.
6. Download and extract the App Engine SDK for Go (make sure you choose the Go version and not PHP or Python)
7. Download and install Sass (on Mac OS X you can simply type
gem install sass
— you may need to run with sudo)
8. Optionally add the App Engine SDK directory to your PATH
9. Enter the sass directory and compile the CSS file via:
cd sass; sass launch.sass ../css/launch.css;
10. Edit the footer template and replace the instances of yourdomain.com with your actual domain
11. Enter the main project directory and test the application:
PATH_TO_APPENGINE_SDK/goapp serve .
12. Browse to http://localhost:8080 and you should see the page load with a basic form (note, submitting the form won’t actually send you any emails while you’re running locally)
13. Customize the templates, css, and add images as needed
14. When ready, deploy to App Engine:
PATH_TO_APPENGINE_SDK/goapp deploy .
15. You may be asked for your Google Account email and password to authenticate
16. Browse to the live page: http://YOUR-PROJECT-ID.appspot.com
17. Run a test form submission — occasionally the initial submission displays a “transient task” error which seems to be caused by the project or task queue not being fully provisioned. Further submissions work as expected.