A client-side web application for managing recipes, written in Go and Polymer.
- PostgreSQL >= 9.4
- Node.js and NPM
- NGINX, or another reverse proxy to handle TLS
This project provides a simple web application where users can view and upload recipes. It's designed for mobile, so it works great with your phone in the kitchen.
The front end uses Polymer. The back end uses Go and PostgreSQL. Go
dependencies are managed as git submodules because using
go get has no
concept of version numbers.
Authentication is done using OAuth 2.0 with Google. No Google services are accessed after authentication.
The Node.js dependency is somewhat silly; it's only there to use Bower to manage client-side dependencies. If anyone knows of a better way, let me know.
The old version using Node.js and MongoDB is still available at https://github.com/rwestlund/recipes-v1.
- Install dependencies list above
- Clone this repo
npm run bower install
git submodule update --init
src/config/config.goand set parameters
- Configure a reverse proxy (like NGINX) to handle TLS
- Set the
GOPATHenvironment variable to the root of this repository
- Manually add yourself to the
userstable in PostgreSQL
go run main.go
This code is under the BSD-2-Clause license. See the LICENSE file for the full text.