Thanks for checking out our code. The documentation below may be incomplete or incorrect. We welcome pull requests! But we're a very small team, so we can't guarantee timely responses.
<3, Edward, Ray, Lawrence, Minda, & Robbie
You need to install redis locally, then follow the steps to launch it on startup:
brew install redis
next install the node modules
npm install -g forever sails foreman
npm install
Create a .env
file in the root of the working copy, with contents like this:
ADMIN_GOOGLE_CLIENT_ID=foo
ADMIN_GOOGLE_CLIENT_SECRET=foo
AWS_S3_CONTENT_URL=http://hylo-staging.s3.amazonaws.com
BUNDLE_VERSION=dev
DATABASE_URL=postgres://postgres:password@localhost:5432/hylo
DEBUG_SQL=false
DOMAIN=localhost:3001
[email protected]
KISS_AUTH_TOKEN=foo
KISS_AUTH_COMMUNITY_ID=9
LINKEDIN_API_KEY=foo
LINKEDIN_API_SECRET=foo
MAILGUN_DOMAIN=mg.hylo.com
MAILGUN_EMAIL_SALT=FX988194AD22EE636
NODE_ENV=development
PLAY_APP_SECRET=foo
PRETTY_JSON=true
PROTOCOL=http
REDIS_URL=redis://localhost:6379
ROLLBAR_SERVER_TOKEN=foo
SEGMENT_KEY=foo
SENDWITHUS_KEY=foo
ADMIN_GOOGLE_CLIENT_*
: To access the admin console. Get these values from the hylo-admin Google project.ROLLBAR_SERVER_TOKEN
: use thepost_server_item
token in RollbarSENDWITHUS_KEY
: set up a test key in SendWithUs to send all email only to you (ask someone with admin rights to set this up)DEBUG_SQL
: set totrue
if you want to output the SQL used within knex/bookshelfDATABASE_URL
: set to your local DB instance
npm run dev
This reads the .env
file you created above, using dotenv, and starts two processes managed by foreman
: one web server process and one background job worker process, as listed in Procfile.dev
.
Now visit localhost:1337.
Migrations are managed by the knex library. Create a new migration with this command:
knex migrate:make my_migration_name
(You can either install knex globally with npm install -g knex
, or run the version in your node_modules
with ./node_modules/.bin/knex
.)
Run migrations with npm run migrate
and rollback the last one with npm run rollback
.
The values of DB_USERNAME
, DB_HOST
, DB_PORT
, and DB_NAME
below can be obtained from DATABASE_URL
in heroku config
.
LOCAL_DB_NAME=hylo
DUMP_FILENAME=dbdump
pg_dump -O -U $DB_USERNAME -h $DB_HOST -p $DB_PORT $DB_NAME > $DUMP_FILENAME
# stop all processes that have open database connections, then:
dropdb $LOCAL_DB_NAME -h localhost
createdb $LOCAL_DB_NAME -h localhost
cat $DUMP_FILENAME | psql -h localhost $LOCAL_DB_NAME
- GET methods on
FooController
should return instances ofFoo
. (See policies.js for some related FIXME's)
This is free and unencumbered software released into the public domain.
Anyone is free to copy, modify, publish, use, compile, sell, or distribute this software, either in source code form or as a compiled binary, for any purpose, commercial or non-commercial, and by any means.
In jurisdictions that recognize copyright laws, the author or authors of this software dedicate any and all copyright interest in the software to the public domain. We make this dedication for the benefit of the public at large and to the detriment of our heirs and successors. We intend this dedication to be an overt act of relinquishment in perpetuity of all present and future rights to this software under copyright law.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
For more information, please refer to http://unlicense.org/