Skip to content

Iridescent-CM/technovation-app

Repository files navigation

Technovation Challenge Platform

Technovation is a global tech education nonprofit that empowers girls to become leaders, creators and problem-solvers.

QA: CircleCI

Master: CircleCI

Production: CircleCI

We are using BrowserStack for cross-browser compatibility

We use BrowserStack to test for cross-browser compatibility so that we can support a worldwide community of volunteers!

Rails Docs:

http://api.rubyonrails.org/v5.1.6

Installation and Setup

Prerequisites

macOS

Install homebrew

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Install asdf, ruby 2.6.4, nodejs

brew install asdf

asdf plugin-add ruby
asdf plugin-add nodejs

asdf install ruby 2.6.4
asdf install nodejs <latest-version>

Make sure XCode is installed.

Under Xcode preferences locations, make sure there is a version set.

Install redis (follow the post-install instructions)

brew install redis

Install postgresql (follow the post-install instructions)

brew install postgresql
createuser -s postgres

Install imagemagick

brew install imagemagick

Install canvas polyfill requirements for Jest test runner

brew install pkg-config cairo libpng jpeg giflib

Install pdftk

https://www.pdflabs.com/tools/pdftk-the-pdf-toolkit/pdftk_server-2.02-mac_osx-10.11-setup.pkg

Install wkhtmltopdf

Install as appropriate for your environment, and make sure to set WKHTMLTOPDF_PATH in your .env file to point to the tool.

Install the rails application

git clone git@github.com:Iridescent-CM/technovation-app.git

Move the .env file that your team should have given you Dropbox access to

cd technovation-app
mv <PATH-TO-.ENV-FILE> .

Switch to ruby 2.6.4 (this creates the .tool-versions file and you won't have to do it again) Switch to nodejs

asdf local ruby 2.6.4
asdf local nodejs <latest-version>

Run the rails setup file

./bin/setup

Ensure the test suite can run without errors:

rake

Run the local server

rails s

Navigate to http://localhost:3000

To compile and hot reload assets, run the following in a new terminal window

./bin/webpack-dev-server

User type logins:

Seeded users:

To turn on/off various user features:

  • Login as the admin
  • Go to "Content & Settings"
  • Toggle what you need on or off

Tests

Technovation uses RSpec, and you can run the entire test suite just by entering the command rake

rake