the-badger / badger Goto Github PK
View Code? Open in Web Editor NEWGamification platform to motivate your team with badges, adventures & other cool stuff!
License: MIT License
Gamification platform to motivate your team with badges, adventures & other cool stuff!
License: MIT License
A user can obtain experience points to unlock new levels.
User should have an experience progress bar to show how many it has to go to next level.
Ideas of advantages having high levels:
[WIP]
Quests are created from admins or with a Cron.
They are defined by:
User can claim a Quest when the have completed it. Admin valid or reject the claim.
A Quest is tagged, like Users & Badgers.
They must be displayed in the front, in a new tab Quests.
New entity ClaimedQuest to claim succeed Quests
They must be a "claim" button, like Badge system.
And GateBundle
to AppBundle
Could be interesting to use PostgreSQL :)
Badger should not be fucked up on mobile :3
A triggered badge is a badge linked to an external application, ie. GitHub, Forum, etc.
A service would check every hour or every night if conditions for the given application is fill fulled then automatically assign badge for the user.
Or this could be a webhook.
I mean: for those who have no access to the source code.
It would be cool to be able to see the badges available for the other services even if I can't claim them.
Example: I'm a core team member, and I want to see the badges of the sales team.
A badge can evolve to a superior level (with stars or levels or whatever).
So the badge "A" could be "A" level 2, or 3.
It should stay the same badge (it's not an unlock, it's an evolution).
User registers with his google account.
Avatar url is saved in DB
Later the user updates he's picture on Google => the old avatar is shown in Badger (because the url changed).
There is no problem with GitHub as they provide always the same avatar url.
User can gain some points, named "nuts" on Badger. ๐ฐ
We should have a page to view a badge:
http://ironforge/badge/24b8d68c-c69e-11e5-aa19-386077d535e5
The badge should be displayed as well as the user list that have unlocked that badge.
STRING UUID
STRING title
STRING description
STRING image
User A
User B
Quest 1
A & B can see 1. A completes 1. B can't see 1 anymore, but he should.
Be able to define a tag as "default".
Once a user registers, he's attached to this tag.
For us, it could be "Community".
Create interfaces for model (for inheritance) and change the mapping to use the interfaces
I think we could have one or two more badges for contributors:
We should have user groups.
A user is "tagged" into a group. Everyone in the application has the "Community" tag.
We could have other group tags:
And so on.
A user belongs to X groups, so does a badge.
SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'nuts' cannot be null
Error 500 'cause same email.
We have to handle the same email with 2 different oAuth providers.
For now, a user can't see a Badge if none of his tags belong to the Badge.
We should just forbid the POST request to claim a badge he can't see.
=> Error 500. See log for more informations, but I think it's related to slack connector
Be notified in a channel when someone unlocks a badge.
Some dev fixtures would be usefull :
An Adventure is defined by:
A Step is defined by:
A adventure is a set of step that can be completed by the user. It defines several steps to fulfill.
Each step, once unlocked, give the user an amount of Nuts and sometimes, a Badge too.
Inspiration display for an adventure:
(Here is a example for 2 adventures. The first is a "Linked" adventure where the progression is linear. The second one is a "Not linked" adventure, each step can be unlocked independently)
Linked or not ? An adventure can defines its steps as linked, or not.
URL to Akeneo on README generates a 404 error :(
Create a tutorial explaining how to use Badger.
I've done this:
https://github.com/akeneo/badger/blob/master/src/Badger/GameBundle/Entity/BadgeInterface.php#L15
But another possibility is to remove "extends TaggableInterface" from this interface, and add "implements TaggableInterface" to "Badge".
I think these 2 implementations are "code-correct", but have not the same "coding sense".
What's your opinion ?
Create an home page with links to all users profile.
And create a /user/profile with badges awarded by user
As a user, be able to "claim" a badge.
As an admin, I can accept a "claim" to deliver the badge. It removes the claim.
The "Game" controllers are used in routes like /admin/xxx/...
This controllers should be renamed in AdminXXXControllers or be placed in a Admin folder, to be able to have a declaration of 2 Controllers managing same entities (one for admin, one for front).
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.