This is a Rails application to collaboratively estimate stories.
To get started with the app, clone the repo and then install the needed gems running the setup script:
$ ./bin/setup
ORGANIZATION_LOGIN
: This is the organization name as it appears in the GitHub URL, for instance orgname
in https://github.com/orgname. It is needed to check if users are a part of the organization. Ensure that your membership is set to public when you visit https://github.com/orgs/orgname/people.
If you don't belong to any organization, you can set up one here: https://github.com/organizations/plan
Make sure you add your organization to the .env
file like this:
ORGANIZATION_LOGIN=orgname
GITHUB_APP_ID
and GITHUB_APP_SECRET
: These are the credentials of the OAuth GitHub App that you need to create. Follow the instructions on this link to create one: Creating an OAuth GitHub App
When creating the OAuth GitHub App, the Homepage URL
field should be set to http://localhost:3000, and the Authorization callback URL
should be http://localhost:3000/users/auth/github/callback.
Once you create the app and generate credentials for it, make sure you add them to the .env
file like this:
GITHUB_APP_ID=xxxxxxxxxxxxxxxxxxxx
GITHUB_APP_SECRET=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
SHOW_DEVELOPER_AUTH=true
can be used to allow easy login without requiring GitHub's setup during local development or in safe review environments.
$ rails s
Go to http://localhost:3000
$ rails spec
NOTE: You'll need to have docker and docker-compose installed
Build the points docker image
./bin/setup_with_docker
Run the app
./bin/start_with_docker
or
docker-compose up web-next
Users are created without admin privileges by default, because admin users have access to a few more features related to reports and setting real score of stories.
Currently, the only way to flag a user as admin
is a direct database update using either postgres cli or the rails console.
If you want to set the flag for a user, you can follow these steps:
rails console
or
docker-compose run --rm web rails console
and then:
User.find_by(email: "user@example.com").update_attribute(:admin, true)
To enable the Rack Mini Profiler widget, add the ?enable_rack_mini_profiler
query string to any url. The widget will stay on for all requests until disabled.
To disable the Rack Mini Profiler widget, add the ?disable_rack_mini_profiler
query string to any url.
Bug reports and pull requests are welcome on GitHub at https://github.com/fastruby/points. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the Contributor Covenant code of conduct.
When Submitting a Pull Request:
-
If your PR closes any open GitHub issues, please include
Closes #XXXX
in your comment -
Please include a summary of the change and which issue is fixed or which feature is introduced.
-
If changes to the behavior are made, clearly describe what changes.
-
If changes to the UI are made, please include screenshots of the before and after.
The gem is available as open source under the terms of the MIT License.
Everyone interacting in the Points project’s codebases, issue trackers, chat rooms and mailing lists is expected to follow the code of conduct.
Points
is maintained and funded by FastRuby.io. The names and logos for FastRuby.io are trademarks of The Lean Software Boutique LLC.