Skip to content

TextUp/textup-frontend

Repository files navigation

TextUp Frontend

This is the frontend Ember app that connects to the TextUp Grails backend.

Service Master Dev
CI Status Build Status Build Status

Installation

  • Ensure that the following pre-requisites are fulfilled
    • node LTS Argon: install with nvm
    • yarn: install with npm install --global yarn
    • bower: install with yarn global add bower
  • Clone the repository.
    • git clone --recursive <repository-url> to also associate the core styles repo. See git subtree for more details.
    • git remote add styles [email protected]:TextUp/textup-styles.git to create a remote to the core styles repository for easier pulling/pushing later on
  • yarn install --ignore-engines
  • bower install

Environment variables

In order to successfully build, certain environment variables are accessed in config/environment.js. These variables are:

  • TEXTUP_FRONTEND_API_GOOGLE_ANALYTICS
  • TEXTUP_FRONTEND_API_GOOGLE_RECAPTCHA
  • TEXTUP_FRONTEND_API_MAPBOX
  • TEXTUP_FRONTEND_API_PUSHER
  • TEXTUP_FRONTEND_HOST_PRODUCTION
  • TEXTUP_FRONTEND_HOST_STAGING

Environment variables used by Travis when building and deploying are:

  • AWS_ACCESS_KEY_ID
  • AWS_CLOUDFRONT_ID_PRODUCTION
  • AWS_DEFAULT_REGION
  • AWS_SECRET_ACCESS_KEY
  • S3_PRODUCTION
  • S3_STAGING

Pulling / Pushing

When pushing or pulling from this repository, use the standard methods. However, when making updates to styles that you want to propagate to other TextUp repos, some specialized commands are needed.

To update your copy of the core styles:

  • git subtree pull --prefix=app/styles/core --squash styles master

To backport any changes to the core styles repository:

  • git subtree push --prefix=app/styles/core --squash styles master

Note the main drawback of this command is that all commits that touched the subtree and used. If we need more control, we can cherry pick the commits we want to push to the subtree. More details about this and about all git-subtree related commands can be found at this tutorial

Running / Development

Code Generators

Make use of the many generators for code, try ember help generate for more details

Running Tests

  • ember test
  • ember test --server

Building

  • ember build (development)
  • ember build --environment=production (production)

Deploying

Deploying to staging

  • Push to the dev branch to trigger a Travis CI build OR
  • Run ./deploy.sh dist demo.textup.org

Deploying to production

  • Push to the master branch to trigger a Travis CI build OR
  • Run ./deploy.sh dist app.textup.org

Further Reading / Useful Links

License

Copyright 2018 TextUp

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.