Git Product home page Git Product logo

badgingapi's Introduction

DEI Project Badging

About DEI Project Badging

The DEI Project Badging Initiative is a CHAOSS that awards badges to open-source projects that demonstrate diversity and inclusion. This initiative promotes leadership, self-reflection, and self-improvement on issues critical to building the Internet as a social good.

The DEI project badges help open source project maintainers showcase their ongoing commitment to improving and supporting diversity, equity, and inclusion.

How does DEI Project Badging work?

  • Open Source projects submit their project repository containing a DEI.md file. Check out what a DEI.md file entails and how to create one here.

  • The project badging scanner bot will search through the DEI.md file in the specified repository for evidence of required metrics.

  • Once the scan is complete, the project will receive a markdown snippet that can be included in the README.md as an image of the DEI Project Badge earned.

  • Upon the conclusion of each badging level, the project receives an inclusive language report on how to improve its DEI efforts in order to apply for and earn the next badging level. Badging process

Badging Levels

Currently, the DEI Project Badge is available in one level

Level Badge Requirements Met
Bronze Bronze Badge Presence of DEI.md File

Contributing to this Project

This is a living repository, meaning we are very open to changes and improvements. We follow the GitHub pull-request workflow. More details on specifically what that means can be found in the CONTRIBUTING.md file. If you would like to contribute but aren't sure how to go about doing so, please reach out to the community on Slack or Elizabeth Barron (@ElizabethN). We are happy to help!

Don't forget to give the project a star! Thanks again!

Acknowledgments

Our heartfelt gratitude to all the maintainers of this project. Thank you for your ongoing efforts to maintain and nurture this project.

badgingapi's People

Stargazers

 avatar

Watchers

 avatar  avatar

badgingapi's Issues

migrate event badging badged events to database

This issue aims at moving the current events table from https://github.com/badging/event-diversity-and-inclusion/blob/main/README.md#badges-granted-version-3 to https://badging.chaoss.community/event-badging

But before the front end is implemented, there is a need to create a database table that will store these events. the table will have the same columns as the current table above and rely on the bot automation to save events to the database.

there is a need to find a way to populate the database table with all the previous events. This may call for scrapping the readme table and manually filling the table.

Tools and tech:

  1. MySQL
  2. Node
  3. GitHub API

fix the `help` command

the help.js code has placeholder comments that need to be fixed to add meaningful information to both the reviewer and the applicant. by the user issuing the /help command, the help code can trigger information in the comment section that is helpful to them whether they are applicants or reviewers.

link to placeholder file -> https://github.com/badging/badging-bot/blob/main/src/help.js

A good starting point for that information would be here.

Implement `zero downtime` by message queuing.

Is your feature request related to a problem? Please describe.
Currently when there is a new deployment/build, the old docker container is deleted and the process creates a downtime which fails some requests from processing.

Describe the solution you'd like
The solution is to implement a message queue that handles and monitors the success of requests separately. this will be done with RabbitMQ

Describe alternatives you've considered
I had also considered load balancing which is a faster approach but would require some extra resources but didn't look into into extensively.

The Bot issues badges twice

The bot should not issue another badge when a project repository has been badged. Instead, an error message should be returned indicating that the project has already been issued a badge.

update documentation

this aims at updating the contents of CONTRIBUTING.md and README.md to include the latest changes in this repo. This issue is not code-related but needs a basic understanding of the programming language used and backend development.

since there was an integration of the badging bot repository into this repository, consider adding the necessary information from the badging bot readme and contributing files too

I am happy to share details of the changes so that we can come up with a detailed README that captures all changes.

Problems finding GitLab repositories using search

Summary

This issues highlights some problem areas using the "Search for Project Repository" after logging in with GitLab on https://badging.chaoss.community/badge

Major problems

  1. No pagination - search is only returning first page of results and no pagination preventing full list of repositories from appearing
  2. No exact match prioritization - search does not have exact match prioritization preventing search for exact repository

Minor annoyances

  1. No repeat search - after entering in the search box the search cannot be used again and no results appear in the dropdown
  2. Spaces required between slashes - when searching for a path directory a space is required before and after slashes. (E.g. GitLab.org / gitlab works but GitLab.org/gitlab brings up nothing)

Source code links relevant for 1 & 2 above:

Notes

Per @zillemarco: "The list of repo is fetched right after the user logged id and an access token was retrieved. After the OAuth generated a token, it scans the repos with the token and returns that back to the frontend."

edit email template

In the response congratulations email:
- The following text MUST be removed as we are not providing this: In the coming 3-4 days, we will share a supplemental report on your project's language inclusivity. This report will provide valuable insights into how inclusive your project's language is to diversw audiences. This report is only a supplement to your DEI Badge and has no impact on current or future badges. The report will only be sent to this email and can be used in any way that you see fit.
- This text MUST be changed to only say CHAOSS DEI Project Bronze Badge: We are thrilled to inform you that your recent review submission of your Open Source Project has been recognized and rewarded an All In CHAOSS DEI Bronze badge.

Generate .md files messages from badging bot repo instead of events-diversity-and-inclusion repo directory

Description:

The badging bot messages/responses, for example: Welcome messages, Checklists, etc., are currently generated from the event-diversity-and-inclusion repository. These messages are stored in the .github directory in the form of .md files of the event-diversity-and-inclusion repository and are accessed through the GitHub API.

For proper management, debugging, and contribution follow-up, this issue will move the files to this repo.

Solution:

Migrating the .github folder to the badging bot repository/directory

code cleaning

This issue is intended to clean up some aspects of the code. This issue focuses on;

  • removing all the redundant code that was commented out

  • commenting on the necessary comments

  • change the casing to match the following rules:

  1. Variables and functions: CamelCase
  2. Classes and constructors: PascalCase
  3. Filenames, constants, and environment variables: Snake_case
  4. HTML attributes and CSS class names: Kebab-case

While you are doing so, Please make sure your code never breaks in any way. Be sure to always be running the dev server

create better admin logging tray for running docker container that is accesible outside the server

Currently, there are actions and processes we can't track unless we log into the server and look at the logs of the docker containers or nginx servers.

The goal is to create a protected endpoint accessible only with an admin login. it should be a log sheet summarising any process happening in the backend. tracking actions, responses from APIs and the server to the user, who logged in, who got signed up, which badges got issued and when. This should also have time stamps and necessary links to the action (if needed).

The logs will be deleted after a certain period or when they reach a certain level of memory.

Skills:
Docker
Linux
Shell Scripting
Node
Nginx
GitHub API

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.