Social Workouts for the CrossFit Community
- Product Owner: Vince Tam
- Scrum Master: Ron Tsui
- Development Team Members: Justin Webb, Nimi Dharithreesan, Ron Tsui, Vince Tam
All project tools must be compatible between OSX and Linux systems. The standard project tools appear below.
Sublime Text 3 is the chosen editor for members of the Trybe project. You can use whatever text editor or IDE you choose, however using Sublime Text with the settings described below will make it easier to adhear to project style guide and coding standards.
The project file standardizes a key editor settings between project members. For example, the file sets a default tab size for all new files to '2' and automattically translates all tab input to spaces. Another helpful setting; it displays two verical lines in the editor, the first (60 spaces) marks the border for comments, the second (80 spaces) marks the border code.
Project plugins are seprated to the groups 'suggested', 'linters', and 'themes'. The suggested plugins are optional but strongly recommended for project synchronicity. The linters are manditory. A small amount of study is required ahead of configuration. Themes are optional but installing at least one of them is recommended, as they will help with linter highlighting, sidebar organization, and more.
- Sidebar Enhancements
- DocBlockr
- FileHeader
- Markdown Preview
- Alignment
- JavaScriptNext ES6 Syntax
- Bracket Highlighter
- Pretty JSON
- Emmet
- Color Highlighter
- SCSS (text mate bundle)
- Jasmine JS
Remember to Read The Docs before installing! For information specific to connecting your linters to Sublime Text themes, check out the usage page.
- SublimeLinter
- SublimeLinter-jshint
- SublimeLinter-contrib-scss-lint
Themes are optional. Your theme selection is largely a matter of preference. The most useful themes can be combined with linters to present graphic feedback on warnings and errors. For example, ITG Flat, a project-favorite theme, can be setup inside Preferences.sublime-settings
to affect Sublime Text's theme and color scheme.
{
"color_scheme": "Packages/User/SublimeLinter/itg.dark (SL).tmTheme",
"show_color_scheme_info": true,
"theme": "itg.flat.dark.sublime-theme"
}
LightCante's list of favorite themes appears below:
ZSH is an command line terminal with powerful capabilities. It comes from bash, ksh, and tcsh. Installation of this command line terminal is optional.
#####Development Environment
-
Ensure you have mysql installed by running
which mysql
. If not installed, runbrew install mysql
. For Linux machines, runsudo apt-get install mysql-server
. You can then decide to enter as a root user or create a normal user (https://dev.mysql.com/doc/refman/5.5/en/changing-mysql-user.html). To enter the mysql environment, runmysql -u root
. (Or whichever username you decide). Upon entering, create a trybe database with the following command:create database 'trybe';
. To use this database, runuse trybe;
. If you runshow tables;
, you will not see any tables because you haven't actually run your server yet. -
Outside of the mysql environment, in your directory, run
npm install
. -
Upon completion, run
bower install
. -
You should now have all of your front and back end dependencies. Now run
grunt build
. This command will build the tables from the schemas in trybe/server/models. -
In the terminal, set the following variables: DATABASE_NAME, DATABASE_USERNAME, DATABASE_PASSWORD, DATABASE_HOST. Then run
export DATABASE_USERNAME DATABASE_PASSWORD DATABASE_HOST DATABASE_NAME
-
Run
nodemon server/server.js
to start the server on your machine.
#####Deployment Environment
-
Contact us (lightcante team) for environmental variables for online Heroku app. We will give you the credentials then.
-
Copy and paste them into your terminal and press 'Enter'.
-
Run
nodemon server/server.js
. You will now be interacting directly with the Cleardb database.
- Angular 1.3.15
- Angular UI Router
- Bootstrap-Sass-Official 3.3.4
- Font-Awesome 4.3.0
- Lodash 3.7.0
- Grunt 0.4.5
- Jasmine 2.3.1
- Karma 0.12.31
- Node 0.10.x
- Express 4.12.3
- mySql 5.5
- Sequelize 2.1.0
- Passport 0.2.1
View the project roadmap on waffle.io
See CONTRIBUTING.md for contribution guidelines.