Go to file
bumi ad317e917d Automatically run DB migrations during the heroku release phase 2020-04-12 23:25:41 +02:00
app Add sequential_id to calculate auto incrementing submission id 2020-04-12 23:18:55 +02:00
bin Hello tinyforms 2020-04-05 23:35:53 +02:00
config Add demo page 2020-04-12 01:01:28 +02:00
db Add sequential_id to calculate auto incrementing submission id 2020-04-12 23:18:55 +02:00
lib Hello tinyforms 2020-04-05 23:35:53 +02:00
log Hello tinyforms 2020-04-05 23:35:53 +02:00
public Hello tinyforms 2020-04-05 23:35:53 +02:00
storage Hello tinyforms 2020-04-05 23:35:53 +02:00
tmp Hello tinyforms 2020-04-05 23:35:53 +02:00
vendor Hello tinyforms 2020-04-05 23:35:53 +02:00
.browserslistrc Hello tinyforms 2020-04-05 23:35:53 +02:00
.gitignore Hello tinyforms 2020-04-05 23:35:53 +02:00
Gemfile Add sequential_id to calculate auto incrementing submission id 2020-04-12 23:18:55 +02:00
Gemfile.lock Add sequential_id to calculate auto incrementing submission id 2020-04-12 23:18:55 +02:00
Procfile Automatically run DB migrations during the heroku release phase 2020-04-12 23:25:41 +02:00
README.md Add note about lockbox config 2020-04-09 16:06:08 +02:00
Rakefile Hello tinyforms 2020-04-05 23:35:53 +02:00
babel.config.js Hello tinyforms 2020-04-05 23:35:53 +02:00
config.ru Hello tinyforms 2020-04-05 23:35:53 +02:00
env.example Encrypt access_token and refresh_token 2020-04-09 00:49:20 +02:00
form.html Static HTML form for testing 2020-04-09 14:15:53 +02:00
package-lock.json Integrate bulma css package in the project 2020-04-06 15:54:44 +02:00
package.json Add bulma css helpers 2020-04-08 13:59:08 +02:00
postcss.config.js Hello tinyforms 2020-04-05 23:35:53 +02:00
yarn.lock Add bulma css helpers 2020-04-08 13:59:08 +02:00

README.md

Tinyforms

Form endpoint that allows to push data from a static HTML form directly into a google spreadsheet.

Installation

Requirements

  • ruby 2.6 or higher
  • PostgreSQL

Installation

Install gem dependencies and setup the database:

$ bundle install
$ rails db:setup

Configuration

To use the application the Google API client needs to be configured using the following environment variables:

  • GOOGLE_CLIENT_ID
  • GOOGLE_PROJECT_ID
  • GOOGLE_CLIENT_SECRET

You can get those from the Google APIs Dashboard

Additionally an encryption master key needs to be configured. lockbox is used to encrypt sensitive data (e.g. access_token) at rest.

  • LOCKBOX_MASTER_KEY

Store those in a .env file; see env.example for an example.

Run the application

$ rails server # loads the configruation from the .env file

Open localhost:3000