- Badges
- Teams (course-long memberships)
- Groups (single-assignment memberships)
- Assignments
- Assignment Submissions
- Student Dashboard
- Interactive Grade Predictor
- Interactive Course Timeline
- Grading Rubrics
- Export students and final grades
- User analytics
- Team analytics
- Learning analytics suite
- Custom leveling system
- Assignment stats
- Student-logged assignment scoring
- Multipliers (students decide assignment weight)
- Assignment Unlocks
- Multi-factor leveling system
- Ruby 2.2.2
- PostgreSQL
- MongoDB
- Redis
- Clone repository
- Run
cp config/database.yml.sample config/database.yml
(within the file, replaceusername
with your current username - Run
cp config/mongoid.yml.sample config/mongoid.yml
- Run
cp .env.sample .env
- Run
bundle install
- Run
bundle exec rake db:create
- Optional: run
bundle exec rake db:sample
- Run
foreman start
- Install Vagrant (https://www.vagrantup.com/)
- Clone repository
vagrant up
vagrant ssh
cd /vagrant
foreman start
- Browse to http://localhost:5000/
- See db/samples.rb for dev usernames and passwords
To run all of the spec examples, you can run the following (this is also the default rake task):
bundle exec rake spec
To run all of the spec examples with code coverage, you can run the following:
bundle exec rake spec:coverage
The application is using Mailcatcher to collect email on development.
Mailcatcher runs a daemon in the background which is started by Foreman and opens up an SMTP port on localhost:1025
.
In order to view the emails that are sent, you can visit http://localhost:1080
to view emails that were delivered by the application.
- Clone the repository
git clone https://github.com/UM-USElab/gradecraft-development
- Create a feature branch
git checkout -b my-awesome-feature
- Code!
- Commit your changes (small commits please)
- Push your new branch
git push origin my-awesome-feature
- Create a pull request
hub pull-request -b um-uselab:master -h um-uselab:my-awesome-feature