46 lines
1.6 KiB
ReStructuredText
46 lines
1.6 KiB
ReStructuredText
.. _current_implementation_frontend:
|
|
|
|
Badges frontend
|
|
===============
|
|
|
|
Tahrir is the name given to the web interface that allows service users to view the
|
|
badges they have been awarded, view those awarded to other community members, and grant
|
|
special badges. Additionally, Fedora Badges admins also use the web interface to add new
|
|
badges into the database.
|
|
|
|
- Source repository: https://github.com/fedora-infra/tahrir
|
|
- Production deployment: https://badges.fedoraproject.org/
|
|
- Production location: badges-web01.iad2.fedoraproject.org
|
|
|
|
Note: The `badges artworks <https://pagure.io/fedora-badges/blob/master/f/pngs>`_ are
|
|
stored in the `Fedora Badges repository <https://pagure.io/Fedora-Badges>`_, and when
|
|
new rules are added, copied over to the production location (i.e. badges-web01 server)
|
|
using the `push-badges manual playbook
|
|
<https://pagure.io/fedora-infra/ansible/blob/main/f/playbooks/manual/push-badges.yml>`_.
|
|
|
|
Technology used
|
|
---------------
|
|
|
|
The web interface is written in Python 2 and uses Pyramid as a web framework with Mako
|
|
templates.
|
|
|
|
Usecases
|
|
--------
|
|
|
|
The following are the usecases of the web interface of Fedora Badges.
|
|
|
|
User usecases
|
|
~~~~~~~~~~~~~
|
|
|
|
- View the badges that a particular user has
|
|
- View the leaderboard of badges
|
|
- View the details of a specific badge
|
|
- Get granted a badge (via a link or QR code)
|
|
- Give a badge to another user (if I have permissions on that badge)
|
|
|
|
Admin usecases
|
|
~~~~~~~~~~~~~~
|
|
|
|
- Add a new badge to the database
|
|
- Give grant permissions to a user for a specific badge
|
|
- Create an invitation so users can get a badge via a QR code / link
|