URI:teller is a service for monitoring how chat apps, social network sites and such fetch their link previews. See the companion blog post talking about the original motivation and further uses.
The code in this repository is built for the Google Cloud Platform. See Prerequisites for more info about that.
URI:teller uses Google's Cloud Datastore as the database and Cloud Pub/Sub for passing work between services. Stackdriver Debugger, Trace and Error Reporting work if their respective APIs are enabled. The frontend service sends analytics to Google Analytics whent the
GA_TRACKING_ID environment variable is set.
Vue allows reusing the same view code for both server-side and in-browser rendering.
CircleCI runs the build process on every repository push. CircleCI also deploys the site whenever the
production branch gets an update.
Google Cloud Platform
Install and initialize Google Cloud SDK: https://cloud.google.com/sdk/docs/
Create a new project from the Google Cloud Platform
Console or use an already existing one. Set
your project's id
PROJECT_ID as default with:
$ gcloud config set project <PROJECT_ID>
Install Node.js dependencies. The following command line examples use
npm works just as well.
Watch and rebuild client side assets on changes:
$ yarn dev
If you want to run the server components you can use the Application Default Credentials - note that you need to get these only once for your environment:
$ gcloud auth application-default login
app.js in port 8080:
$ GCLOUD_PROJECT=<PROJECT_ID> APP_BASE_URL=http://localhost:8080/ yarn start
$ GCLOUD_PROJECT=<PROJECT_ID> SCRIPT=worker.js yarn start