• Stars
    star
    145
  • Rank 254,144 (Top 6 %)
  • Language
    JavaScript
  • License
    MIT License
  • Created about 1 year ago
  • Updated 5 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Rate GitHub Repos for Developer Experience (DX)

RepoRater

RepoRater

This project allows you to rate GitHub Repositories from the Developer Experience (DX) perspective.

When considering your rating here are a few points you might like to think about:

  • does the Repo have a helpful community?
  • does the Repo have good documentation to enable you to get started?
  • are the maintainers supportive and do they provide useful feedback?

Features

  • Login with GitHub OAuth
  • Rate a Repo
  • List all Repos
  • List popular Repos
  • Leaderboard of most active users
  • README badges
  • Search Repos

Want to see any other features? Open an issue and let us know.

Screenshots

repo-rater-laptop

Technologies used

Quickstart for development

  1. Sign up to Appwrite and create a project (free)
  2. Create database
  3. Create collections app with the attributes
    • ratings: integer
    • repos: integer
    • stars: integer
    • create empty document with 0 for each attribute
  4. Create collections ratings with the attributes
    • url: url
    • username: string (128)
    • rating: integer
  5. Create collections repos with the attributes
    • url: url
    • description: string (1024)
    • name: string (128, required)
    • votes: integer
    • rating: float
    • owner: string (128)
    • logo: string (512)
    • language: string (32)
    • topics: string with option array (1024)
    • stars: integer
  6. Copy .env.example template file to .env (You can get these values from your Appwrite project settings)
  7. Get you private keys from Appwrite (Overview > Integrations > "API Keys" tab > "+ Create API key" button) and add them to .env template (all data are required)
  8. Create an OAuth app on GitHub and connect it with Appwrite Authentication
  9. On collections ratings and repos enable read permissions for all users
  10. Create index on collection repos, named url_search with the attribute url and type fulltext
  11. Run the development server with:
npm ci
npm run dev
  1. Open http://localhost:3000 with your browser to see the result.

RepoRater Badge in your README

Add the following markdown to your README to show your RepoRater badge and link to rate your repository.

RepoRater

[![RepoRater](https://repo-rater.eddiehub.io/api/badge?owner=EddieHubCommunity&name=RepoRater)](https://repo-rater.eddiehub.io/rate?owner=EddieHubCommunity&name=RepoRater)

Change the owner and name parameters to your GitHub org/username and repository name.

Badge Style

The default badge is "flat" but there are other styles if you prefer. This is done by appending the url with the style parameter.

Here are the options with examples:

style badge
flat flat
flat-square flat-square
for-the-badge for-the-badge
plastic plastic
social social

Badge Format

The default badge format is to show the average rating out of 5. You can also show the percentage. This is done by appending the url with the format parameter.

RepoRater

[![RepoRater](https://repo-rater.eddiehub.io/api/badge?owner=EddieHubCommunity&name=RepoRater)](https://repo-rater.eddiehub.io/rate?owner=EddieHubCommunity&name=RepoRater&format=percentage)
format badge
number RepoRater
percentage RepoRater

GitHub Action

Automatically comment on Issues and Pull Requests to get votes

name: repo-rater
run-name: repo-rater (#${{ github.event.issue.number || github.event.pull_request.number }})

permissions:
  issues: write
  pull-requests: write

on:
  issues:
    types: [closed]
  pull_request:
    types: [closed]

jobs:
  repo-rater:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: xkrishguptaa/action-repo-rater@v1
        with:
          github-token: ${{ secrets.GITHUB_TOKEN }}

More details https://github.com/xkrishguptaa/action-repo-rater

API (for your 3rd party apps)

You can consume our data for your own apps.

User Leaderboard

GET https://repo-rater.eddiehub.io/api/leaderboard

[
  {
    "username": "eddiejaoude",
    "votes": 5,
    "stars": 13
  },
  {
    "username": "SaraJaoude",
    "votes": 3,
    "stars": 5
  },
  {
    "username": "test2",
    "votes": 2,
    "stars": 9
  }
]

Popular Repos

GET https://repo-rater.eddiehub.io/api/popular

Optional paramater ?minimumVotes=5 (default is 5)

[
  {
    "url": "https://github.com/appwrite/appwrite",
    "logo": "https://avatars.githubusercontent.com/u/25003669?v=4",
    "description": "Build like a team of hundreds_",
    "rating": 4.9,
    "votes": 310,
    "owner": "appwrite",
    "name": "appwrite",
    "badgeViews": 321
  },
  {
    "url": "https://github.com/EddieHubCommunity/BioDrop",
    "logo": "https://avatars.githubusercontent.com/u/66388388?v=4",
    "description": "Connect to your audience with a single link. Showcase the content you create and your projects in one place. Make it easier for people to find, follow and subscribe.",
    "rating": 4.75,
    "votes": 49,
    "owner": "EddieHubCommunity",
    "name": "BioDrop",
    "badgeViews": 109
  }
]

All Repos with Search

GET https://repo-rater.eddiehub.io/api/repos

Optional paramater ?keyword=EddieHub

[
  {
    "url": "https://github.com/EddieHubCommunity/BioDrop",
    "logo": "https://avatars.githubusercontent.com/u/66388388?v=4",
    "description": "Connect to your audience with a single link. Showcase the content you create and your projects in one place. Make it easier for people to find, follow and subscribe.",
    "rating": 4.75,
    "votes": 49,
    "owner": "EddieHubCommunity",
    "name": "BioDrop",
    "badgeViews": 321
  },
  {
    "url": "https://github.com/EddieHubCommunity/RepoRater",
    "logo": "https://avatars.githubusercontent.com/u/66388388?v=4",
    "description": "Connect to your audience with a single link. Showcase the content you create and your projects in one place. Make it easier for people to find, follow and subscribe.",
    "rating": 4.6,
    "votes": 12,
    "owner": "EddieHubCommunity",
    "name": "RepoRater",
    "badgeViews": 98
  }
]

App stats

GET https://repo-rater.eddiehub.io/api/stats

{
  "ratings": 1137,
  "repos": 657,
  "stars": 53,
  "$createdAt": "2023-12-24T07:41:21.204+00:00",
  "$updatedAt": "2024-01-02T20:42:33.660+00:00"
}

Community

Come and chat with the community in the EddieHub Discord http://discord.eddiehub.org

More Repositories

1

BioDrop

Connect to your audience with a single link. Showcase the content you create and your projects in one place. Make it easier for people to find, follow and subscribe.
JavaScript
5,738
star
2

awesome-github-profiles

List of GitHub profiles that have awesome customisation, that you can use for inspiration
HTML
1,469
star
3

open-source-practice

Repo for you to raise a Pull Request for practice
691
star
4

good-first-issue-finder

Issue-Crawler for GitHub based on Sveltekit
Svelte
527
star
5

support

Community Help & Support and AEA (Ask Everyone Anything)
341
star
6

EddieBot

Inclusive words Discord bot (no more "hey guys")
TypeScript
174
star
7

EddieHubCommunity.github.io

Information about our community
JavaScript
150
star
8

api

API to manage our community data
TypeScript
70
star
9

EddieHubLive

Map to show EddieHub contributors
JavaScript
47
star
10

EventCalendar

Community events from TwitterSpaces to Live streams to Conferences
JavaScript
39
star
11

HealthCheck

Checks how friendly your Open Source project is and suggests improvements! Sponsored by @Flagsmith
JavaScript
36
star
12

CreatorsRegistry

A place for Creators to get paid for their content 💰. Companies don't only look for big influencers but also micro influencers. Join the platform and let them find you!
JavaScript
36
star
13

gh-action-community

GitHub Action for the Community, from welcoming first timers to badges
JavaScript
35
star
14

gh-actions-html-table-generator

Read from a json file and write to the README
JavaScript
34
star
15

.github

EddieHub Org
29
star
16

gh-action-open-source-labels

Issue labels using Open Source labels standards
26
star
17

Hackathons

Information and assets from hackathons by EddieHub community members
Java
26
star
18

DailyTips

Get daily coding tips right to your favourite notifications
TypeScript
21
star
19

Branding

Branding repo for EddieHub community
HTML
21
star
20

infrastructure

EddieHub apps infrastructure as code
TypeScript
20
star
21

EddieBotBreakout

Discord bot to create breakout rooms
TypeScript
16
star
22

EddieBotUI

EddieBotUI is the front end application that shows Eddie Jaoude Discord Community's public stats.
JavaScript
16
star
23

monitoring

Monitor our deployed websites
Markdown
15
star
24

template

Template repo with docs and GitHub Actions etc
9
star
25

LiveStream-GitOps-Demo

GitOps live stream repo for EddieBot
JavaScript
8
star
26

BioDropDesign

Design repo for the BioDrop project
8
star
27

transcriptions

Community transcriptions for videos
5
star
28

github-trending-repos

Has your repo been trending on GitHub and you missed it?
TypeScript
4
star
29

maintainers-tool

A tool to help maintainers
TypeScript
4
star
30

RepoRater-Chrome

Chrome extension for RepoRater
TypeScript
3
star