All Projects → the-badger → badger

the-badger / badger

Licence: MIT license
Gamification platform to motivate your team with badges, adventures & other cool stuff!

Programming Languages

PHP
23972 projects - #3 most used programming language
HTML
75241 projects
CSS
56736 projects
javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to badger

laravel-gamify
Laravel Gamify: Gamification System with Points & Badges support
Stars: ✭ 35 (-54.55%)
Mutual labels:  badge, gamification
VSMarketplaceBadge
Badge for Visual Studio Code Extension
Stars: ✭ 63 (-18.18%)
Mutual labels:  badge
Console Badge
🎨 Create simple badges in the browser console
Stars: ✭ 130 (+68.83%)
Mutual labels:  badge
Contrast Swatch
🅰️ Image microservice for color contrast information
Stars: ✭ 210 (+172.73%)
Mutual labels:  badge
Ci Buildstats
Little widget to display AppVeyor, TravisCI, CircleCI, GitHub Actions or Azure Pipelines build history charts and other SVG badges.
Stars: ✭ 134 (+74.03%)
Mutual labels:  badge
Teaset
A UI library for react native, provides 20+ pure JS(ES6) components, focusing on content display and action control.
Stars: ✭ 2,845 (+3594.81%)
Mutual labels:  badge
Drawablebadge
Drawable Badge is an Android library for adding badges to drawables.
Stars: ✭ 128 (+66.23%)
Mutual labels:  badge
UltimateTabLayout
A library for tab layout use with viewpager. Very useful, small
Stars: ✭ 33 (-57.14%)
Mutual labels:  badge
electron-windows-badge
Electron Windows Badge plugin to access and modify the badge number of the app icon in windows.
Stars: ✭ 71 (-7.79%)
Mutual labels:  badge
Shields
Concise, consistent, and legible badges in SVG and raster format
Stars: ✭ 15,716 (+20310.39%)
Mutual labels:  badge
Flutter app badger
Support to update the app badge on the launcher (both for Android and iOS)
Stars: ✭ 191 (+148.05%)
Mutual labels:  badge
Google Play Badge Svg
Hosting for localized versions of Google Play badges in SVG format.
Stars: ✭ 137 (+77.92%)
Mutual labels:  badge
BadgesGenerator
A Swift playground to automatically generate personalized conference badges.
Stars: ✭ 36 (-53.25%)
Mutual labels:  badge
Github Actions Badge
🛡 Shields.io Badge for your GitHub Actions
Stars: ✭ 131 (+70.13%)
Mutual labels:  badge
autobadge
Simple CLI tool to generate essential repository badges with ease
Stars: ✭ 16 (-79.22%)
Mutual labels:  badge
Php badge
This is an identification tag based on SVG, It can quickly generate various labels and status identifiers
Stars: ✭ 101 (+31.17%)
Mutual labels:  badge
Fastlane Plugin Badge
The fastlane plugin for badge
Stars: ✭ 174 (+125.97%)
Mutual labels:  badge
Bgabadgeview Android
Android 徽章控件
Stars: ✭ 2,561 (+3225.97%)
Mutual labels:  badge
moodle-block xp
A gamification plugin for Moodle allowing students to gain experience points and level up.
Stars: ✭ 138 (+79.22%)
Mutual labels:  gamification
BadgeControl
Badge view with controller written in Swift 5.0
Stars: ✭ 53 (-31.17%)
Mutual labels:  badge

Gruik Logo

Badger

Travis CI Scrutinizer Code Quality

Badger is a gamification platform initially developed as an internal project by Akeneo. Badger is still under development, but is working! If you want to try the project, please install the last release.

Prerequisite

  • PHP 7.1+
  • MySQL
  • Composer
  • NodeJS & NPM (only used to grab front JS dependencies)
  • Elasticsearch 1.7.x (not compatible with 2.x)

Installation

Badger is based on the great Symfony framework. If you encounter some installation errors, please have a look on the Symfony installation documentation. If you still have some troubles, feel free to open a GitHub issue.

1) Install Composer dependencies

composer install

2) Setup your database

mysql -u root -p

    CREATE DATABASE badger;
    GRANT ALL PRIVILEGES ON badger.* TO badger_user@localhost IDENTIFIED BY 'badger_password';
    EXIT

php bin/console doctrine:schema:update --force

3) Install frontend assets

npm install # Install frontend dependencies, like Bootstrap
php bin/console assets:install # Move bundle assets to web/ directory
nodejs node_modules/gulp/bin/gulp.js less # Compile bundle .less files to .css
nodejs node_modules/gulp/bin/gulp.js install # Move downloaded assets to web/ directory

Configuration

Once Badger has been installed, you'll have some small things to configure in order to use the application.

Setup GitHub oAuth login

  1. Create a GitHub application with your GitHub account by following this link: https://github.com/settings/developers
  2. Fill in needed informations. Homepage URL & Authorization callback URL should have the same URL, which is your Badger index page (eg. http://badger.example.com/)
  3. Once the application created, put your Client ID & Client Secret tokens in the parameters file of your Badger app:
# ./app/config/parameters.yml
parameters:
    github_client_id: 123456789
    github_client_secret: abcdef123456789

Setup Google oAuth login

  1. Create a Google application with your Google account by following this link: https://console.developers.google.com/
  2. Fill in needed informations. Put your Badger Google Login page (eg. http://badger.example.com/login/check-google) as a valid redirect domain
  3. Once the application created, put your Client ID & Client Secret tokens in the parameters file of your Badger app:
# ./app/config/parameters.yml
parameters:
    google_client_id: abcdefg123456789.apps.googleusercontent.com
    google_client_secret: 123456789abcd

Setup Elasticsearch

Bagder is working with Elasticsearch in order to ease the search in the application.

  1. Instructions for installing and deploying Elasticsearch may be found here.
  2. Set the correct elastic host and port in you parameters.yml file.
  3. (Optional) Populate Elasticsearch with existing users using the following command:
php bin/console fos:elastica:populate

Note that every new users will be automatically indexed by Elasticsearch, you won't need to re-run this command again.

Create an admin user

To manage Badger, you'll need one or several administrators. To promote a user, use this command:

php bin/console fos:user:promote <username> ROLE_ADMIN

Note that the promoted user will need to logout then login again to have full power 🤘

Running Tests

./bin/simple-phpunit -c app
./bin/simple-phpunit -c app --coverage-html=web/phpunit-coverage

License

Badger is licensed under the Open Software License v. 3.0 (OSL-3.0)

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].