From a8a61600b2cf67a90476173e8b8d4b6617e7fb8f Mon Sep 17 00:00:00 2001 From: elhmn Date: Wed, 7 Aug 2024 09:47:59 +0200 Subject: [PATCH] Managed to get the whole thing working with docker compose --- .gitattributes | 2 + api/Dockerfile | 3 +- api/Makefile | 2 +- .../main/utils/database/search_projects.py | 15 +- api/app/main/utils/database/search_users.py | 6 + api/app/main/utils/database/storage.py | 13 - .../main/utils/database/twitter/top_tweets.py | 53 +- api/requirements.txt | 50 +- docker-compose.yml | 44 +- .../setup-datastore/fixtures/projects.json | 2069 +---------------- scripts/setup-datastore/fixtures/users.json | 685 +----- tools/meilisearch-index-generator/Dockerfile | 20 +- tools/meilisearch-index-generator/Makefile | 2 +- tools/meilisearch-index-generator/app/cli.py | 22 +- .../app/utils/database/projects.py | 54 +- .../app/utils/database/users.py | 55 +- .../data/projects.json | 3 + .../data/users.json | 3 + .../requirements.txt | 48 +- 19 files changed, 147 insertions(+), 3002 deletions(-) create mode 100644 .gitattributes create mode 100644 tools/meilisearch-index-generator/data/projects.json create mode 100644 tools/meilisearch-index-generator/data/users.json diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 00000000..39ac68da --- /dev/null +++ b/.gitattributes @@ -0,0 +1,2 @@ +users.json filter=lfs diff=lfs merge=lfs -text +projects.json filter=lfs diff=lfs merge=lfs -text diff --git a/api/Dockerfile b/api/Dockerfile index 9e7ebb23..7cb0fc27 100644 --- a/api/Dockerfile +++ b/api/Dockerfile @@ -3,7 +3,7 @@ FROM python:3.8-slim-buster # https://smirnov-am.github.io/running-flask-in-production-with-docker/ # https://abdul-the-coder.medium.com/how-to-deploy-a-containerised-python-web-application-with-docker-flask-and-uwsgi-8862a08bd5df -RUN apt update && apt install git gcc nginx build-essential systemd systemd-sysv -y +RUN apt update && apt install git gcc nginx build-essential systemd systemd-sysv curl procps lsof -y RUN pip install uwsgi @@ -23,7 +23,6 @@ ENV PYHTONUNBUFFERED 1 # set user to `user` USER user - RUN mkdir /home/user/code WORKDIR /home/user/code ADD ./requirements.txt ./ diff --git a/api/Makefile b/api/Makefile index 1b59e091..6ce5021c 100644 --- a/api/Makefile +++ b/api/Makefile @@ -20,7 +20,7 @@ install-deps: venv $(CONFIG_FILE) ##run: run the api locally run: install-deps - GOOGLE_APPLICATION_CREDENTIALS=.secrets/service-account.json $(PYTHON) manage.py run + $(PYTHON) manage.py run lint: venv $(PYTHON) -m flake8 . --show-source --statistics diff --git a/api/app/main/utils/database/search_projects.py b/api/app/main/utils/database/search_projects.py index 63570fa9..384b51b7 100644 --- a/api/app/main/utils/database/search_projects.py +++ b/api/app/main/utils/database/search_projects.py @@ -11,7 +11,7 @@ def get_search_projects(query: str, count: int = 20, page: int = 1): """ - get_search_users [this method search for users in our datastore + get_search_projects [this method search for projects in our datastore @params : query, count, page @returns : - code : the status code of the request @@ -22,6 +22,7 @@ def get_search_projects(query: str, count: int = 20, page: int = 1): offset = (page - 1) * count client = meilisearch.Client(MEILISEARCH_HOST, MEILISEARCH_MASTER_KEY) + client.index(storage.KIND_PROJECTS).update_pagination_settings({'maxTotalHits': 5000}) index = client.get_index(storage.KIND_PROJECTS) ret = index.search( storage.KIND_PROJECTS, {"q": query, "limit": count, "offset": offset} @@ -29,6 +30,8 @@ def get_search_projects(query: str, count: int = 20, page: int = 1): if not ret or len(ret) < 1: return {"code": 400, "reason": "nothing found"} + ret["nbHits"] = ret["estimatedTotalHits"] + response = { "code": 200, "status": "success", @@ -47,7 +50,7 @@ def build_project_filters(languages): for i in range(len_lang): langs += f'language = "{languages[i]}"' if i != len_lang - 1: - langs += " OR " + langs += " " filters = langs return filters @@ -98,6 +101,8 @@ def post_search_projects( offset = (page - 1) * count filters = build_project_filters(languages) client = meilisearch.Client(MEILISEARCH_HOST, MEILISEARCH_MASTER_KEY) + client.index(storage.KIND_PROJECTS).update_pagination_settings({'maxTotalHits': 5000}) + index = client.get_index(storage.KIND_PROJECTS) # if sort_type is not specified or not supported @@ -108,7 +113,7 @@ def post_search_projects( ]: query_object = {"q": query, "limit": count, "offset": offset} if filters != "": - query_object["filters"] = filters + query_object["q"] += " " + filters ret = index.search( storage.KIND_PROJECTS, query_object, @@ -120,7 +125,7 @@ def post_search_projects( else: query_object = {"q": query, "limit": 1000} if filters != "": - query_object["filters"] = filters + query_object["q"] += " " + filters ret = index.search(storage.KIND_PROJECTS, query_object) if not ret or len(ret) < 1: return {"code": 400, "reason": "nothing found"} @@ -129,6 +134,8 @@ def post_search_projects( ret["offset"] = offset ret["limit"] = count + ret["nbHits"] = ret["estimatedTotalHits"] + response = { "code": 200, "status": "success", diff --git a/api/app/main/utils/database/search_users.py b/api/app/main/utils/database/search_users.py index b4524162..e0d41cf0 100644 --- a/api/app/main/utils/database/search_users.py +++ b/api/app/main/utils/database/search_users.py @@ -22,6 +22,7 @@ def get_search_users(query: str, count: int = 20, page: int = 1): offset = (page - 1) * count client = meilisearch.Client(MEILISEARCH_HOST, MEILISEARCH_MASTER_KEY) + client.index(storage.KIND_USERS).update_pagination_settings({'maxTotalHits': 5000}) index = client.get_index(storage.KIND_USERS) ret = index.search( storage.KIND_USERS, {"q": query, "limit": count, "offset": offset} @@ -29,6 +30,8 @@ def get_search_users(query: str, count: int = 20, page: int = 1): if not ret or len(ret) < 1: return {"code": 400, "reason": "nothing found"} + ret["nbHits"] = ret["estimatedTotalHits"] + response = { "code": 200, "status": "success", @@ -75,6 +78,7 @@ def post_search_users( offset = (page - 1) * count client = meilisearch.Client(MEILISEARCH_HOST, MEILISEARCH_MASTER_KEY) + client.index(storage.KIND_USERS).update_pagination_settings({'maxTotalHits': 5000}) index = client.get_index(storage.KIND_USERS) # if sort_type is not specified or not supported @@ -101,6 +105,8 @@ def post_search_users( ret["offset"] = offset ret["limit"] = count + ret["nbHits"] = ret["estimatedTotalHits"] + response = { "code": 200, "status": "success", diff --git a/api/app/main/utils/database/storage.py b/api/app/main/utils/database/storage.py index 9459c768..5fc720c1 100644 --- a/api/app/main/utils/database/storage.py +++ b/api/app/main/utils/database/storage.py @@ -1,15 +1,2 @@ -from google.cloud import datastore - -# For the gcloud auth to work properly this env variable should be set -# GOOGLE_APPLICATION_CREDENTIALS=.secrets/service-account.json - KIND_USERS = "github_users" KIND_PROJECTS = "github_projects" -__CLIENT = None - - -def get_client(): - global __CLIENT - if __CLIENT is None: - __CLIENT = datastore.Client() - return __CLIENT diff --git a/api/app/main/utils/database/twitter/top_tweets.py b/api/app/main/utils/database/twitter/top_tweets.py index 4eec7fa7..80042a36 100644 --- a/api/app/main/utils/database/twitter/top_tweets.py +++ b/api/app/main/utils/database/twitter/top_tweets.py @@ -1,10 +1,3 @@ -import requests -from requests_oauthlib import OAuth1 -from app.settings import API_KEY, API_SECRET_KEY -from app.main.utils.helpers.commons import get_trace -import json - - def top_tweets(cache: object, count: int): """ This method will return top-tweets @@ -14,28 +7,7 @@ def top_tweets(cache: object, count: int): return boolean telling if everything went well [top-tweets] as string """ - if cache.get("top-tweets") is None: - try: - # we make another request - # to the twitter api - print(">> Hitting twitter api...") - - search_twitter_host = "https://api.twitter.com/1.1/search/tweets.json" - tweets = requests.get( - "{}?q=%23caparledev%20-filter%3Aretweets&count={}".format(search_twitter_host, str(count)), - auth=OAuth1(API_KEY, API_SECRET_KEY) - ).content.decode() - - # and we cache it as json string for 1h - cache.set("top-tweets", tweets, 3600) - except Exception: - # We just print the trace-back here - get_trace() - return (False, cache.get("top-tweets")) - else: - print("<< Getting from cache...") - - return (True, cache.get("top-tweets")) + return "" def get_top_tweets(cache: object, count: int): @@ -44,25 +16,4 @@ def get_top_tweets(cache: object, count: int): the appropriate status code for the request """ - - results = top_tweets(cache, count) - - if results[0]: - payload = json.loads(results[1]) - if "errors" in payload: - return { - "code": 500, - "status": "error", - "result": payload - } - else: - return { - "code": 200, - "status": "success", - "result": payload - } - else: - return { - "code": 500, - "status": "error" - } + return "" diff --git a/api/requirements.txt b/api/requirements.txt index e553b594..925c31ea 100644 --- a/api/requirements.txt +++ b/api/requirements.txt @@ -1,22 +1,38 @@ -# prod deps +aniso8601==9.0.1 +annotated-types==0.7.0 +attrs==24.2.0 +camel-converter==3.1.2 +certifi==2024.7.4 +charset-normalizer==3.3.2 +click==7.1.2 +flake8==4.0.1 Flask==1.1.4 -Flask-Cors==3.0.10 +Flask-Cors==4.0.1 +flask-restplus==0.13.0 Flask-Script==2.0.6 -Flask-Restplus==0.13.0 -google-api-core==2.3.0 -google-auth==2.3.3 -google-cloud-core==2.2.1 -google-cloud-datastore==2.4.0 -googleapis-common-protos==1.54.0 -protobuf==3.19.1 +idna==3.7 +iniconfig==2.0.0 +itsdangerous==1.1.0 +Jinja2==2.11.3 +jsonschema==4.23.0 +jsonschema-specifications==2023.12.1 MarkupSafe==2.0.1 -requests==2.26.0 -requests-oauthlib==1.3.0 -configparser==5.2.0 -meilisearch==0.17.0 -Werkzeug==0.16.1 - -# dev deps -flake8==4.0.1 +mccabe==0.6.1 +meilisearch==0.31.4 +packaging==24.1 +pluggy==1.5.0 +py==1.11.0 +pycodestyle==2.8.0 +pydantic==2.8.2 +pydantic_core==2.20.1 pyflakes==2.4.0 pytest==6.2.5 +pytz==2024.1 +referencing==0.35.1 +requests==2.32.3 +rpds-py==0.20.0 +six==1.16.0 +toml==0.10.2 +typing_extensions==4.12.2 +urllib3==2.2.2 +Werkzeug==0.16.1 diff --git a/docker-compose.yml b/docker-compose.yml index 9317f3b7..255408e6 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,67 +1,35 @@ -version: '3' - services: - #find a way to tear this down after the init scripts has worked - setup-datastore: - build: ./scripts/setup-datastore/ - command: ["/wait-for-it/wait-for-it.sh", "datastore:8000", "--", "make", "run-with-emulator"] - depends_on: - - datastore - environment: - MEILISEARCH_HOST: http://meilisearch:7700 - GOOGLE_APPLICATION_CREDENTIALS: /tmp/key/creds.json - GCLOUD_PROJECT: pname - DATASTORE_EMULATOR_HOST: datastore:8000 - DATASTORE_PROJECT_ID: pname - volumes: - - ./scripts/wait-for-it/:/wait-for-it - #find a way to tear this down after the init scripts has worked setup-meilisearch: build: ./tools/meilisearch-index-generator/ command: ["/wait-for-it/wait-for-it.sh", "meilisearch:7700", "--", "make", "run-with-emulator"] depends_on: - - setup-datastore - meilisearch environment: MEILISEARCH_HOST: http://meilisearch:7700 - GOOGLE_APPLICATION_CREDENTIALS: /tmp/key/creds.json - GCLOUD_PROJECT: pname - DATASTORE_EMULATOR_HOST: datastore:8000 - DATASTORE_PROJECT_ID: pname + MEILISEARCH_MASTER_KEY: meilisearch-master-key volumes: - ./scripts/wait-for-it/:/wait-for-it meilisearch: - image: getmeili/meilisearch + image: getmeili/meilisearch:v1.9 volumes: - ./data.ms:/data.ms + environment: + MEILI_MASTER_KEY: meilisearch-master-key ports: - 7700:7700 - datastore: - build: - context: ./gcloud-emulator/ - dockerfile: Dockerfile-datastore - command: gcloud beta emulators datastore start --project=pname --host-port 0.0.0.0:8000 --no-store-on-disk - ports: - - 8000:8000 - api: build: ./api depends_on: - setup-meilisearch - - setup-datastore environment: MEILISEARCH_HOST: http://meilisearch:7700 - GOOGLE_APPLICATION_CREDENTIALS: /tmp/key/creds.json - GCLOUD_PROJECT: pname - DATASTORE_EMULATOR_HOST: datastore:8000 - DATASTORE_PROJECT_ID: pname + MEILISEARCH_MASTER_KEY: meilisearch-master-key ports: - 8811:8811 - frontend: build: ./frontend depends_on: @@ -70,4 +38,4 @@ services: REACT_APP_API_BASE_URL: http://localhost:8811 REACT_ENV: development ports: - - 3000:3000 + - 3000:3000 diff --git a/scripts/setup-datastore/fixtures/projects.json b/scripts/setup-datastore/fixtures/projects.json index 84355772..b36271ee 100644 --- a/scripts/setup-datastore/fixtures/projects.json +++ b/scripts/setup-datastore/fixtures/projects.json @@ -1,2066 +1,3 @@ -[ - { - "pushed_at": "2013-01-13T06:33:52Z", - "contributors_url": "https://api.github.com/repos/efbeka/node-openerp/contributors", - "language": "JavaScript", - "subscription_url": "https://api.github.com/repos/efbeka/node-openerp/subscription", - "has_issues": true, - "teams_url": "https://api.github.com/repos/efbeka/node-openerp/teams", - "merges_url": "https://api.github.com/repos/efbeka/node-openerp/merges", - "owner": { - "events_url": "https://api.github.com/users/efbeka/events{/privacy}", - "subscriptions_url": "https://api.github.com/users/efbeka/subscriptions", - "gists_url": "https://api.github.com/users/efbeka/gists{/gist_id}", - "id": 1089495, - "starred_url": "https://api.github.com/users/efbeka/starred{/owner}{/repo}", - "node_id": "MDQ6VXNlcjEwODk0OTU=", - "organizations_url": "https://api.github.com/users/efbeka/orgs", - "type": "User", - "received_events_url": "https://api.github.com/users/efbeka/received_events", - "gravatar_id": "", - "repos_url": "https://api.github.com/users/efbeka/repos", - "url": "https://api.github.com/users/efbeka", - "html_url": "https://github.com/efbeka", - "login": "efbeka", - "following_url": "https://api.github.com/users/efbeka/following{/other_user}", - "avatar_url": "https://avatars.githubusercontent.com/u/1089495?v=4", - "followers_url": "https://api.github.com/users/efbeka/followers", - "site_admin": false - }, - "url": "https://api.github.com/repos/efbeka/node-openerp", - "ssh_url": "git@github.com:efbeka/node-openerp.git", - "contents_url": "https://api.github.com/repos/efbeka/node-openerp/contents/{+path}", - "milestones_url": "https://api.github.com/repos/efbeka/node-openerp/milestones{/number}", - "description": "The Node.js client library for OpenERP", - "keys_url": "https://api.github.com/repos/efbeka/node-openerp/keys{/key_id}", - "permissions": { - "admin": false, - "pull": true, - "push": false - }, - "name": "node-openerp", - "languages_url": "https://api.github.com/repos/efbeka/node-openerp/languages", - "issue_events_url": "https://api.github.com/repos/efbeka/node-openerp/issues/events{/number}", - "trees_url": "https://api.github.com/repos/efbeka/node-openerp/git/trees{/sha}", - "pulls_url": "https://api.github.com/repos/efbeka/node-openerp/pulls{/number}", - "fork": false, - "created_at": "2013-01-08T03:36:37Z", - "branches_url": "https://api.github.com/repos/efbeka/node-openerp/branches{/branch}", - "node_id": "MDEwOlJlcG9zaXRvcnk3NDk0OTkw", - "updated_at": "2016-08-01T08:22:22Z", - "blobs_url": "https://api.github.com/repos/efbeka/node-openerp/git/blobs{/sha}", - "statuses_url": "https://api.github.com/repos/efbeka/node-openerp/statuses/{sha}", - "open_issues": 0, - "open_issues_count": 0, - "git_commits_url": "https://api.github.com/repos/efbeka/node-openerp/git/commits{/sha}", - "issue_comment_url": "https://api.github.com/repos/efbeka/node-openerp/issues/comments{/number}", - "compare_url": "https://api.github.com/repos/efbeka/node-openerp/compare/{base}...{head}", - "comments_url": "https://api.github.com/repos/efbeka/node-openerp/comments{/number}", - "hooks_url": "https://api.github.com/repos/efbeka/node-openerp/hooks", - "clone_url": "https://github.com/efbeka/node-openerp.git", - "has_pages": false, - "git_refs_url": "https://api.github.com/repos/efbeka/node-openerp/git/refs{/sha}", - "downloads_url": "https://api.github.com/repos/efbeka/node-openerp/downloads", - "license": { - "name": "MIT License", - "node_id": "MDc6TGljZW5zZTEz", - "url": "https://api.github.com/licenses/mit", - "key": "mit", - "spdx_id": "MIT" - }, - "has_wiki": true, - "git_url": "git://github.com/efbeka/node-openerp.git", - "forks_count": 7, - "archived": false, - "forks_url": "https://api.github.com/repos/efbeka/node-openerp/forks", - "default_branch": "master", - "git_tags_url": "https://api.github.com/repos/efbeka/node-openerp/git/tags{/sha}", - "has_projects": true, - "size": 102, - "issues_url": "https://api.github.com/repos/efbeka/node-openerp/issues{/number}", - "collaborators_url": "https://api.github.com/repos/efbeka/node-openerp/collaborators{/collaborator}", - "id": 7494990, - "full_name": "efbeka/node-openerp", - "releases_url": "https://api.github.com/repos/efbeka/node-openerp/releases{/id}", - "events_url": "https://api.github.com/repos/efbeka/node-openerp/events", - "mirror_url": null, - "html_url": "https://github.com/efbeka/node-openerp", - "assignees_url": "https://api.github.com/repos/efbeka/node-openerp/assignees{/user}", - "has_downloads": true, - "commits_url": "https://api.github.com/repos/efbeka/node-openerp/commits{/sha}", - "private": false, - "labels_url": "https://api.github.com/repos/efbeka/node-openerp/labels{/name}", - "subscribers_url": "https://api.github.com/repos/efbeka/node-openerp/subscribers", - "homepage": null, - "notifications_url": "https://api.github.com/repos/efbeka/node-openerp/notifications{?since,all,participating}", - "archive_url": "https://api.github.com/repos/efbeka/node-openerp/{archive_format}{/ref}", - "stargazers_count": 8, - "watchers_count": 8, - "svn_url": "https://github.com/efbeka/node-openerp", - "forks": 7, - "watchers": 8, - "tags_url": "https://api.github.com/repos/efbeka/node-openerp/tags", - "stargazers_url": "https://api.github.com/repos/efbeka/node-openerp/stargazers", - "disabled": false, - "deployments_url": "https://api.github.com/repos/efbeka/node-openerp/deployments" - }, - { - "pulls_url": "https://api.github.com/repos/tatiotir/WandaPOS/pulls{/number}", - "has_issues": true, - "contents_url": "https://api.github.com/repos/tatiotir/WandaPOS/contents/{+path}", - "deployments_url": "https://api.github.com/repos/tatiotir/WandaPOS/deployments", - "subscribers_url": "https://api.github.com/repos/tatiotir/WandaPOS/subscribers", - "disabled": false, - "archive_url": "https://api.github.com/repos/tatiotir/WandaPOS/{archive_format}{/ref}", - "git_refs_url": "https://api.github.com/repos/tatiotir/WandaPOS/git/refs{/sha}", - "languages_url": "https://api.github.com/repos/tatiotir/WandaPOS/languages", - "default_branch": "master", - "issue_events_url": "https://api.github.com/repos/tatiotir/WandaPOS/issues/events{/number}", - "git_commits_url": "https://api.github.com/repos/tatiotir/WandaPOS/git/commits{/sha}", - "subscription_url": "https://api.github.com/repos/tatiotir/WandaPOS/subscription", - "stargazers_count": 16, - "full_name": "tatiotir/WandaPOS", - "downloads_url": "https://api.github.com/repos/tatiotir/WandaPOS/downloads", - "created_at": "2014-09-16T21:31:30Z", - "keys_url": "https://api.github.com/repos/tatiotir/WandaPOS/keys{/key_id}", - "html_url": "https://github.com/tatiotir/WandaPOS", - "id": 24118523, - "clone_url": "https://github.com/tatiotir/WandaPOS.git", - "forks_count": 25, - "watchers_count": 16, - "homepage": null, - "url": "https://api.github.com/repos/tatiotir/WandaPOS", - "collaborators_url": "https://api.github.com/repos/tatiotir/WandaPOS/collaborators{/collaborator}", - "fork": false, - "milestones_url": "https://api.github.com/repos/tatiotir/WandaPOS/milestones{/number}", - "language": "Java", - "merges_url": "https://api.github.com/repos/tatiotir/WandaPOS/merges", - "compare_url": "https://api.github.com/repos/tatiotir/WandaPOS/compare/{base}...{head}", - "owner": { - "received_events_url": "https://api.github.com/users/tatiotir/received_events", - "events_url": "https://api.github.com/users/tatiotir/events{/privacy}", - "gists_url": "https://api.github.com/users/tatiotir/gists{/gist_id}", - "starred_url": "https://api.github.com/users/tatiotir/starred{/owner}{/repo}", - "organizations_url": "https://api.github.com/users/tatiotir/orgs", - "html_url": "https://github.com/tatiotir", - "avatar_url": "https://avatars.githubusercontent.com/u/7286940?v=4", - "subscriptions_url": "https://api.github.com/users/tatiotir/subscriptions", - "gravatar_id": "", - "url": "https://api.github.com/users/tatiotir", - "type": "User", - "followers_url": "https://api.github.com/users/tatiotir/followers", - "node_id": "MDQ6VXNlcjcyODY5NDA=", - "id": 7286940, - "site_admin": false, - "following_url": "https://api.github.com/users/tatiotir/following{/other_user}", - "repos_url": "https://api.github.com/users/tatiotir/repos", - "login": "tatiotir" - }, - "contributors_url": "https://api.github.com/repos/tatiotir/WandaPOS/contributors", - "issue_comment_url": "https://api.github.com/repos/tatiotir/WandaPOS/issues/comments{/number}", - "watchers": 16, - "has_downloads": true, - "assignees_url": "https://api.github.com/repos/tatiotir/WandaPOS/assignees{/user}", - "has_projects": true, - "hooks_url": "https://api.github.com/repos/tatiotir/WandaPOS/hooks", - "svn_url": "https://github.com/tatiotir/WandaPOS", - "size": 98398, - "open_issues_count": 2, - "labels_url": "https://api.github.com/repos/tatiotir/WandaPOS/labels{/name}", - "commits_url": "https://api.github.com/repos/tatiotir/WandaPOS/commits{/sha}", - "blobs_url": "https://api.github.com/repos/tatiotir/WandaPOS/git/blobs{/sha}", - "name": "WandaPOS", - "updated_at": "2020-07-28T18:03:46Z", - "forks_url": "https://api.github.com/repos/tatiotir/WandaPOS/forks", - "tags_url": "https://api.github.com/repos/tatiotir/WandaPOS/tags", - "statuses_url": "https://api.github.com/repos/tatiotir/WandaPOS/statuses/{sha}", - "has_wiki": true, - "permissions": { - "admin": false, - "pull": true, - "push": false - }, - "description": "WandaPOS = Unicenta POS + ActiveMQ + ERP(iDempiere) Integration", - "comments_url": "https://api.github.com/repos/tatiotir/WandaPOS/comments{/number}", - "stargazers_url": "https://api.github.com/repos/tatiotir/WandaPOS/stargazers", - "forks": 25, - "issues_url": "https://api.github.com/repos/tatiotir/WandaPOS/issues{/number}", - "git_tags_url": "https://api.github.com/repos/tatiotir/WandaPOS/git/tags{/sha}", - "archived": false, - "trees_url": "https://api.github.com/repos/tatiotir/WandaPOS/git/trees{/sha}", - "pushed_at": "2015-07-18T02:30:57Z", - "teams_url": "https://api.github.com/repos/tatiotir/WandaPOS/teams", - "ssh_url": "git@github.com:tatiotir/WandaPOS.git", - "mirror_url": null, - "private": false, - "license": null, - "node_id": "MDEwOlJlcG9zaXRvcnkyNDExODUyMw==", - "releases_url": "https://api.github.com/repos/tatiotir/WandaPOS/releases{/id}", - "branches_url": "https://api.github.com/repos/tatiotir/WandaPOS/branches{/branch}", - "has_pages": false, - "open_issues": 2, - "git_url": "git://github.com/tatiotir/WandaPOS.git", - "notifications_url": "https://api.github.com/repos/tatiotir/WandaPOS/notifications{?since,all,participating}", - "events_url": "https://api.github.com/repos/tatiotir/WandaPOS/events" - }, - { - "branches_url": "https://api.github.com/repos/larrytech7/IceBase/branches{/branch}", - "created_at": "2015-03-01T14:28:04Z", - "archived": false, - "has_projects": true, - "collaborators_url": "https://api.github.com/repos/larrytech7/IceBase/collaborators{/collaborator}", - "watchers": 5, - "watchers_count": 5, - "has_pages": false, - "languages_url": "https://api.github.com/repos/larrytech7/IceBase/languages", - "events_url": "https://api.github.com/repos/larrytech7/IceBase/events", - "fork": false, - "svn_url": "https://github.com/larrytech7/IceBase", - "homepage": "", - "url": "https://api.github.com/repos/larrytech7/IceBase", - "name": "IceBase", - "assignees_url": "https://api.github.com/repos/larrytech7/IceBase/assignees{/user}", - "description": "A NoSQL ORM for android. A strongly object oriented database as it can convert the json data back into the required objects. It is meant to operate like SQLite but using the NoSQL philosophy.", - "git_url": "git://github.com/larrytech7/IceBase.git", - "subscription_url": "https://api.github.com/repos/larrytech7/IceBase/subscription", - "merges_url": "https://api.github.com/repos/larrytech7/IceBase/merges", - "updated_at": "2019-11-05T17:17:30Z", - "subscribers_url": "https://api.github.com/repos/larrytech7/IceBase/subscribers", - "contents_url": "https://api.github.com/repos/larrytech7/IceBase/contents/{+path}", - "pulls_url": "https://api.github.com/repos/larrytech7/IceBase/pulls{/number}", - "mirror_url": null, - "open_issues_count": 0, - "has_wiki": true, - "contributors_url": "https://api.github.com/repos/larrytech7/IceBase/contributors", - "language": "Java", - "clone_url": "https://github.com/larrytech7/IceBase.git", - "downloads_url": "https://api.github.com/repos/larrytech7/IceBase/downloads", - "stargazers_count": 5, - "labels_url": "https://api.github.com/repos/larrytech7/IceBase/labels{/name}", - "releases_url": "https://api.github.com/repos/larrytech7/IceBase/releases{/id}", - "milestones_url": "https://api.github.com/repos/larrytech7/IceBase/milestones{/number}", - "forks": 4, - "default_branch": "master", - "forks_url": "https://api.github.com/repos/larrytech7/IceBase/forks", - "full_name": "larrytech7/IceBase", - "archive_url": "https://api.github.com/repos/larrytech7/IceBase/{archive_format}{/ref}", - "statuses_url": "https://api.github.com/repos/larrytech7/IceBase/statuses/{sha}", - "has_issues": true, - "commits_url": "https://api.github.com/repos/larrytech7/IceBase/commits{/sha}", - "license": null, - "private": false, - "size": 652, - "trees_url": "https://api.github.com/repos/larrytech7/IceBase/git/trees{/sha}", - "keys_url": "https://api.github.com/repos/larrytech7/IceBase/keys{/key_id}", - "issue_comment_url": "https://api.github.com/repos/larrytech7/IceBase/issues/comments{/number}", - "permissions": { - "admin": false, - "push": false, - "pull": true - }, - "node_id": "MDEwOlJlcG9zaXRvcnkzMTQ5ODgzMw==", - "open_issues": 0, - "git_refs_url": "https://api.github.com/repos/larrytech7/IceBase/git/refs{/sha}", - "issue_events_url": "https://api.github.com/repos/larrytech7/IceBase/issues/events{/number}", - "tags_url": "https://api.github.com/repos/larrytech7/IceBase/tags", - "html_url": "https://github.com/larrytech7/IceBase", - "compare_url": "https://api.github.com/repos/larrytech7/IceBase/compare/{base}...{head}", - "ssh_url": "git@github.com:larrytech7/IceBase.git", - "git_commits_url": "https://api.github.com/repos/larrytech7/IceBase/git/commits{/sha}", - "comments_url": "https://api.github.com/repos/larrytech7/IceBase/comments{/number}", - "pushed_at": "2016-03-25T22:22:56Z", - "notifications_url": "https://api.github.com/repos/larrytech7/IceBase/notifications{?since,all,participating}", - "hooks_url": "https://api.github.com/repos/larrytech7/IceBase/hooks", - "blobs_url": "https://api.github.com/repos/larrytech7/IceBase/git/blobs{/sha}", - "issues_url": "https://api.github.com/repos/larrytech7/IceBase/issues{/number}", - "deployments_url": "https://api.github.com/repos/larrytech7/IceBase/deployments", - "forks_count": 4, - "git_tags_url": "https://api.github.com/repos/larrytech7/IceBase/git/tags{/sha}", - "owner": { - "url": "https://api.github.com/users/larrytech7", - "followers_url": "https://api.github.com/users/larrytech7/followers", - "html_url": "https://github.com/larrytech7", - "received_events_url": "https://api.github.com/users/larrytech7/received_events", - "site_admin": false, - "subscriptions_url": "https://api.github.com/users/larrytech7/subscriptions", - "events_url": "https://api.github.com/users/larrytech7/events{/privacy}", - "type": "User", - "avatar_url": "https://avatars.githubusercontent.com/u/6492285?v=4", - "gists_url": "https://api.github.com/users/larrytech7/gists{/gist_id}", - "node_id": "MDQ6VXNlcjY0OTIyODU=", - "id": 6492285, - "gravatar_id": "", - "login": "larrytech7", - "following_url": "https://api.github.com/users/larrytech7/following{/other_user}", - "repos_url": "https://api.github.com/users/larrytech7/repos", - "organizations_url": "https://api.github.com/users/larrytech7/orgs", - "starred_url": "https://api.github.com/users/larrytech7/starred{/owner}{/repo}" - }, - "teams_url": "https://api.github.com/repos/larrytech7/IceBase/teams", - "id": 31498833, - "has_downloads": true, - "stargazers_url": "https://api.github.com/repos/larrytech7/IceBase/stargazers", - "disabled": false - }, - { - "merges_url": "https://api.github.com/repos/EduAir/EduAir/merges", - "license": { - "spdx_id": "Apache-2.0", - "name": "Apache License 2.0", - "node_id": "MDc6TGljZW5zZTI=", - "url": "https://api.github.com/licenses/apache-2.0", - "key": "apache-2.0" - }, - "contributors_url": "https://api.github.com/repos/EduAir/EduAir/contributors", - "downloads_url": "https://api.github.com/repos/EduAir/EduAir/downloads", - "has_wiki": true, - "mirror_url": null, - "blobs_url": "https://api.github.com/repos/EduAir/EduAir/git/blobs{/sha}", - "keys_url": "https://api.github.com/repos/EduAir/EduAir/keys{/key_id}", - "node_id": "MDEwOlJlcG9zaXRvcnk0MDgzMjE3Mg==", - "releases_url": "https://api.github.com/repos/EduAir/EduAir/releases{/id}", - "id": 40832172, - "full_name": "EduAir/EduAir", - "forks_url": "https://api.github.com/repos/EduAir/EduAir/forks", - "teams_url": "https://api.github.com/repos/EduAir/EduAir/teams", - "disabled": false, - "watchers": 11, - "languages_url": "https://api.github.com/repos/EduAir/EduAir/languages", - "size": 75076, - "fork": false, - "archive_url": "https://api.github.com/repos/EduAir/EduAir/{archive_format}{/ref}", - "description": "Kwiki allows educational institutions to obtain millions of articles, books and videos for education while providing a communication platform where you can even make video calls. All without internet connection.", - "name": "EduAir", - "tags_url": "https://api.github.com/repos/EduAir/EduAir/tags", - "assignees_url": "https://api.github.com/repos/EduAir/EduAir/assignees{/user}", - "owner": { - "received_events_url": "https://api.github.com/users/EduAir/received_events", - "gravatar_id": "", - "followers_url": "https://api.github.com/users/EduAir/followers", - "id": 4353521, - "starred_url": "https://api.github.com/users/EduAir/starred{/owner}{/repo}", - "html_url": "https://github.com/EduAir", - "type": "User", - "site_admin": false, - "gists_url": "https://api.github.com/users/EduAir/gists{/gist_id}", - "repos_url": "https://api.github.com/users/EduAir/repos", - "organizations_url": "https://api.github.com/users/EduAir/orgs", - "avatar_url": "https://avatars.githubusercontent.com/u/4353521?v=4", - "node_id": "MDQ6VXNlcjQzNTM1MjE=", - "events_url": "https://api.github.com/users/EduAir/events{/privacy}", - "subscriptions_url": "https://api.github.com/users/EduAir/subscriptions", - "following_url": "https://api.github.com/users/EduAir/following{/other_user}", - "url": "https://api.github.com/users/EduAir", - "login": "EduAir" - }, - "ssh_url": "git@github.com:EduAir/EduAir.git", - "hooks_url": "https://api.github.com/repos/EduAir/EduAir/hooks", - "permissions": { - "pull": true, - "admin": false, - "push": false - }, - "branches_url": "https://api.github.com/repos/EduAir/EduAir/branches{/branch}", - "compare_url": "https://api.github.com/repos/EduAir/EduAir/compare/{base}...{head}", - "subscription_url": "https://api.github.com/repos/EduAir/EduAir/subscription", - "git_tags_url": "https://api.github.com/repos/EduAir/EduAir/git/tags{/sha}", - "notifications_url": "https://api.github.com/repos/EduAir/EduAir/notifications{?since,all,participating}", - "contents_url": "https://api.github.com/repos/EduAir/EduAir/contents/{+path}", - "updated_at": "2021-01-16T08:14:45Z", - "pulls_url": "https://api.github.com/repos/EduAir/EduAir/pulls{/number}", - "private": false, - "comments_url": "https://api.github.com/repos/EduAir/EduAir/comments{/number}", - "default_branch": "master", - "pushed_at": "2017-09-21T15:09:27Z", - "has_pages": false, - "stargazers_count": 11, - "html_url": "https://github.com/EduAir/EduAir", - "svn_url": "https://github.com/EduAir/EduAir", - "homepage": "http://www.eduair.org", - "has_projects": true, - "issues_url": "https://api.github.com/repos/EduAir/EduAir/issues{/number}", - "language": "PHP", - "issue_comment_url": "https://api.github.com/repos/EduAir/EduAir/issues/comments{/number}", - "url": "https://api.github.com/repos/EduAir/EduAir", - "labels_url": "https://api.github.com/repos/EduAir/EduAir/labels{/name}", - "stargazers_url": "https://api.github.com/repos/EduAir/EduAir/stargazers", - "forks_count": 8, - "forks": 8, - "subscribers_url": "https://api.github.com/repos/EduAir/EduAir/subscribers", - "open_issues": 0, - "commits_url": "https://api.github.com/repos/EduAir/EduAir/commits{/sha}", - "git_commits_url": "https://api.github.com/repos/EduAir/EduAir/git/commits{/sha}", - "open_issues_count": 0, - "clone_url": "https://github.com/EduAir/EduAir.git", - "trees_url": "https://api.github.com/repos/EduAir/EduAir/git/trees{/sha}", - "created_at": "2015-08-16T18:06:43Z", - "has_downloads": true, - "milestones_url": "https://api.github.com/repos/EduAir/EduAir/milestones{/number}", - "deployments_url": "https://api.github.com/repos/EduAir/EduAir/deployments", - "issue_events_url": "https://api.github.com/repos/EduAir/EduAir/issues/events{/number}", - "watchers_count": 11, - "collaborators_url": "https://api.github.com/repos/EduAir/EduAir/collaborators{/collaborator}", - "git_url": "git://github.com/EduAir/EduAir.git", - "events_url": "https://api.github.com/repos/EduAir/EduAir/events", - "archived": false, - "statuses_url": "https://api.github.com/repos/EduAir/EduAir/statuses/{sha}", - "has_issues": true, - "git_refs_url": "https://api.github.com/repos/EduAir/EduAir/git/refs{/sha}" - }, - { - "languages_url": "https://api.github.com/repos/djkonro/mcquizzer/languages", - "id": 44516560, - "open_issues_count": 1, - "mirror_url": null, - "milestones_url": "https://api.github.com/repos/djkonro/mcquizzer/milestones{/number}", - "comments_url": "https://api.github.com/repos/djkonro/mcquizzer/comments{/number}", - "language": "Python", - "deployments_url": "https://api.github.com/repos/djkonro/mcquizzer/deployments", - "events_url": "https://api.github.com/repos/djkonro/mcquizzer/events", - "name": "mcquizzer", - "issue_comment_url": "https://api.github.com/repos/djkonro/mcquizzer/issues/comments{/number}", - "branches_url": "https://api.github.com/repos/djkonro/mcquizzer/branches{/branch}", - "blobs_url": "https://api.github.com/repos/djkonro/mcquizzer/git/blobs{/sha}", - "full_name": "djkonro/mcquizzer", - "contents_url": "https://api.github.com/repos/djkonro/mcquizzer/contents/{+path}", - "archive_url": "https://api.github.com/repos/djkonro/mcquizzer/{archive_format}{/ref}", - "size": 165, - "git_refs_url": "https://api.github.com/repos/djkonro/mcquizzer/git/refs{/sha}", - "commits_url": "https://api.github.com/repos/djkonro/mcquizzer/commits{/sha}", - "subscribers_url": "https://api.github.com/repos/djkonro/mcquizzer/subscribers", - "permissions": { - "push": false, - "admin": false, - "pull": true - }, - "private": false, - "description": "Web multiple choice quiz setter django application", - "pulls_url": "https://api.github.com/repos/djkonro/mcquizzer/pulls{/number}", - "url": "https://api.github.com/repos/djkonro/mcquizzer", - "forks_url": "https://api.github.com/repos/djkonro/mcquizzer/forks", - "hooks_url": "https://api.github.com/repos/djkonro/mcquizzer/hooks", - "contributors_url": "https://api.github.com/repos/djkonro/mcquizzer/contributors", - "forks_count": 1, - "pushed_at": "2019-08-10T13:12:38Z", - "issue_events_url": "https://api.github.com/repos/djkonro/mcquizzer/issues/events{/number}", - "trees_url": "https://api.github.com/repos/djkonro/mcquizzer/git/trees{/sha}", - "owner": { - "followers_url": "https://api.github.com/users/djkonro/followers", - "login": "djkonro", - "avatar_url": "https://avatars.githubusercontent.com/u/8269451?v=4", - "gravatar_id": "", - "events_url": "https://api.github.com/users/djkonro/events{/privacy}", - "starred_url": "https://api.github.com/users/djkonro/starred{/owner}{/repo}", - "url": "https://api.github.com/users/djkonro", - "received_events_url": "https://api.github.com/users/djkonro/received_events", - "gists_url": "https://api.github.com/users/djkonro/gists{/gist_id}", - "repos_url": "https://api.github.com/users/djkonro/repos", - "node_id": "MDQ6VXNlcjgyNjk0NTE=", - "html_url": "https://github.com/djkonro", - "organizations_url": "https://api.github.com/users/djkonro/orgs", - "id": 8269451, - "subscriptions_url": "https://api.github.com/users/djkonro/subscriptions", - "following_url": "https://api.github.com/users/djkonro/following{/other_user}", - "type": "User", - "site_admin": false - }, - "keys_url": "https://api.github.com/repos/djkonro/mcquizzer/keys{/key_id}", - "has_wiki": true, - "html_url": "https://github.com/djkonro/mcquizzer", - "statuses_url": "https://api.github.com/repos/djkonro/mcquizzer/statuses/{sha}", - "homepage": "", - "ssh_url": "git@github.com:djkonro/mcquizzer.git", - "merges_url": "https://api.github.com/repos/djkonro/mcquizzer/merges", - "stargazers_url": "https://api.github.com/repos/djkonro/mcquizzer/stargazers", - "git_commits_url": "https://api.github.com/repos/djkonro/mcquizzer/git/commits{/sha}", - "created_at": "2015-10-19T06:57:23Z", - "updated_at": "2019-05-21T13:10:35Z", - "releases_url": "https://api.github.com/repos/djkonro/mcquizzer/releases{/id}", - "open_issues": 1, - "license": null, - "git_url": "git://github.com/djkonro/mcquizzer.git", - "svn_url": "https://github.com/djkonro/mcquizzer", - "forks": 1, - "git_tags_url": "https://api.github.com/repos/djkonro/mcquizzer/git/tags{/sha}", - "notifications_url": "https://api.github.com/repos/djkonro/mcquizzer/notifications{?since,all,participating}", - "compare_url": "https://api.github.com/repos/djkonro/mcquizzer/compare/{base}...{head}", - "collaborators_url": "https://api.github.com/repos/djkonro/mcquizzer/collaborators{/collaborator}", - "node_id": "MDEwOlJlcG9zaXRvcnk0NDUxNjU2MA==", - "archived": false, - "disabled": false, - "default_branch": "master", - "teams_url": "https://api.github.com/repos/djkonro/mcquizzer/teams", - "has_pages": false, - "has_projects": true, - "fork": false, - "clone_url": "https://github.com/djkonro/mcquizzer.git", - "stargazers_count": 5, - "watchers_count": 5, - "tags_url": "https://api.github.com/repos/djkonro/mcquizzer/tags", - "has_issues": true, - "labels_url": "https://api.github.com/repos/djkonro/mcquizzer/labels{/name}", - "subscription_url": "https://api.github.com/repos/djkonro/mcquizzer/subscription", - "has_downloads": true, - "assignees_url": "https://api.github.com/repos/djkonro/mcquizzer/assignees{/user}", - "downloads_url": "https://api.github.com/repos/djkonro/mcquizzer/downloads", - "issues_url": "https://api.github.com/repos/djkonro/mcquizzer/issues{/number}", - "watchers": 5 - }, - { - "notifications_url": "https://api.github.com/repos/valerymelou/cookiecutter-django-gulp/notifications{?since,all,participating}", - "issues_url": "https://api.github.com/repos/valerymelou/cookiecutter-django-gulp/issues{/number}", - "comments_url": "https://api.github.com/repos/valerymelou/cookiecutter-django-gulp/comments{/number}", - "ssh_url": "git@github.com:valerymelou/cookiecutter-django-gulp.git", - "deployments_url": "https://api.github.com/repos/valerymelou/cookiecutter-django-gulp/deployments", - "branches_url": "https://api.github.com/repos/valerymelou/cookiecutter-django-gulp/branches{/branch}", - "url": "https://api.github.com/repos/valerymelou/cookiecutter-django-gulp", - "archived": true, - "stargazers_url": "https://api.github.com/repos/valerymelou/cookiecutter-django-gulp/stargazers", - "subscribers_url": "https://api.github.com/repos/valerymelou/cookiecutter-django-gulp/subscribers", - "contributors_url": "https://api.github.com/repos/valerymelou/cookiecutter-django-gulp/contributors", - "git_tags_url": "https://api.github.com/repos/valerymelou/cookiecutter-django-gulp/git/tags{/sha}", - "has_projects": true, - "homepage": "", - "open_issues": 0, - "merges_url": "https://api.github.com/repos/valerymelou/cookiecutter-django-gulp/merges", - "downloads_url": "https://api.github.com/repos/valerymelou/cookiecutter-django-gulp/downloads", - "created_at": "2016-03-10T14:47:31Z", - "size": 524, - "issue_events_url": "https://api.github.com/repos/valerymelou/cookiecutter-django-gulp/issues/events{/number}", - "pushed_at": "2020-05-13T02:48:20Z", - "issue_comment_url": "https://api.github.com/repos/valerymelou/cookiecutter-django-gulp/issues/comments{/number}", - "license": { - "key": "bsd-3-clause", - "node_id": "MDc6TGljZW5zZTU=", - "spdx_id": "BSD-3-Clause", - "url": "https://api.github.com/licenses/bsd-3-clause", - "name": "BSD 3-Clause \"New\" or \"Revised\" License" - }, - "full_name": "valerymelou/cookiecutter-django-gulp", - "watchers": 23, - "html_url": "https://github.com/valerymelou/cookiecutter-django-gulp", - "disabled": false, - "tags_url": "https://api.github.com/repos/valerymelou/cookiecutter-django-gulp/tags", - "keys_url": "https://api.github.com/repos/valerymelou/cookiecutter-django-gulp/keys{/key_id}", - "hooks_url": "https://api.github.com/repos/valerymelou/cookiecutter-django-gulp/hooks", - "collaborators_url": "https://api.github.com/repos/valerymelou/cookiecutter-django-gulp/collaborators{/collaborator}", - "git_url": "git://github.com/valerymelou/cookiecutter-django-gulp.git", - "owner": { - "html_url": "https://github.com/valerymelou", - "avatar_url": "https://avatars.githubusercontent.com/u/9080102?v=4", - "node_id": "MDQ6VXNlcjkwODAxMDI=", - "events_url": "https://api.github.com/users/valerymelou/events{/privacy}", - "organizations_url": "https://api.github.com/users/valerymelou/orgs", - "starred_url": "https://api.github.com/users/valerymelou/starred{/owner}{/repo}", - "followers_url": "https://api.github.com/users/valerymelou/followers", - "repos_url": "https://api.github.com/users/valerymelou/repos", - "following_url": "https://api.github.com/users/valerymelou/following{/other_user}", - "url": "https://api.github.com/users/valerymelou", - "gists_url": "https://api.github.com/users/valerymelou/gists{/gist_id}", - "received_events_url": "https://api.github.com/users/valerymelou/received_events", - "subscriptions_url": "https://api.github.com/users/valerymelou/subscriptions", - "login": "valerymelou", - "gravatar_id": "", - "type": "User", - "id": 9080102, - "site_admin": false - }, - "private": false, - "statuses_url": "https://api.github.com/repos/valerymelou/cookiecutter-django-gulp/statuses/{sha}", - "releases_url": "https://api.github.com/repos/valerymelou/cookiecutter-django-gulp/releases{/id}", - "forks": 4, - "mirror_url": null, - "git_refs_url": "https://api.github.com/repos/valerymelou/cookiecutter-django-gulp/git/refs{/sha}", - "id": 53592247, - "trees_url": "https://api.github.com/repos/valerymelou/cookiecutter-django-gulp/git/trees{/sha}", - "contents_url": "https://api.github.com/repos/valerymelou/cookiecutter-django-gulp/contents/{+path}", - "labels_url": "https://api.github.com/repos/valerymelou/cookiecutter-django-gulp/labels{/name}", - "events_url": "https://api.github.com/repos/valerymelou/cookiecutter-django-gulp/events", - "git_commits_url": "https://api.github.com/repos/valerymelou/cookiecutter-django-gulp/git/commits{/sha}", - "permissions": { - "admin": false, - "pull": true, - "push": false - }, - "subscription_url": "https://api.github.com/repos/valerymelou/cookiecutter-django-gulp/subscription", - "has_downloads": true, - "milestones_url": "https://api.github.com/repos/valerymelou/cookiecutter-django-gulp/milestones{/number}", - "watchers_count": 23, - "description": "A Cookiecutter template for integrating Gulp in Django projects.", - "fork": false, - "stargazers_count": 23, - "clone_url": "https://github.com/valerymelou/cookiecutter-django-gulp.git", - "commits_url": "https://api.github.com/repos/valerymelou/cookiecutter-django-gulp/commits{/sha}", - "pulls_url": "https://api.github.com/repos/valerymelou/cookiecutter-django-gulp/pulls{/number}", - "has_wiki": true, - "languages_url": "https://api.github.com/repos/valerymelou/cookiecutter-django-gulp/languages", - "name": "cookiecutter-django-gulp", - "compare_url": "https://api.github.com/repos/valerymelou/cookiecutter-django-gulp/compare/{base}...{head}", - "forks_url": "https://api.github.com/repos/valerymelou/cookiecutter-django-gulp/forks", - "has_issues": true, - "default_branch": "master", - "forks_count": 4, - "assignees_url": "https://api.github.com/repos/valerymelou/cookiecutter-django-gulp/assignees{/user}", - "updated_at": "2020-05-13T02:48:37Z", - "teams_url": "https://api.github.com/repos/valerymelou/cookiecutter-django-gulp/teams", - "open_issues_count": 0, - "has_pages": false, - "blobs_url": "https://api.github.com/repos/valerymelou/cookiecutter-django-gulp/git/blobs{/sha}", - "node_id": "MDEwOlJlcG9zaXRvcnk1MzU5MjI0Nw==", - "svn_url": "https://github.com/valerymelou/cookiecutter-django-gulp", - "archive_url": "https://api.github.com/repos/valerymelou/cookiecutter-django-gulp/{archive_format}{/ref}", - "language": "Python" - }, - { - "releases_url": "https://api.github.com/repos/silicon-mountain/smconf.org/releases{/id}", - "events_url": "https://api.github.com/repos/silicon-mountain/smconf.org/events", - "stargazers_url": "https://api.github.com/repos/silicon-mountain/smconf.org/stargazers", - "node_id": "MDEwOlJlcG9zaXRvcnk1NTcyOTAzMA==", - "description": ":elephant: Silicon Mountain website", - "has_wiki": true, - "has_projects": true, - "comments_url": "https://api.github.com/repos/silicon-mountain/smconf.org/comments{/number}", - "teams_url": "https://api.github.com/repos/silicon-mountain/smconf.org/teams", - "svn_url": "https://github.com/silicon-mountain/smconf.org", - "updated_at": "2019-07-04T00:18:53Z", - "language": "HTML", - "languages_url": "https://api.github.com/repos/silicon-mountain/smconf.org/languages", - "pushed_at": "2020-10-01T12:43:15Z", - "watchers": 9, - "trees_url": "https://api.github.com/repos/silicon-mountain/smconf.org/git/trees{/sha}", - "url": "https://api.github.com/repos/silicon-mountain/smconf.org", - "statuses_url": "https://api.github.com/repos/silicon-mountain/smconf.org/statuses/{sha}", - "fork": false, - "subscription_url": "https://api.github.com/repos/silicon-mountain/smconf.org/subscription", - "downloads_url": "https://api.github.com/repos/silicon-mountain/smconf.org/downloads", - "clone_url": "https://github.com/silicon-mountain/smconf.org.git", - "labels_url": "https://api.github.com/repos/silicon-mountain/smconf.org/labels{/name}", - "issues_url": "https://api.github.com/repos/silicon-mountain/smconf.org/issues{/number}", - "stargazers_count": 9, - "ssh_url": "git@github.com:silicon-mountain/smconf.org.git", - "contents_url": "https://api.github.com/repos/silicon-mountain/smconf.org/contents/{+path}", - "open_issues": 0, - "hooks_url": "https://api.github.com/repos/silicon-mountain/smconf.org/hooks", - "deployments_url": "https://api.github.com/repos/silicon-mountain/smconf.org/deployments", - "full_name": "silicon-mountain/smconf.org", - "git_commits_url": "https://api.github.com/repos/silicon-mountain/smconf.org/git/commits{/sha}", - "default_branch": "master", - "has_downloads": true, - "pulls_url": "https://api.github.com/repos/silicon-mountain/smconf.org/pulls{/number}", - "issue_comment_url": "https://api.github.com/repos/silicon-mountain/smconf.org/issues/comments{/number}", - "html_url": "https://github.com/silicon-mountain/smconf.org", - "archived": false, - "forks_url": "https://api.github.com/repos/silicon-mountain/smconf.org/forks", - "merges_url": "https://api.github.com/repos/silicon-mountain/smconf.org/merges", - "has_pages": false, - "open_issues_count": 0, - "tags_url": "https://api.github.com/repos/silicon-mountain/smconf.org/tags", - "created_at": "2016-04-07T21:21:59Z", - "private": false, - "license": { - "key": "gpl-3.0", - "url": "https://api.github.com/licenses/gpl-3.0", - "node_id": "MDc6TGljZW5zZTk=", - "name": "GNU General Public License v3.0", - "spdx_id": "GPL-3.0" - }, - "homepage": "http://smconf.org", - "commits_url": "https://api.github.com/repos/silicon-mountain/smconf.org/commits{/sha}", - "archive_url": "https://api.github.com/repos/silicon-mountain/smconf.org/{archive_format}{/ref}", - "blobs_url": "https://api.github.com/repos/silicon-mountain/smconf.org/git/blobs{/sha}", - "watchers_count": 9, - "mirror_url": null, - "assignees_url": "https://api.github.com/repos/silicon-mountain/smconf.org/assignees{/user}", - "has_issues": true, - "git_refs_url": "https://api.github.com/repos/silicon-mountain/smconf.org/git/refs{/sha}", - "keys_url": "https://api.github.com/repos/silicon-mountain/smconf.org/keys{/key_id}", - "id": 55729030, - "issue_events_url": "https://api.github.com/repos/silicon-mountain/smconf.org/issues/events{/number}", - "git_tags_url": "https://api.github.com/repos/silicon-mountain/smconf.org/git/tags{/sha}", - "subscribers_url": "https://api.github.com/repos/silicon-mountain/smconf.org/subscribers", - "contributors_url": "https://api.github.com/repos/silicon-mountain/smconf.org/contributors", - "collaborators_url": "https://api.github.com/repos/silicon-mountain/smconf.org/collaborators{/collaborator}", - "git_url": "git://github.com/silicon-mountain/smconf.org.git", - "forks_count": 19, - "name": "smconf.org", - "branches_url": "https://api.github.com/repos/silicon-mountain/smconf.org/branches{/branch}", - "milestones_url": "https://api.github.com/repos/silicon-mountain/smconf.org/milestones{/number}", - "disabled": false, - "size": 32310, - "permissions": { - "pull": true, - "push": false, - "admin": false - }, - "forks": 19, - "notifications_url": "https://api.github.com/repos/silicon-mountain/smconf.org/notifications{?since,all,participating}", - "owner": { - "organizations_url": "https://api.github.com/users/silicon-mountain/orgs", - "received_events_url": "https://api.github.com/users/silicon-mountain/received_events", - "html_url": "https://github.com/silicon-mountain", - "url": "https://api.github.com/users/silicon-mountain", - "node_id": "MDEyOk9yZ2FuaXphdGlvbjEyNzc0MTg5", - "gravatar_id": "", - "site_admin": false, - "login": "silicon-mountain", - "following_url": "https://api.github.com/users/silicon-mountain/following{/other_user}", - "starred_url": "https://api.github.com/users/silicon-mountain/starred{/owner}{/repo}", - "type": "Organization", - "repos_url": "https://api.github.com/users/silicon-mountain/repos", - "followers_url": "https://api.github.com/users/silicon-mountain/followers", - "events_url": "https://api.github.com/users/silicon-mountain/events{/privacy}", - "id": 12774189, - "subscriptions_url": "https://api.github.com/users/silicon-mountain/subscriptions", - "avatar_url": "https://avatars.githubusercontent.com/u/12774189?v=4", - "gists_url": "https://api.github.com/users/silicon-mountain/gists{/gist_id}" - }, - "compare_url": "https://api.github.com/repos/silicon-mountain/smconf.org/compare/{base}...{head}" - }, - { - "milestones_url": "https://api.github.com/repos/jaxon-php/jaxon-core/milestones{/number}", - "teams_url": "https://api.github.com/repos/jaxon-php/jaxon-core/teams", - "commits_url": "https://api.github.com/repos/jaxon-php/jaxon-core/commits{/sha}", - "has_wiki": true, - "languages_url": "https://api.github.com/repos/jaxon-php/jaxon-core/languages", - "git_tags_url": "https://api.github.com/repos/jaxon-php/jaxon-core/git/tags{/sha}", - "subscribers_url": "https://api.github.com/repos/jaxon-php/jaxon-core/subscribers", - "forks_url": "https://api.github.com/repos/jaxon-php/jaxon-core/forks", - "permissions": { - "push": false, - "pull": true, - "admin": false - }, - "statuses_url": "https://api.github.com/repos/jaxon-php/jaxon-core/statuses/{sha}", - "default_branch": "master", - "downloads_url": "https://api.github.com/repos/jaxon-php/jaxon-core/downloads", - "notifications_url": "https://api.github.com/repos/jaxon-php/jaxon-core/notifications{?since,all,participating}", - "issue_comment_url": "https://api.github.com/repos/jaxon-php/jaxon-core/issues/comments{/number}", - "git_url": "git://github.com/jaxon-php/jaxon-core.git", - "contents_url": "https://api.github.com/repos/jaxon-php/jaxon-core/contents/{+path}", - "events_url": "https://api.github.com/repos/jaxon-php/jaxon-core/events", - "trees_url": "https://api.github.com/repos/jaxon-php/jaxon-core/git/trees{/sha}", - "issues_url": "https://api.github.com/repos/jaxon-php/jaxon-core/issues{/number}", - "updated_at": "2021-03-31T10:32:18Z", - "homepage": "https://www.jaxon-php.org", - "compare_url": "https://api.github.com/repos/jaxon-php/jaxon-core/compare/{base}...{head}", - "deployments_url": "https://api.github.com/repos/jaxon-php/jaxon-core/deployments", - "keys_url": "https://api.github.com/repos/jaxon-php/jaxon-core/keys{/key_id}", - "license": { - "node_id": "MDc6TGljZW5zZTU=", - "name": "BSD 3-Clause \"New\" or \"Revised\" License", - "key": "bsd-3-clause", - "url": "https://api.github.com/licenses/bsd-3-clause", - "spdx_id": "BSD-3-Clause" - }, - "full_name": "jaxon-php/jaxon-core", - "disabled": false, - "ssh_url": "git@github.com:jaxon-php/jaxon-core.git", - "private": false, - "url": "https://api.github.com/repos/jaxon-php/jaxon-core", - "subscription_url": "https://api.github.com/repos/jaxon-php/jaxon-core/subscription", - "issue_events_url": "https://api.github.com/repos/jaxon-php/jaxon-core/issues/events{/number}", - "merges_url": "https://api.github.com/repos/jaxon-php/jaxon-core/merges", - "clone_url": "https://github.com/jaxon-php/jaxon-core.git", - "stargazers_count": 46, - "html_url": "https://github.com/jaxon-php/jaxon-core", - "forks": 18, - "description": "The Jaxon core library", - "id": 60390067, - "contributors_url": "https://api.github.com/repos/jaxon-php/jaxon-core/contributors", - "created_at": "2016-06-04T02:53:35Z", - "blobs_url": "https://api.github.com/repos/jaxon-php/jaxon-core/git/blobs{/sha}", - "tags_url": "https://api.github.com/repos/jaxon-php/jaxon-core/tags", - "labels_url": "https://api.github.com/repos/jaxon-php/jaxon-core/labels{/name}", - "comments_url": "https://api.github.com/repos/jaxon-php/jaxon-core/comments{/number}", - "fork": false, - "forks_count": 18, - "pulls_url": "https://api.github.com/repos/jaxon-php/jaxon-core/pulls{/number}", - "archive_url": "https://api.github.com/repos/jaxon-php/jaxon-core/{archive_format}{/ref}", - "branches_url": "https://api.github.com/repos/jaxon-php/jaxon-core/branches{/branch}", - "open_issues_count": 0, - "git_commits_url": "https://api.github.com/repos/jaxon-php/jaxon-core/git/commits{/sha}", - "mirror_url": null, - "owner": { - "gravatar_id": "", - "starred_url": "https://api.github.com/users/jaxon-php/starred{/owner}{/repo}", - "avatar_url": "https://avatars.githubusercontent.com/u/19901587?v=4", - "url": "https://api.github.com/users/jaxon-php", - "login": "jaxon-php", - "site_admin": false, - "subscriptions_url": "https://api.github.com/users/jaxon-php/subscriptions", - "gists_url": "https://api.github.com/users/jaxon-php/gists{/gist_id}", - "type": "Organization", - "events_url": "https://api.github.com/users/jaxon-php/events{/privacy}", - "received_events_url": "https://api.github.com/users/jaxon-php/received_events", - "following_url": "https://api.github.com/users/jaxon-php/following{/other_user}", - "node_id": "MDEyOk9yZ2FuaXphdGlvbjE5OTAxNTg3", - "id": 19901587, - "organizations_url": "https://api.github.com/users/jaxon-php/orgs", - "followers_url": "https://api.github.com/users/jaxon-php/followers", - "html_url": "https://github.com/jaxon-php", - "repos_url": "https://api.github.com/users/jaxon-php/repos" - }, - "archived": false, - "hooks_url": "https://api.github.com/repos/jaxon-php/jaxon-core/hooks", - "pushed_at": "2021-03-29T21:29:27Z", - "has_pages": false, - "has_issues": true, - "name": "jaxon-core", - "has_projects": true, - "releases_url": "https://api.github.com/repos/jaxon-php/jaxon-core/releases{/id}", - "assignees_url": "https://api.github.com/repos/jaxon-php/jaxon-core/assignees{/user}", - "watchers_count": 46, - "open_issues": 0, - "stargazers_url": "https://api.github.com/repos/jaxon-php/jaxon-core/stargazers", - "collaborators_url": "https://api.github.com/repos/jaxon-php/jaxon-core/collaborators{/collaborator}", - "git_refs_url": "https://api.github.com/repos/jaxon-php/jaxon-core/git/refs{/sha}", - "has_downloads": true, - "svn_url": "https://github.com/jaxon-php/jaxon-core", - "language": "PHP", - "watchers": 46, - "size": 1058, - "node_id": "MDEwOlJlcG9zaXRvcnk2MDM5MDA2Nw==" - }, - { - "releases_url": "https://api.github.com/repos/jaxon-php/jaxon-codeigniter/releases{/id}", - "trees_url": "https://api.github.com/repos/jaxon-php/jaxon-codeigniter/git/trees{/sha}", - "has_downloads": true, - "pushed_at": "2020-01-13T01:39:12Z", - "description": "Jaxon library integration for the CodeIgniter 3 framework https://www.jaxon-php.org.", - "hooks_url": "https://api.github.com/repos/jaxon-php/jaxon-codeigniter/hooks", - "contributors_url": "https://api.github.com/repos/jaxon-php/jaxon-codeigniter/contributors", - "git_commits_url": "https://api.github.com/repos/jaxon-php/jaxon-codeigniter/git/commits{/sha}", - "full_name": "jaxon-php/jaxon-codeigniter", - "git_refs_url": "https://api.github.com/repos/jaxon-php/jaxon-codeigniter/git/refs{/sha}", - "git_url": "git://github.com/jaxon-php/jaxon-codeigniter.git", - "issues_url": "https://api.github.com/repos/jaxon-php/jaxon-codeigniter/issues{/number}", - "git_tags_url": "https://api.github.com/repos/jaxon-php/jaxon-codeigniter/git/tags{/sha}", - "commits_url": "https://api.github.com/repos/jaxon-php/jaxon-codeigniter/commits{/sha}", - "pulls_url": "https://api.github.com/repos/jaxon-php/jaxon-codeigniter/pulls{/number}", - "blobs_url": "https://api.github.com/repos/jaxon-php/jaxon-codeigniter/git/blobs{/sha}", - "notifications_url": "https://api.github.com/repos/jaxon-php/jaxon-codeigniter/notifications{?since,all,participating}", - "forks_url": "https://api.github.com/repos/jaxon-php/jaxon-codeigniter/forks", - "has_projects": true, - "branches_url": "https://api.github.com/repos/jaxon-php/jaxon-codeigniter/branches{/branch}", - "issue_events_url": "https://api.github.com/repos/jaxon-php/jaxon-codeigniter/issues/events{/number}", - "node_id": "MDEwOlJlcG9zaXRvcnk2MDQzMTc1Nw==", - "subscription_url": "https://api.github.com/repos/jaxon-php/jaxon-codeigniter/subscription", - "ssh_url": "git@github.com:jaxon-php/jaxon-codeigniter.git", - "owner": { - "html_url": "https://github.com/jaxon-php", - "id": 19901587, - "gists_url": "https://api.github.com/users/jaxon-php/gists{/gist_id}", - "url": "https://api.github.com/users/jaxon-php", - "gravatar_id": "", - "starred_url": "https://api.github.com/users/jaxon-php/starred{/owner}{/repo}", - "received_events_url": "https://api.github.com/users/jaxon-php/received_events", - "type": "Organization", - "avatar_url": "https://avatars.githubusercontent.com/u/19901587?v=4", - "subscriptions_url": "https://api.github.com/users/jaxon-php/subscriptions", - "organizations_url": "https://api.github.com/users/jaxon-php/orgs", - "node_id": "MDEyOk9yZ2FuaXphdGlvbjE5OTAxNTg3", - "events_url": "https://api.github.com/users/jaxon-php/events{/privacy}", - "repos_url": "https://api.github.com/users/jaxon-php/repos", - "site_admin": false, - "login": "jaxon-php", - "followers_url": "https://api.github.com/users/jaxon-php/followers", - "following_url": "https://api.github.com/users/jaxon-php/following{/other_user}" - }, - "html_url": "https://github.com/jaxon-php/jaxon-codeigniter", - "watchers_count": 5, - "svn_url": "https://github.com/jaxon-php/jaxon-codeigniter", - "forks": 3, - "merges_url": "https://api.github.com/repos/jaxon-php/jaxon-codeigniter/merges", - "issue_comment_url": "https://api.github.com/repos/jaxon-php/jaxon-codeigniter/issues/comments{/number}", - "events_url": "https://api.github.com/repos/jaxon-php/jaxon-codeigniter/events", - "language": "PHP", - "clone_url": "https://github.com/jaxon-php/jaxon-codeigniter.git", - "tags_url": "https://api.github.com/repos/jaxon-php/jaxon-codeigniter/tags", - "url": "https://api.github.com/repos/jaxon-php/jaxon-codeigniter", - "disabled": false, - "statuses_url": "https://api.github.com/repos/jaxon-php/jaxon-codeigniter/statuses/{sha}", - "forks_count": 3, - "has_wiki": true, - "mirror_url": null, - "milestones_url": "https://api.github.com/repos/jaxon-php/jaxon-codeigniter/milestones{/number}", - "has_issues": true, - "subscribers_url": "https://api.github.com/repos/jaxon-php/jaxon-codeigniter/subscribers", - "name": "jaxon-codeigniter", - "languages_url": "https://api.github.com/repos/jaxon-php/jaxon-codeigniter/languages", - "id": 60431757, - "license": { - "name": "BSD 3-Clause \"New\" or \"Revised\" License", - "key": "bsd-3-clause", - "url": "https://api.github.com/licenses/bsd-3-clause", - "spdx_id": "BSD-3-Clause", - "node_id": "MDc6TGljZW5zZTU=" - }, - "updated_at": "2020-01-13T01:38:19Z", - "deployments_url": "https://api.github.com/repos/jaxon-php/jaxon-codeigniter/deployments", - "contents_url": "https://api.github.com/repos/jaxon-php/jaxon-codeigniter/contents/{+path}", - "has_pages": false, - "fork": false, - "assignees_url": "https://api.github.com/repos/jaxon-php/jaxon-codeigniter/assignees{/user}", - "stargazers_url": "https://api.github.com/repos/jaxon-php/jaxon-codeigniter/stargazers", - "downloads_url": "https://api.github.com/repos/jaxon-php/jaxon-codeigniter/downloads", - "labels_url": "https://api.github.com/repos/jaxon-php/jaxon-codeigniter/labels{/name}", - "open_issues_count": 0, - "watchers": 5, - "comments_url": "https://api.github.com/repos/jaxon-php/jaxon-codeigniter/comments{/number}", - "stargazers_count": 5, - "archive_url": "https://api.github.com/repos/jaxon-php/jaxon-codeigniter/{archive_format}{/ref}", - "private": false, - "homepage": "", - "size": 68, - "open_issues": 0, - "compare_url": "https://api.github.com/repos/jaxon-php/jaxon-codeigniter/compare/{base}...{head}", - "created_at": "2016-06-04T21:52:48Z", - "default_branch": "master", - "permissions": { - "admin": false, - "push": false, - "pull": true - }, - "keys_url": "https://api.github.com/repos/jaxon-php/jaxon-codeigniter/keys{/key_id}", - "teams_url": "https://api.github.com/repos/jaxon-php/jaxon-codeigniter/teams", - "archived": false, - "collaborators_url": "https://api.github.com/repos/jaxon-php/jaxon-codeigniter/collaborators{/collaborator}" - }, - { - "tags_url": "https://api.github.com/repos/ubcsc/ocaml-projects/tags", - "hooks_url": "https://api.github.com/repos/ubcsc/ocaml-projects/hooks", - "branches_url": "https://api.github.com/repos/ubcsc/ocaml-projects/branches{/branch}", - "has_downloads": true, - "fork": false, - "subscribers_url": "https://api.github.com/repos/ubcsc/ocaml-projects/subscribers", - "contributors_url": "https://api.github.com/repos/ubcsc/ocaml-projects/contributors", - "url": "https://api.github.com/repos/ubcsc/ocaml-projects", - "language": "OCaml", - "downloads_url": "https://api.github.com/repos/ubcsc/ocaml-projects/downloads", - "keys_url": "https://api.github.com/repos/ubcsc/ocaml-projects/keys{/key_id}", - "languages_url": "https://api.github.com/repos/ubcsc/ocaml-projects/languages", - "comments_url": "https://api.github.com/repos/ubcsc/ocaml-projects/comments{/number}", - "license": null, - "releases_url": "https://api.github.com/repos/ubcsc/ocaml-projects/releases{/id}", - "open_issues_count": 0, - "name": "ocaml-projects", - "commits_url": "https://api.github.com/repos/ubcsc/ocaml-projects/commits{/sha}", - "teams_url": "https://api.github.com/repos/ubcsc/ocaml-projects/teams", - "forks_url": "https://api.github.com/repos/ubcsc/ocaml-projects/forks", - "git_commits_url": "https://api.github.com/repos/ubcsc/ocaml-projects/git/commits{/sha}", - "stargazers_url": "https://api.github.com/repos/ubcsc/ocaml-projects/stargazers", - "pulls_url": "https://api.github.com/repos/ubcsc/ocaml-projects/pulls{/number}", - "issue_comment_url": "https://api.github.com/repos/ubcsc/ocaml-projects/issues/comments{/number}", - "ssh_url": "git@github.com:ubcsc/ocaml-projects.git", - "assignees_url": "https://api.github.com/repos/ubcsc/ocaml-projects/assignees{/user}", - "issues_url": "https://api.github.com/repos/ubcsc/ocaml-projects/issues{/number}", - "size": 140, - "issue_events_url": "https://api.github.com/repos/ubcsc/ocaml-projects/issues/events{/number}", - "owner": { - "events_url": "https://api.github.com/users/ubcsc/events{/privacy}", - "subscriptions_url": "https://api.github.com/users/ubcsc/subscriptions", - "gravatar_id": "", - "html_url": "https://github.com/ubcsc", - "gists_url": "https://api.github.com/users/ubcsc/gists{/gist_id}", - "type": "Organization", - "following_url": "https://api.github.com/users/ubcsc/following{/other_user}", - "url": "https://api.github.com/users/ubcsc", - "organizations_url": "https://api.github.com/users/ubcsc/orgs", - "node_id": "MDEyOk9yZ2FuaXphdGlvbjE5NzkzNjI4", - "followers_url": "https://api.github.com/users/ubcsc/followers", - "id": 19793628, - "repos_url": "https://api.github.com/users/ubcsc/repos", - "login": "ubcsc", - "received_events_url": "https://api.github.com/users/ubcsc/received_events", - "site_admin": false, - "avatar_url": "https://avatars.githubusercontent.com/u/19793628?v=4", - "starred_url": "https://api.github.com/users/ubcsc/starred{/owner}{/repo}" - }, - "full_name": "ubcsc/ocaml-projects", - "description": null, - "created_at": "2016-06-07T17:46:49Z", - "archive_url": "https://api.github.com/repos/ubcsc/ocaml-projects/{archive_format}{/ref}", - "archived": false, - "has_issues": true, - "private": false, - "collaborators_url": "https://api.github.com/repos/ubcsc/ocaml-projects/collaborators{/collaborator}", - "forks_count": 1, - "contents_url": "https://api.github.com/repos/ubcsc/ocaml-projects/contents/{+path}", - "open_issues": 0, - "html_url": "https://github.com/ubcsc/ocaml-projects", - "clone_url": "https://github.com/ubcsc/ocaml-projects.git", - "milestones_url": "https://api.github.com/repos/ubcsc/ocaml-projects/milestones{/number}", - "statuses_url": "https://api.github.com/repos/ubcsc/ocaml-projects/statuses/{sha}", - "pushed_at": "2016-06-09T13:14:14Z", - "watchers_count": 5, - "events_url": "https://api.github.com/repos/ubcsc/ocaml-projects/events", - "deployments_url": "https://api.github.com/repos/ubcsc/ocaml-projects/deployments", - "git_url": "git://github.com/ubcsc/ocaml-projects.git", - "notifications_url": "https://api.github.com/repos/ubcsc/ocaml-projects/notifications{?since,all,participating}", - "mirror_url": null, - "has_pages": false, - "trees_url": "https://api.github.com/repos/ubcsc/ocaml-projects/git/trees{/sha}", - "updated_at": "2017-10-22T22:14:23Z", - "svn_url": "https://github.com/ubcsc/ocaml-projects", - "has_wiki": true, - "homepage": null, - "forks": 1, - "subscription_url": "https://api.github.com/repos/ubcsc/ocaml-projects/subscription", - "id": 60634006, - "git_tags_url": "https://api.github.com/repos/ubcsc/ocaml-projects/git/tags{/sha}", - "permissions": { - "pull": true, - "admin": false, - "push": false - }, - "node_id": "MDEwOlJlcG9zaXRvcnk2MDYzNDAwNg==", - "disabled": false, - "blobs_url": "https://api.github.com/repos/ubcsc/ocaml-projects/git/blobs{/sha}", - "has_projects": true, - "compare_url": "https://api.github.com/repos/ubcsc/ocaml-projects/compare/{base}...{head}", - "stargazers_count": 5, - "git_refs_url": "https://api.github.com/repos/ubcsc/ocaml-projects/git/refs{/sha}", - "watchers": 5, - "default_branch": "master", - "merges_url": "https://api.github.com/repos/ubcsc/ocaml-projects/merges", - "labels_url": "https://api.github.com/repos/ubcsc/ocaml-projects/labels{/name}" - }, - { - "downloads_url": "https://api.github.com/repos/silicon-mountain/github-cm/downloads", - "name": "github-cm", - "html_url": "https://github.com/silicon-mountain/github-cm", - "forks": 3, - "issue_events_url": "https://api.github.com/repos/silicon-mountain/github-cm/issues/events{/number}", - "commits_url": "https://api.github.com/repos/silicon-mountain/github-cm/commits{/sha}", - "contributors_url": "https://api.github.com/repos/silicon-mountain/github-cm/contributors", - "pushed_at": "2017-03-14T21:59:49Z", - "updated_at": "2019-07-04T00:26:34Z", - "default_branch": "master", - "git_url": "git://github.com/silicon-mountain/github-cm.git", - "language": "Python", - "has_pages": false, - "disabled": false, - "full_name": "silicon-mountain/github-cm", - "blobs_url": "https://api.github.com/repos/silicon-mountain/github-cm/git/blobs{/sha}", - "created_at": "2016-06-08T09:24:14Z", - "collaborators_url": "https://api.github.com/repos/silicon-mountain/github-cm/collaborators{/collaborator}", - "mirror_url": null, - "open_issues_count": 2, - "subscription_url": "https://api.github.com/repos/silicon-mountain/github-cm/subscription", - "id": 60685694, - "issues_url": "https://api.github.com/repos/silicon-mountain/github-cm/issues{/number}", - "homepage": "http://smconf.org/github-cm", - "node_id": "MDEwOlJlcG9zaXRvcnk2MDY4NTY5NA==", - "keys_url": "https://api.github.com/repos/silicon-mountain/github-cm/keys{/key_id}", - "contents_url": "https://api.github.com/repos/silicon-mountain/github-cm/contents/{+path}", - "compare_url": "https://api.github.com/repos/silicon-mountain/github-cm/compare/{base}...{head}", - "archive_url": "https://api.github.com/repos/silicon-mountain/github-cm/{archive_format}{/ref}", - "forks_count": 3, - "tags_url": "https://api.github.com/repos/silicon-mountain/github-cm/tags", - "notifications_url": "https://api.github.com/repos/silicon-mountain/github-cm/notifications{?since,all,participating}", - "comments_url": "https://api.github.com/repos/silicon-mountain/github-cm/comments{/number}", - "git_tags_url": "https://api.github.com/repos/silicon-mountain/github-cm/git/tags{/sha}", - "events_url": "https://api.github.com/repos/silicon-mountain/github-cm/events", - "stargazers_url": "https://api.github.com/repos/silicon-mountain/github-cm/stargazers", - "license": { - "url": "https://api.github.com/licenses/apache-2.0", - "name": "Apache License 2.0", - "key": "apache-2.0", - "spdx_id": "Apache-2.0", - "node_id": "MDc6TGljZW5zZTI=" - }, - "has_wiki": true, - "url": "https://api.github.com/repos/silicon-mountain/github-cm", - "watchers_count": 6, - "subscribers_url": "https://api.github.com/repos/silicon-mountain/github-cm/subscribers", - "private": false, - "hooks_url": "https://api.github.com/repos/silicon-mountain/github-cm/hooks", - "teams_url": "https://api.github.com/repos/silicon-mountain/github-cm/teams", - "deployments_url": "https://api.github.com/repos/silicon-mountain/github-cm/deployments", - "ssh_url": "git@github.com:silicon-mountain/github-cm.git", - "branches_url": "https://api.github.com/repos/silicon-mountain/github-cm/branches{/branch}", - "svn_url": "https://github.com/silicon-mountain/github-cm", - "description": "Curated statistics of GitHub users in Cameroon", - "watchers": 6, - "fork": false, - "trees_url": "https://api.github.com/repos/silicon-mountain/github-cm/git/trees{/sha}", - "has_projects": true, - "size": 4139, - "forks_url": "https://api.github.com/repos/silicon-mountain/github-cm/forks", - "releases_url": "https://api.github.com/repos/silicon-mountain/github-cm/releases{/id}", - "open_issues": 2, - "labels_url": "https://api.github.com/repos/silicon-mountain/github-cm/labels{/name}", - "assignees_url": "https://api.github.com/repos/silicon-mountain/github-cm/assignees{/user}", - "issue_comment_url": "https://api.github.com/repos/silicon-mountain/github-cm/issues/comments{/number}", - "stargazers_count": 6, - "git_commits_url": "https://api.github.com/repos/silicon-mountain/github-cm/git/commits{/sha}", - "owner": { - "repos_url": "https://api.github.com/users/silicon-mountain/repos", - "type": "Organization", - "starred_url": "https://api.github.com/users/silicon-mountain/starred{/owner}{/repo}", - "login": "silicon-mountain", - "organizations_url": "https://api.github.com/users/silicon-mountain/orgs", - "gravatar_id": "", - "following_url": "https://api.github.com/users/silicon-mountain/following{/other_user}", - "html_url": "https://github.com/silicon-mountain", - "avatar_url": "https://avatars.githubusercontent.com/u/12774189?v=4", - "events_url": "https://api.github.com/users/silicon-mountain/events{/privacy}", - "url": "https://api.github.com/users/silicon-mountain", - "id": 12774189, - "subscriptions_url": "https://api.github.com/users/silicon-mountain/subscriptions", - "followers_url": "https://api.github.com/users/silicon-mountain/followers", - "node_id": "MDEyOk9yZ2FuaXphdGlvbjEyNzc0MTg5", - "received_events_url": "https://api.github.com/users/silicon-mountain/received_events", - "gists_url": "https://api.github.com/users/silicon-mountain/gists{/gist_id}", - "site_admin": false - }, - "git_refs_url": "https://api.github.com/repos/silicon-mountain/github-cm/git/refs{/sha}", - "milestones_url": "https://api.github.com/repos/silicon-mountain/github-cm/milestones{/number}", - "has_downloads": true, - "statuses_url": "https://api.github.com/repos/silicon-mountain/github-cm/statuses/{sha}", - "archived": false, - "clone_url": "https://github.com/silicon-mountain/github-cm.git", - "pulls_url": "https://api.github.com/repos/silicon-mountain/github-cm/pulls{/number}", - "has_issues": true, - "languages_url": "https://api.github.com/repos/silicon-mountain/github-cm/languages", - "merges_url": "https://api.github.com/repos/silicon-mountain/github-cm/merges", - "permissions": { - "pull": true, - "push": false, - "admin": false - } - }, - { - "has_pages": true, - "mirror_url": null, - "permissions": { - "admin": false, - "push": false, - "pull": true - }, - "git_commits_url": "https://api.github.com/repos/tnga/bowerder/git/commits{/sha}", - "comments_url": "https://api.github.com/repos/tnga/bowerder/comments{/number}", - "deployments_url": "https://api.github.com/repos/tnga/bowerder/deployments", - "license": { - "node_id": "MDc6TGljZW5zZTEz", - "name": "MIT License", - "url": "https://api.github.com/licenses/mit", - "key": "mit", - "spdx_id": "MIT" - }, - "contents_url": "https://api.github.com/repos/tnga/bowerder/contents/{+path}", - "url": "https://api.github.com/repos/tnga/bowerder", - "size": 8429, - "collaborators_url": "https://api.github.com/repos/tnga/bowerder/collaborators{/collaborator}", - "forks": 1, - "releases_url": "https://api.github.com/repos/tnga/bowerder/releases{/id}", - "downloads_url": "https://api.github.com/repos/tnga/bowerder/downloads", - "languages_url": "https://api.github.com/repos/tnga/bowerder/languages", - "updated_at": "2018-03-07T23:12:22Z", - "merges_url": "https://api.github.com/repos/tnga/bowerder/merges", - "private": false, - "clone_url": "https://github.com/tnga/bowerder.git", - "node_id": "MDEwOlJlcG9zaXRvcnk2MDkwNDU1OA==", - "branches_url": "https://api.github.com/repos/tnga/bowerder/branches{/branch}", - "blobs_url": "https://api.github.com/repos/tnga/bowerder/git/blobs{/sha}", - "issue_events_url": "https://api.github.com/repos/tnga/bowerder/issues/events{/number}", - "commits_url": "https://api.github.com/repos/tnga/bowerder/commits{/sha}", - "compare_url": "https://api.github.com/repos/tnga/bowerder/compare/{base}...{head}", - "watchers_count": 6, - "issues_url": "https://api.github.com/repos/tnga/bowerder/issues{/number}", - "has_downloads": true, - "contributors_url": "https://api.github.com/repos/tnga/bowerder/contributors", - "ssh_url": "git@github.com:tnga/bowerder.git", - "trees_url": "https://api.github.com/repos/tnga/bowerder/git/trees{/sha}", - "assignees_url": "https://api.github.com/repos/tnga/bowerder/assignees{/user}", - "fork": false, - "pushed_at": "2016-08-02T13:11:54Z", - "open_issues_count": 0, - "issue_comment_url": "https://api.github.com/repos/tnga/bowerder/issues/comments{/number}", - "language": "JavaScript", - "description": "the bower components loader for browsers", - "full_name": "tnga/bowerder", - "git_tags_url": "https://api.github.com/repos/tnga/bowerder/git/tags{/sha}", - "forks_url": "https://api.github.com/repos/tnga/bowerder/forks", - "html_url": "https://github.com/tnga/bowerder", - "owner": { - "subscriptions_url": "https://api.github.com/users/tnga/subscriptions", - "repos_url": "https://api.github.com/users/tnga/repos", - "starred_url": "https://api.github.com/users/tnga/starred{/owner}{/repo}", - "node_id": "MDQ6VXNlcjEyNDM2NDEx", - "followers_url": "https://api.github.com/users/tnga/followers", - "following_url": "https://api.github.com/users/tnga/following{/other_user}", - "events_url": "https://api.github.com/users/tnga/events{/privacy}", - "type": "User", - "id": 12436411, - "organizations_url": "https://api.github.com/users/tnga/orgs", - "gists_url": "https://api.github.com/users/tnga/gists{/gist_id}", - "avatar_url": "https://avatars.githubusercontent.com/u/12436411?v=4", - "url": "https://api.github.com/users/tnga", - "site_admin": false, - "received_events_url": "https://api.github.com/users/tnga/received_events", - "html_url": "https://github.com/tnga", - "gravatar_id": "", - "login": "tnga" - }, - "stargazers_url": "https://api.github.com/repos/tnga/bowerder/stargazers", - "has_issues": true, - "milestones_url": "https://api.github.com/repos/tnga/bowerder/milestones{/number}", - "id": 60904558, - "events_url": "https://api.github.com/repos/tnga/bowerder/events", - "forks_count": 1, - "created_at": "2016-06-11T11:43:53Z", - "has_wiki": true, - "hooks_url": "https://api.github.com/repos/tnga/bowerder/hooks", - "teams_url": "https://api.github.com/repos/tnga/bowerder/teams", - "archive_url": "https://api.github.com/repos/tnga/bowerder/{archive_format}{/ref}", - "notifications_url": "https://api.github.com/repos/tnga/bowerder/notifications{?since,all,participating}", - "git_refs_url": "https://api.github.com/repos/tnga/bowerder/git/refs{/sha}", - "default_branch": "master", - "labels_url": "https://api.github.com/repos/tnga/bowerder/labels{/name}", - "disabled": false, - "open_issues": 0, - "svn_url": "https://github.com/tnga/bowerder", - "subscription_url": "https://api.github.com/repos/tnga/bowerder/subscription", - "pulls_url": "https://api.github.com/repos/tnga/bowerder/pulls{/number}", - "git_url": "git://github.com/tnga/bowerder.git", - "tags_url": "https://api.github.com/repos/tnga/bowerder/tags", - "homepage": "https://tnga.github.io/bowerder", - "keys_url": "https://api.github.com/repos/tnga/bowerder/keys{/key_id}", - "statuses_url": "https://api.github.com/repos/tnga/bowerder/statuses/{sha}", - "name": "bowerder", - "has_projects": true, - "stargazers_count": 6, - "subscribers_url": "https://api.github.com/repos/tnga/bowerder/subscribers", - "archived": false, - "watchers": 6 - }, - { - "comments_url": "https://api.github.com/repos/fabriceyopa/slim-laravel/comments{/number}", - "merges_url": "https://api.github.com/repos/fabriceyopa/slim-laravel/merges", - "language": "JavaScript", - "assignees_url": "https://api.github.com/repos/fabriceyopa/slim-laravel/assignees{/user}", - "branches_url": "https://api.github.com/repos/fabriceyopa/slim-laravel/branches{/branch}", - "deployments_url": "https://api.github.com/repos/fabriceyopa/slim-laravel/deployments", - "open_issues": 1, - "full_name": "fabriceyopa/slim-laravel", - "private": false, - "svn_url": "https://github.com/fabriceyopa/slim-laravel", - "node_id": "MDEwOlJlcG9zaXRvcnk2Mzk2MzMyNA==", - "url": "https://api.github.com/repos/fabriceyopa/slim-laravel", - "html_url": "https://github.com/fabriceyopa/slim-laravel", - "releases_url": "https://api.github.com/repos/fabriceyopa/slim-laravel/releases{/id}", - "trees_url": "https://api.github.com/repos/fabriceyopa/slim-laravel/git/trees{/sha}", - "watchers": 23, - "has_wiki": true, - "ssh_url": "git@github.com:fabriceyopa/slim-laravel.git", - "forks_url": "https://api.github.com/repos/fabriceyopa/slim-laravel/forks", - "fork": false, - "git_refs_url": "https://api.github.com/repos/fabriceyopa/slim-laravel/git/refs{/sha}", - "has_pages": false, - "labels_url": "https://api.github.com/repos/fabriceyopa/slim-laravel/labels{/name}", - "keys_url": "https://api.github.com/repos/fabriceyopa/slim-laravel/keys{/key_id}", - "forks_count": 8, - "watchers_count": 23, - "issue_events_url": "https://api.github.com/repos/fabriceyopa/slim-laravel/issues/events{/number}", - "open_issues_count": 1, - "description": "A Laravel like base on Slim Framework 3. This is a skeleton app to start faster", - "hooks_url": "https://api.github.com/repos/fabriceyopa/slim-laravel/hooks", - "commits_url": "https://api.github.com/repos/fabriceyopa/slim-laravel/commits{/sha}", - "downloads_url": "https://api.github.com/repos/fabriceyopa/slim-laravel/downloads", - "git_commits_url": "https://api.github.com/repos/fabriceyopa/slim-laravel/git/commits{/sha}", - "id": 63963324, - "size": 330, - "issue_comment_url": "https://api.github.com/repos/fabriceyopa/slim-laravel/issues/comments{/number}", - "pulls_url": "https://api.github.com/repos/fabriceyopa/slim-laravel/pulls{/number}", - "pushed_at": "2017-12-18T17:49:53Z", - "collaborators_url": "https://api.github.com/repos/fabriceyopa/slim-laravel/collaborators{/collaborator}", - "permissions": { - "push": false, - "pull": true, - "admin": false - }, - "languages_url": "https://api.github.com/repos/fabriceyopa/slim-laravel/languages", - "owner": { - "repos_url": "https://api.github.com/users/fabriceyopa/repos", - "starred_url": "https://api.github.com/users/fabriceyopa/starred{/owner}{/repo}", - "site_admin": false, - "followers_url": "https://api.github.com/users/fabriceyopa/followers", - "organizations_url": "https://api.github.com/users/fabriceyopa/orgs", - "following_url": "https://api.github.com/users/fabriceyopa/following{/other_user}", - "html_url": "https://github.com/fabriceyopa", - "events_url": "https://api.github.com/users/fabriceyopa/events{/privacy}", - "received_events_url": "https://api.github.com/users/fabriceyopa/received_events", - "login": "fabriceyopa", - "subscriptions_url": "https://api.github.com/users/fabriceyopa/subscriptions", - "url": "https://api.github.com/users/fabriceyopa", - "avatar_url": "https://avatars.githubusercontent.com/u/4902424?v=4", - "id": 4902424, - "gravatar_id": "", - "type": "User", - "gists_url": "https://api.github.com/users/fabriceyopa/gists{/gist_id}", - "node_id": "MDQ6VXNlcjQ5MDI0MjQ=" - }, - "has_downloads": true, - "milestones_url": "https://api.github.com/repos/fabriceyopa/slim-laravel/milestones{/number}", - "notifications_url": "https://api.github.com/repos/fabriceyopa/slim-laravel/notifications{?since,all,participating}", - "license": null, - "has_projects": true, - "compare_url": "https://api.github.com/repos/fabriceyopa/slim-laravel/compare/{base}...{head}", - "events_url": "https://api.github.com/repos/fabriceyopa/slim-laravel/events", - "blobs_url": "https://api.github.com/repos/fabriceyopa/slim-laravel/git/blobs{/sha}", - "contents_url": "https://api.github.com/repos/fabriceyopa/slim-laravel/contents/{+path}", - "updated_at": "2019-11-17T15:53:22Z", - "subscribers_url": "https://api.github.com/repos/fabriceyopa/slim-laravel/subscribers", - "stargazers_url": "https://api.github.com/repos/fabriceyopa/slim-laravel/stargazers", - "teams_url": "https://api.github.com/repos/fabriceyopa/slim-laravel/teams", - "clone_url": "https://github.com/fabriceyopa/slim-laravel.git", - "archived": false, - "contributors_url": "https://api.github.com/repos/fabriceyopa/slim-laravel/contributors", - "name": "slim-laravel", - "forks": 8, - "disabled": false, - "git_tags_url": "https://api.github.com/repos/fabriceyopa/slim-laravel/git/tags{/sha}", - "mirror_url": null, - "git_url": "git://github.com/fabriceyopa/slim-laravel.git", - "archive_url": "https://api.github.com/repos/fabriceyopa/slim-laravel/{archive_format}{/ref}", - "subscription_url": "https://api.github.com/repos/fabriceyopa/slim-laravel/subscription", - "default_branch": "master", - "stargazers_count": 23, - "homepage": null, - "created_at": "2016-07-22T15:20:31Z", - "tags_url": "https://api.github.com/repos/fabriceyopa/slim-laravel/tags", - "has_issues": true, - "statuses_url": "https://api.github.com/repos/fabriceyopa/slim-laravel/statuses/{sha}", - "issues_url": "https://api.github.com/repos/fabriceyopa/slim-laravel/issues{/number}" - }, - { - "stargazers_url": "https://api.github.com/repos/jaxon-php/jaxon-dialogs/stargazers", - "has_projects": true, - "milestones_url": "https://api.github.com/repos/jaxon-php/jaxon-dialogs/milestones{/number}", - "subscribers_url": "https://api.github.com/repos/jaxon-php/jaxon-dialogs/subscribers", - "git_refs_url": "https://api.github.com/repos/jaxon-php/jaxon-dialogs/git/refs{/sha}", - "issues_url": "https://api.github.com/repos/jaxon-php/jaxon-dialogs/issues{/number}", - "forks_url": "https://api.github.com/repos/jaxon-php/jaxon-dialogs/forks", - "tags_url": "https://api.github.com/repos/jaxon-php/jaxon-dialogs/tags", - "stargazers_count": 5, - "forks": 3, - "pulls_url": "https://api.github.com/repos/jaxon-php/jaxon-dialogs/pulls{/number}", - "name": "jaxon-dialogs", - "git_tags_url": "https://api.github.com/repos/jaxon-php/jaxon-dialogs/git/tags{/sha}", - "owner": { - "avatar_url": "https://avatars.githubusercontent.com/u/19901587?v=4", - "subscriptions_url": "https://api.github.com/users/jaxon-php/subscriptions", - "site_admin": false, - "type": "Organization", - "repos_url": "https://api.github.com/users/jaxon-php/repos", - "id": 19901587, - "url": "https://api.github.com/users/jaxon-php", - "following_url": "https://api.github.com/users/jaxon-php/following{/other_user}", - "html_url": "https://github.com/jaxon-php", - "gravatar_id": "", - "received_events_url": "https://api.github.com/users/jaxon-php/received_events", - "followers_url": "https://api.github.com/users/jaxon-php/followers", - "gists_url": "https://api.github.com/users/jaxon-php/gists{/gist_id}", - "login": "jaxon-php", - "organizations_url": "https://api.github.com/users/jaxon-php/orgs", - "starred_url": "https://api.github.com/users/jaxon-php/starred{/owner}{/repo}", - "events_url": "https://api.github.com/users/jaxon-php/events{/privacy}", - "node_id": "MDEyOk9yZ2FuaXphdGlvbjE5OTAxNTg3" - }, - "created_at": "2016-12-16T04:30:00Z", - "full_name": "jaxon-php/jaxon-dialogs", - "pushed_at": "2021-03-31T06:52:23Z", - "merges_url": "https://api.github.com/repos/jaxon-php/jaxon-dialogs/merges", - "svn_url": "https://github.com/jaxon-php/jaxon-dialogs", - "ssh_url": "git@github.com:jaxon-php/jaxon-dialogs.git", - "hooks_url": "https://api.github.com/repos/jaxon-php/jaxon-dialogs/hooks", - "commits_url": "https://api.github.com/repos/jaxon-php/jaxon-dialogs/commits{/sha}", - "contributors_url": "https://api.github.com/repos/jaxon-php/jaxon-dialogs/contributors", - "downloads_url": "https://api.github.com/repos/jaxon-php/jaxon-dialogs/downloads", - "license": { - "key": "bsd-3-clause", - "url": "https://api.github.com/licenses/bsd-3-clause", - "spdx_id": "BSD-3-Clause", - "name": "BSD 3-Clause \"New\" or \"Revised\" License", - "node_id": "MDc6TGljZW5zZTU=" - }, - "archived": false, - "forks_count": 3, - "open_issues": 0, - "deployments_url": "https://api.github.com/repos/jaxon-php/jaxon-dialogs/deployments", - "has_wiki": true, - "url": "https://api.github.com/repos/jaxon-php/jaxon-dialogs", - "has_pages": false, - "default_branch": "master", - "language": "PHP", - "keys_url": "https://api.github.com/repos/jaxon-php/jaxon-dialogs/keys{/key_id}", - "issue_events_url": "https://api.github.com/repos/jaxon-php/jaxon-dialogs/issues/events{/number}", - "mirror_url": null, - "archive_url": "https://api.github.com/repos/jaxon-php/jaxon-dialogs/{archive_format}{/ref}", - "open_issues_count": 0, - "private": false, - "permissions": { - "pull": true, - "admin": false, - "push": false - }, - "watchers_count": 5, - "git_commits_url": "https://api.github.com/repos/jaxon-php/jaxon-dialogs/git/commits{/sha}", - "homepage": "", - "labels_url": "https://api.github.com/repos/jaxon-php/jaxon-dialogs/labels{/name}", - "has_downloads": true, - "node_id": "MDEwOlJlcG9zaXRvcnk3NjYyMTM1Nw==", - "disabled": false, - "watchers": 5, - "compare_url": "https://api.github.com/repos/jaxon-php/jaxon-dialogs/compare/{base}...{head}", - "fork": false, - "collaborators_url": "https://api.github.com/repos/jaxon-php/jaxon-dialogs/collaborators{/collaborator}", - "clone_url": "https://github.com/jaxon-php/jaxon-dialogs.git", - "trees_url": "https://api.github.com/repos/jaxon-php/jaxon-dialogs/git/trees{/sha}", - "git_url": "git://github.com/jaxon-php/jaxon-dialogs.git", - "releases_url": "https://api.github.com/repos/jaxon-php/jaxon-dialogs/releases{/id}", - "comments_url": "https://api.github.com/repos/jaxon-php/jaxon-dialogs/comments{/number}", - "size": 205, - "html_url": "https://github.com/jaxon-php/jaxon-dialogs", - "events_url": "https://api.github.com/repos/jaxon-php/jaxon-dialogs/events", - "has_issues": true, - "notifications_url": "https://api.github.com/repos/jaxon-php/jaxon-dialogs/notifications{?since,all,participating}", - "subscription_url": "https://api.github.com/repos/jaxon-php/jaxon-dialogs/subscription", - "languages_url": "https://api.github.com/repos/jaxon-php/jaxon-dialogs/languages", - "id": 76621357, - "teams_url": "https://api.github.com/repos/jaxon-php/jaxon-dialogs/teams", - "issue_comment_url": "https://api.github.com/repos/jaxon-php/jaxon-dialogs/issues/comments{/number}", - "contents_url": "https://api.github.com/repos/jaxon-php/jaxon-dialogs/contents/{+path}", - "blobs_url": "https://api.github.com/repos/jaxon-php/jaxon-dialogs/git/blobs{/sha}", - "updated_at": "2021-03-31T06:48:45Z", - "assignees_url": "https://api.github.com/repos/jaxon-php/jaxon-dialogs/assignees{/user}", - "statuses_url": "https://api.github.com/repos/jaxon-php/jaxon-dialogs/statuses/{sha}", - "description": "Modal, alerts and confirmation dialogs for Jaxon with various javascript libraries https://www.jaxon-php.org.", - "branches_url": "https://api.github.com/repos/jaxon-php/jaxon-dialogs/branches{/branch}" - }, - { - "forks_count": 5, - "pushed_at": "2018-11-24T07:20:57Z", - "subscribers_url": "https://api.github.com/repos/Monetbil/monetbil-android-sdk/subscribers", - "collaborators_url": "https://api.github.com/repos/Monetbil/monetbil-android-sdk/collaborators{/collaborator}", - "issue_events_url": "https://api.github.com/repos/Monetbil/monetbil-android-sdk/issues/events{/number}", - "languages_url": "https://api.github.com/repos/Monetbil/monetbil-android-sdk/languages", - "keys_url": "https://api.github.com/repos/Monetbil/monetbil-android-sdk/keys{/key_id}", - "pulls_url": "https://api.github.com/repos/Monetbil/monetbil-android-sdk/pulls{/number}", - "default_branch": "master", - "tags_url": "https://api.github.com/repos/Monetbil/monetbil-android-sdk/tags", - "git_url": "git://github.com/Monetbil/monetbil-android-sdk.git", - "homepage": "https://www.monetbil.com/", - "archive_url": "https://api.github.com/repos/Monetbil/monetbil-android-sdk/{archive_format}{/ref}", - "svn_url": "https://github.com/Monetbil/monetbil-android-sdk", - "subscription_url": "https://api.github.com/repos/Monetbil/monetbil-android-sdk/subscription", - "has_downloads": true, - "hooks_url": "https://api.github.com/repos/Monetbil/monetbil-android-sdk/hooks", - "id": 79809070, - "releases_url": "https://api.github.com/repos/Monetbil/monetbil-android-sdk/releases{/id}", - "contents_url": "https://api.github.com/repos/Monetbil/monetbil-android-sdk/contents/{+path}", - "stargazers_count": 5, - "issue_comment_url": "https://api.github.com/repos/Monetbil/monetbil-android-sdk/issues/comments{/number}", - "git_refs_url": "https://api.github.com/repos/Monetbil/monetbil-android-sdk/git/refs{/sha}", - "open_issues_count": 0, - "watchers": 5, - "name": "monetbil-android-sdk", - "language": null, - "downloads_url": "https://api.github.com/repos/Monetbil/monetbil-android-sdk/downloads", - "archived": false, - "permissions": { - "push": false, - "admin": false, - "pull": true - }, - "forks_url": "https://api.github.com/repos/Monetbil/monetbil-android-sdk/forks", - "deployments_url": "https://api.github.com/repos/Monetbil/monetbil-android-sdk/deployments", - "forks": 5, - "disabled": false, - "stargazers_url": "https://api.github.com/repos/Monetbil/monetbil-android-sdk/stargazers", - "compare_url": "https://api.github.com/repos/Monetbil/monetbil-android-sdk/compare/{base}...{head}", - "license": { - "spdx_id": "NOASSERTION", - "node_id": "MDc6TGljZW5zZTA=", - "url": null, - "name": "Other", - "key": "other" - }, - "assignees_url": "https://api.github.com/repos/Monetbil/monetbil-android-sdk/assignees{/user}", - "comments_url": "https://api.github.com/repos/Monetbil/monetbil-android-sdk/comments{/number}", - "blobs_url": "https://api.github.com/repos/Monetbil/monetbil-android-sdk/git/blobs{/sha}", - "branches_url": "https://api.github.com/repos/Monetbil/monetbil-android-sdk/branches{/branch}", - "merges_url": "https://api.github.com/repos/Monetbil/monetbil-android-sdk/merges", - "has_issues": true, - "mirror_url": null, - "updated_at": "2020-04-26T07:09:09Z", - "html_url": "https://github.com/Monetbil/monetbil-android-sdk", - "size": 1043, - "has_pages": true, - "created_at": "2017-01-23T13:58:14Z", - "git_commits_url": "https://api.github.com/repos/Monetbil/monetbil-android-sdk/git/commits{/sha}", - "ssh_url": "git@github.com:Monetbil/monetbil-android-sdk.git", - "clone_url": "https://github.com/Monetbil/monetbil-android-sdk.git", - "fork": false, - "labels_url": "https://api.github.com/repos/Monetbil/monetbil-android-sdk/labels{/name}", - "teams_url": "https://api.github.com/repos/Monetbil/monetbil-android-sdk/teams", - "open_issues": 0, - "commits_url": "https://api.github.com/repos/Monetbil/monetbil-android-sdk/commits{/sha}", - "events_url": "https://api.github.com/repos/Monetbil/monetbil-android-sdk/events", - "git_tags_url": "https://api.github.com/repos/Monetbil/monetbil-android-sdk/git/tags{/sha}", - "full_name": "Monetbil/monetbil-android-sdk", - "has_projects": true, - "url": "https://api.github.com/repos/Monetbil/monetbil-android-sdk", - "has_wiki": true, - "trees_url": "https://api.github.com/repos/Monetbil/monetbil-android-sdk/git/trees{/sha}", - "contributors_url": "https://api.github.com/repos/Monetbil/monetbil-android-sdk/contributors", - "issues_url": "https://api.github.com/repos/Monetbil/monetbil-android-sdk/issues{/number}", - "watchers_count": 5, - "description": "Accept Mobile Money in your Android app", - "statuses_url": "https://api.github.com/repos/Monetbil/monetbil-android-sdk/statuses/{sha}", - "owner": { - "login": "Monetbil", - "avatar_url": "https://avatars.githubusercontent.com/u/12472426?v=4", - "type": "Organization", - "received_events_url": "https://api.github.com/users/Monetbil/received_events", - "starred_url": "https://api.github.com/users/Monetbil/starred{/owner}{/repo}", - "repos_url": "https://api.github.com/users/Monetbil/repos", - "followers_url": "https://api.github.com/users/Monetbil/followers", - "id": 12472426, - "site_admin": false, - "node_id": "MDEyOk9yZ2FuaXphdGlvbjEyNDcyNDI2", - "subscriptions_url": "https://api.github.com/users/Monetbil/subscriptions", - "organizations_url": "https://api.github.com/users/Monetbil/orgs", - "events_url": "https://api.github.com/users/Monetbil/events{/privacy}", - "gravatar_id": "", - "url": "https://api.github.com/users/Monetbil", - "html_url": "https://github.com/Monetbil", - "following_url": "https://api.github.com/users/Monetbil/following{/other_user}", - "gists_url": "https://api.github.com/users/Monetbil/gists{/gist_id}" - }, - "notifications_url": "https://api.github.com/repos/Monetbil/monetbil-android-sdk/notifications{?since,all,participating}", - "node_id": "MDEwOlJlcG9zaXRvcnk3OTgwOTA3MA==", - "milestones_url": "https://api.github.com/repos/Monetbil/monetbil-android-sdk/milestones{/number}", - "private": false - }, - { - "subscribers_url": "https://api.github.com/repos/sdmg15/Best-websites-a-programmer-should-visit/subscribers", - "compare_url": "https://api.github.com/repos/sdmg15/Best-websites-a-programmer-should-visit/compare/{base}...{head}", - "license": { - "name": "MIT License", - "key": "mit", - "node_id": "MDc6TGljZW5zZTEz", - "url": "https://api.github.com/licenses/mit", - "spdx_id": "MIT" - }, - "events_url": "https://api.github.com/repos/sdmg15/Best-websites-a-programmer-should-visit/events", - "svn_url": "https://github.com/sdmg15/Best-websites-a-programmer-should-visit", - "name": "Best-websites-a-programmer-should-visit", - "disabled": false, - "git_url": "git://github.com/sdmg15/Best-websites-a-programmer-should-visit.git", - "deployments_url": "https://api.github.com/repos/sdmg15/Best-websites-a-programmer-should-visit/deployments", - "stargazers_url": "https://api.github.com/repos/sdmg15/Best-websites-a-programmer-should-visit/stargazers", - "trees_url": "https://api.github.com/repos/sdmg15/Best-websites-a-programmer-should-visit/git/trees{/sha}", - "created_at": "2017-03-05T20:25:17Z", - "mirror_url": null, - "open_issues": 294, - "watchers": 35217, - "keys_url": "https://api.github.com/repos/sdmg15/Best-websites-a-programmer-should-visit/keys{/key_id}", - "url": "https://api.github.com/repos/sdmg15/Best-websites-a-programmer-should-visit", - "languages_url": "https://api.github.com/repos/sdmg15/Best-websites-a-programmer-should-visit/languages", - "clone_url": "https://github.com/sdmg15/Best-websites-a-programmer-should-visit.git", - "updated_at": "2021-04-02T21:04:48Z", - "merges_url": "https://api.github.com/repos/sdmg15/Best-websites-a-programmer-should-visit/merges", - "html_url": "https://github.com/sdmg15/Best-websites-a-programmer-should-visit", - "notifications_url": "https://api.github.com/repos/sdmg15/Best-websites-a-programmer-should-visit/notifications{?since,all,participating}", - "releases_url": "https://api.github.com/repos/sdmg15/Best-websites-a-programmer-should-visit/releases{/id}", - "permissions": { - "pull": true, - "admin": false, - "push": false - }, - "pulls_url": "https://api.github.com/repos/sdmg15/Best-websites-a-programmer-should-visit/pulls{/number}", - "homepage": "", - "pushed_at": "2021-03-21T17:50:45Z", - "subscription_url": "https://api.github.com/repos/sdmg15/Best-websites-a-programmer-should-visit/subscription", - "has_pages": true, - "default_branch": "master", - "issues_url": "https://api.github.com/repos/sdmg15/Best-websites-a-programmer-should-visit/issues{/number}", - "git_tags_url": "https://api.github.com/repos/sdmg15/Best-websites-a-programmer-should-visit/git/tags{/sha}", - "blobs_url": "https://api.github.com/repos/sdmg15/Best-websites-a-programmer-should-visit/git/blobs{/sha}", - "contributors_url": "https://api.github.com/repos/sdmg15/Best-websites-a-programmer-should-visit/contributors", - "milestones_url": "https://api.github.com/repos/sdmg15/Best-websites-a-programmer-should-visit/milestones{/number}", - "owner": { - "repos_url": "https://api.github.com/users/sdmg15/repos", - "followers_url": "https://api.github.com/users/sdmg15/followers", - "node_id": "MDQ6VXNlcjEzMDc3MDM5", - "subscriptions_url": "https://api.github.com/users/sdmg15/subscriptions", - "url": "https://api.github.com/users/sdmg15", - "site_admin": false, - "type": "User", - "received_events_url": "https://api.github.com/users/sdmg15/received_events", - "following_url": "https://api.github.com/users/sdmg15/following{/other_user}", - "starred_url": "https://api.github.com/users/sdmg15/starred{/owner}{/repo}", - "avatar_url": "https://avatars.githubusercontent.com/u/13077039?v=4", - "id": 13077039, - "gravatar_id": "", - "gists_url": "https://api.github.com/users/sdmg15/gists{/gist_id}", - "events_url": "https://api.github.com/users/sdmg15/events{/privacy}", - "login": "sdmg15", - "organizations_url": "https://api.github.com/users/sdmg15/orgs", - "html_url": "https://github.com/sdmg15" - }, - "contents_url": "https://api.github.com/repos/sdmg15/Best-websites-a-programmer-should-visit/contents/{+path}", - "has_wiki": true, - "git_refs_url": "https://api.github.com/repos/sdmg15/Best-websites-a-programmer-should-visit/git/refs{/sha}", - "branches_url": "https://api.github.com/repos/sdmg15/Best-websites-a-programmer-should-visit/branches{/branch}", - "archived": false, - "assignees_url": "https://api.github.com/repos/sdmg15/Best-websites-a-programmer-should-visit/assignees{/user}", - "comments_url": "https://api.github.com/repos/sdmg15/Best-websites-a-programmer-should-visit/comments{/number}", - "forks_count": 4589, - "fork": false, - "forks": 4589, - "commits_url": "https://api.github.com/repos/sdmg15/Best-websites-a-programmer-should-visit/commits{/sha}", - "collaborators_url": "https://api.github.com/repos/sdmg15/Best-websites-a-programmer-should-visit/collaborators{/collaborator}", - "stargazers_count": 35217, - "tags_url": "https://api.github.com/repos/sdmg15/Best-websites-a-programmer-should-visit/tags", - "full_name": "sdmg15/Best-websites-a-programmer-should-visit", - "id": 83999700, - "size": 1577, - "downloads_url": "https://api.github.com/repos/sdmg15/Best-websites-a-programmer-should-visit/downloads", - "statuses_url": "https://api.github.com/repos/sdmg15/Best-websites-a-programmer-should-visit/statuses/{sha}", - "git_commits_url": "https://api.github.com/repos/sdmg15/Best-websites-a-programmer-should-visit/git/commits{/sha}", - "has_downloads": true, - "issue_comment_url": "https://api.github.com/repos/sdmg15/Best-websites-a-programmer-should-visit/issues/comments{/number}", - "issue_events_url": "https://api.github.com/repos/sdmg15/Best-websites-a-programmer-should-visit/issues/events{/number}", - "hooks_url": "https://api.github.com/repos/sdmg15/Best-websites-a-programmer-should-visit/hooks", - "description": ":link: Some useful websites for programmers.", - "has_issues": true, - "language": null, - "ssh_url": "git@github.com:sdmg15/Best-websites-a-programmer-should-visit.git", - "teams_url": "https://api.github.com/repos/sdmg15/Best-websites-a-programmer-should-visit/teams", - "private": false, - "watchers_count": 35217, - "node_id": "MDEwOlJlcG9zaXRvcnk4Mzk5OTcwMA==", - "labels_url": "https://api.github.com/repos/sdmg15/Best-websites-a-programmer-should-visit/labels{/name}", - "archive_url": "https://api.github.com/repos/sdmg15/Best-websites-a-programmer-should-visit/{archive_format}{/ref}", - "open_issues_count": 294, - "forks_url": "https://api.github.com/repos/sdmg15/Best-websites-a-programmer-should-visit/forks", - "has_projects": true - }, - { - "forks_count": 72, - "git_tags_url": "https://api.github.com/repos/Sanix-Darker/AntiDDOS-system/git/tags{/sha}", - "owner": { - "organizations_url": "https://api.github.com/users/Sanix-Darker/orgs", - "following_url": "https://api.github.com/users/Sanix-Darker/following{/other_user}", - "node_id": "MDQ6VXNlcjIyNTc2NzU4", - "gists_url": "https://api.github.com/users/Sanix-Darker/gists{/gist_id}", - "starred_url": "https://api.github.com/users/Sanix-Darker/starred{/owner}{/repo}", - "html_url": "https://github.com/Sanix-Darker", - "gravatar_id": "", - "site_admin": false, - "events_url": "https://api.github.com/users/Sanix-Darker/events{/privacy}", - "avatar_url": "https://avatars.githubusercontent.com/u/22576758?v=4", - "login": "Sanix-Darker", - "subscriptions_url": "https://api.github.com/users/Sanix-Darker/subscriptions", - "type": "User", - "received_events_url": "https://api.github.com/users/Sanix-Darker/received_events", - "followers_url": "https://api.github.com/users/Sanix-Darker/followers", - "url": "https://api.github.com/users/Sanix-Darker", - "id": 22576758, - "repos_url": "https://api.github.com/users/Sanix-Darker/repos" - }, - "git_url": "git://github.com/Sanix-Darker/AntiDDOS-system.git", - "description": "🛡️⚔️ Protect your web app from DDOS attack or the Dead Ping + CAPTCHA VERIFICATION in one line!", - "tags_url": "https://api.github.com/repos/Sanix-Darker/AntiDDOS-system/tags", - "updated_at": "2021-04-02T06:20:06Z", - "comments_url": "https://api.github.com/repos/Sanix-Darker/AntiDDOS-system/comments{/number}", - "has_wiki": true, - "open_issues_count": 3, - "fork": false, - "archived": false, - "events_url": "https://api.github.com/repos/Sanix-Darker/AntiDDOS-system/events", - "languages_url": "https://api.github.com/repos/Sanix-Darker/AntiDDOS-system/languages", - "contributors_url": "https://api.github.com/repos/Sanix-Darker/AntiDDOS-system/contributors", - "deployments_url": "https://api.github.com/repos/Sanix-Darker/AntiDDOS-system/deployments", - "collaborators_url": "https://api.github.com/repos/Sanix-Darker/AntiDDOS-system/collaborators{/collaborator}", - "trees_url": "https://api.github.com/repos/Sanix-Darker/AntiDDOS-system/git/trees{/sha}", - "issue_events_url": "https://api.github.com/repos/Sanix-Darker/AntiDDOS-system/issues/events{/number}", - "url": "https://api.github.com/repos/Sanix-Darker/AntiDDOS-system", - "watchers_count": 174, - "merges_url": "https://api.github.com/repos/Sanix-Darker/AntiDDOS-system/merges", - "releases_url": "https://api.github.com/repos/Sanix-Darker/AntiDDOS-system/releases{/id}", - "node_id": "MDEwOlJlcG9zaXRvcnk4ODIzNDE1MQ==", - "watchers": 174, - "archive_url": "https://api.github.com/repos/Sanix-Darker/AntiDDOS-system/{archive_format}{/ref}", - "private": false, - "pushed_at": "2020-11-01T10:52:37Z", - "teams_url": "https://api.github.com/repos/Sanix-Darker/AntiDDOS-system/teams", - "homepage": "", - "has_issues": true, - "stargazers_url": "https://api.github.com/repos/Sanix-Darker/AntiDDOS-system/stargazers", - "id": 88234151, - "issues_url": "https://api.github.com/repos/Sanix-Darker/AntiDDOS-system/issues{/number}", - "pulls_url": "https://api.github.com/repos/Sanix-Darker/AntiDDOS-system/pulls{/number}", - "subscribers_url": "https://api.github.com/repos/Sanix-Darker/AntiDDOS-system/subscribers", - "created_at": "2017-04-14T04:54:43Z", - "has_pages": false, - "issue_comment_url": "https://api.github.com/repos/Sanix-Darker/AntiDDOS-system/issues/comments{/number}", - "license": { - "key": "mit", - "name": "MIT License", - "node_id": "MDc6TGljZW5zZTEz", - "spdx_id": "MIT", - "url": "https://api.github.com/licenses/mit" - }, - "notifications_url": "https://api.github.com/repos/Sanix-Darker/AntiDDOS-system/notifications{?since,all,participating}", - "branches_url": "https://api.github.com/repos/Sanix-Darker/AntiDDOS-system/branches{/branch}", - "name": "AntiDDOS-system", - "milestones_url": "https://api.github.com/repos/Sanix-Darker/AntiDDOS-system/milestones{/number}", - "ssh_url": "git@github.com:Sanix-Darker/AntiDDOS-system.git", - "forks_url": "https://api.github.com/repos/Sanix-Darker/AntiDDOS-system/forks", - "size": 526, - "disabled": false, - "open_issues": 3, - "compare_url": "https://api.github.com/repos/Sanix-Darker/AntiDDOS-system/compare/{base}...{head}", - "blobs_url": "https://api.github.com/repos/Sanix-Darker/AntiDDOS-system/git/blobs{/sha}", - "contents_url": "https://api.github.com/repos/Sanix-Darker/AntiDDOS-system/contents/{+path}", - "assignees_url": "https://api.github.com/repos/Sanix-Darker/AntiDDOS-system/assignees{/user}", - "svn_url": "https://github.com/Sanix-Darker/AntiDDOS-system", - "has_downloads": true, - "labels_url": "https://api.github.com/repos/Sanix-Darker/AntiDDOS-system/labels{/name}", - "html_url": "https://github.com/Sanix-Darker/AntiDDOS-system", - "git_refs_url": "https://api.github.com/repos/Sanix-Darker/AntiDDOS-system/git/refs{/sha}", - "language": "PHP", - "commits_url": "https://api.github.com/repos/Sanix-Darker/AntiDDOS-system/commits{/sha}", - "subscription_url": "https://api.github.com/repos/Sanix-Darker/AntiDDOS-system/subscription", - "stargazers_count": 174, - "mirror_url": null, - "permissions": { - "admin": false, - "pull": true, - "push": false - }, - "clone_url": "https://github.com/Sanix-Darker/AntiDDOS-system.git", - "statuses_url": "https://api.github.com/repos/Sanix-Darker/AntiDDOS-system/statuses/{sha}", - "hooks_url": "https://api.github.com/repos/Sanix-Darker/AntiDDOS-system/hooks", - "default_branch": "master", - "keys_url": "https://api.github.com/repos/Sanix-Darker/AntiDDOS-system/keys{/key_id}", - "downloads_url": "https://api.github.com/repos/Sanix-Darker/AntiDDOS-system/downloads", - "forks": 72, - "has_projects": true, - "full_name": "Sanix-Darker/AntiDDOS-system", - "git_commits_url": "https://api.github.com/repos/Sanix-Darker/AntiDDOS-system/git/commits{/sha}" - }, - { - "stargazers_count": 11, - "license": { - "url": "https://api.github.com/licenses/gpl-3.0", - "name": "GNU General Public License v3.0", - "spdx_id": "GPL-3.0", - "key": "gpl-3.0", - "node_id": "MDc6TGljZW5zZTk=" - }, - "archived": false, - "full_name": "n05la3/cmdtypist", - "git_refs_url": "https://api.github.com/repos/n05la3/cmdtypist/git/refs{/sha}", - "compare_url": "https://api.github.com/repos/n05la3/cmdtypist/compare/{base}...{head}", - "commits_url": "https://api.github.com/repos/n05la3/cmdtypist/commits{/sha}", - "mirror_url": null, - "owner": { - "repos_url": "https://api.github.com/users/n05la3/repos", - "received_events_url": "https://api.github.com/users/n05la3/received_events", - "gravatar_id": "", - "type": "User", - "gists_url": "https://api.github.com/users/n05la3/gists{/gist_id}", - "id": 23618770, - "starred_url": "https://api.github.com/users/n05la3/starred{/owner}{/repo}", - "login": "n05la3", - "avatar_url": "https://avatars.githubusercontent.com/u/23618770?v=4", - "html_url": "https://github.com/n05la3", - "node_id": "MDQ6VXNlcjIzNjE4Nzcw", - "followers_url": "https://api.github.com/users/n05la3/followers", - "events_url": "https://api.github.com/users/n05la3/events{/privacy}", - "subscriptions_url": "https://api.github.com/users/n05la3/subscriptions", - "organizations_url": "https://api.github.com/users/n05la3/orgs", - "following_url": "https://api.github.com/users/n05la3/following{/other_user}", - "site_admin": false, - "url": "https://api.github.com/users/n05la3" - }, - "svn_url": "https://github.com/n05la3/cmdtypist", - "releases_url": "https://api.github.com/repos/n05la3/cmdtypist/releases{/id}", - "archive_url": "https://api.github.com/repos/n05la3/cmdtypist/{archive_format}{/ref}", - "forks": 2, - "git_commits_url": "https://api.github.com/repos/n05la3/cmdtypist/git/commits{/sha}", - "pulls_url": "https://api.github.com/repos/n05la3/cmdtypist/pulls{/number}", - "has_projects": true, - "forks_count": 2, - "stargazers_url": "https://api.github.com/repos/n05la3/cmdtypist/stargazers", - "id": 89456504, - "fork": false, - "ssh_url": "git@github.com:n05la3/cmdtypist.git", - "deployments_url": "https://api.github.com/repos/n05la3/cmdtypist/deployments", - "url": "https://api.github.com/repos/n05la3/cmdtypist", - "blobs_url": "https://api.github.com/repos/n05la3/cmdtypist/git/blobs{/sha}", - "html_url": "https://github.com/n05la3/cmdtypist", - "size": 1172, - "forks_url": "https://api.github.com/repos/n05la3/cmdtypist/forks", - "branches_url": "https://api.github.com/repos/n05la3/cmdtypist/branches{/branch}", - "statuses_url": "https://api.github.com/repos/n05la3/cmdtypist/statuses/{sha}", - "has_pages": false, - "clone_url": "https://github.com/n05la3/cmdtypist.git", - "private": false, - "updated_at": "2021-03-08T02:49:55Z", - "issue_events_url": "https://api.github.com/repos/n05la3/cmdtypist/issues/events{/number}", - "has_downloads": true, - "disabled": false, - "language": "C", - "open_issues": 1, - "issues_url": "https://api.github.com/repos/n05la3/cmdtypist/issues{/number}", - "pushed_at": "2019-04-15T20:30:44Z", - "assignees_url": "https://api.github.com/repos/n05la3/cmdtypist/assignees{/user}", - "hooks_url": "https://api.github.com/repos/n05la3/cmdtypist/hooks", - "collaborators_url": "https://api.github.com/repos/n05la3/cmdtypist/collaborators{/collaborator}", - "merges_url": "https://api.github.com/repos/n05la3/cmdtypist/merges", - "teams_url": "https://api.github.com/repos/n05la3/cmdtypist/teams", - "downloads_url": "https://api.github.com/repos/n05la3/cmdtypist/downloads", - "git_url": "git://github.com/n05la3/cmdtypist.git", - "tags_url": "https://api.github.com/repos/n05la3/cmdtypist/tags", - "issue_comment_url": "https://api.github.com/repos/n05la3/cmdtypist/issues/comments{/number}", - "languages_url": "https://api.github.com/repos/n05la3/cmdtypist/languages", - "default_branch": "master", - "contents_url": "https://api.github.com/repos/n05la3/cmdtypist/contents/{+path}", - "keys_url": "https://api.github.com/repos/n05la3/cmdtypist/keys{/key_id}", - "watchers": 11, - "created_at": "2017-04-26T08:21:38Z", - "description": "Highly configurable command line typing tutor designed for linux distros written in C. It is fast and efficient and with a good progress report display. Become a pro typist with the DVORAK and QWERTY keyboards.", - "subscribers_url": "https://api.github.com/repos/n05la3/cmdtypist/subscribers", - "labels_url": "https://api.github.com/repos/n05la3/cmdtypist/labels{/name}", - "homepage": "", - "has_wiki": true, - "node_id": "MDEwOlJlcG9zaXRvcnk4OTQ1NjUwNA==", - "subscription_url": "https://api.github.com/repos/n05la3/cmdtypist/subscription", - "name": "cmdtypist", - "comments_url": "https://api.github.com/repos/n05la3/cmdtypist/comments{/number}", - "watchers_count": 11, - "trees_url": "https://api.github.com/repos/n05la3/cmdtypist/git/trees{/sha}", - "notifications_url": "https://api.github.com/repos/n05la3/cmdtypist/notifications{?since,all,participating}", - "milestones_url": "https://api.github.com/repos/n05la3/cmdtypist/milestones{/number}", - "git_tags_url": "https://api.github.com/repos/n05la3/cmdtypist/git/tags{/sha}", - "events_url": "https://api.github.com/repos/n05la3/cmdtypist/events", - "has_issues": true, - "contributors_url": "https://api.github.com/repos/n05la3/cmdtypist/contributors", - "open_issues_count": 1, - "permissions": { - "admin": false, - "push": false, - "pull": true - } - }, - { - "license": null, - "deployments_url": "https://api.github.com/repos/dadaromeo/recsys-hpf/deployments", - "pushed_at": "2017-06-20T08:26:39Z", - "merges_url": "https://api.github.com/repos/dadaromeo/recsys-hpf/merges", - "issues_url": "https://api.github.com/repos/dadaromeo/recsys-hpf/issues{/number}", - "releases_url": "https://api.github.com/repos/dadaromeo/recsys-hpf/releases{/id}", - "mirror_url": null, - "svn_url": "https://github.com/dadaromeo/recsys-hpf", - "forks": 4, - "name": "recsys-hpf", - "forks_url": "https://api.github.com/repos/dadaromeo/recsys-hpf/forks", - "has_downloads": true, - "forks_count": 4, - "language": "Jupyter Notebook", - "commits_url": "https://api.github.com/repos/dadaromeo/recsys-hpf/commits{/sha}", - "size": 19080, - "notifications_url": "https://api.github.com/repos/dadaromeo/recsys-hpf/notifications{?since,all,participating}", - "assignees_url": "https://api.github.com/repos/dadaromeo/recsys-hpf/assignees{/user}", - "id": 92652980, - "homepage": "https://dadaromeo.github.io/posts/movies-recommendation-with-hierarchical-poisson-factorization-in-edward/", - "git_refs_url": "https://api.github.com/repos/dadaromeo/recsys-hpf/git/refs{/sha}", - "events_url": "https://api.github.com/repos/dadaromeo/recsys-hpf/events", - "watchers_count": 17, - "keys_url": "https://api.github.com/repos/dadaromeo/recsys-hpf/keys{/key_id}", - "private": false, - "trees_url": "https://api.github.com/repos/dadaromeo/recsys-hpf/git/trees{/sha}", - "issue_comment_url": "https://api.github.com/repos/dadaromeo/recsys-hpf/issues/comments{/number}", - "blobs_url": "https://api.github.com/repos/dadaromeo/recsys-hpf/git/blobs{/sha}", - "pulls_url": "https://api.github.com/repos/dadaromeo/recsys-hpf/pulls{/number}", - "compare_url": "https://api.github.com/repos/dadaromeo/recsys-hpf/compare/{base}...{head}", - "has_issues": true, - "has_pages": false, - "issue_events_url": "https://api.github.com/repos/dadaromeo/recsys-hpf/issues/events{/number}", - "open_issues": 0, - "ssh_url": "git@github.com:dadaromeo/recsys-hpf.git", - "description": "Movies Recommendation with Hierarchical Poisson Factorization in Edward", - "has_wiki": true, - "git_tags_url": "https://api.github.com/repos/dadaromeo/recsys-hpf/git/tags{/sha}", - "collaborators_url": "https://api.github.com/repos/dadaromeo/recsys-hpf/collaborators{/collaborator}", - "milestones_url": "https://api.github.com/repos/dadaromeo/recsys-hpf/milestones{/number}", - "labels_url": "https://api.github.com/repos/dadaromeo/recsys-hpf/labels{/name}", - "html_url": "https://github.com/dadaromeo/recsys-hpf", - "stargazers_url": "https://api.github.com/repos/dadaromeo/recsys-hpf/stargazers", - "comments_url": "https://api.github.com/repos/dadaromeo/recsys-hpf/comments{/number}", - "tags_url": "https://api.github.com/repos/dadaromeo/recsys-hpf/tags", - "contents_url": "https://api.github.com/repos/dadaromeo/recsys-hpf/contents/{+path}", - "full_name": "dadaromeo/recsys-hpf", - "disabled": false, - "subscription_url": "https://api.github.com/repos/dadaromeo/recsys-hpf/subscription", - "stargazers_count": 17, - "owner": { - "gists_url": "https://api.github.com/users/dadaromeo/gists{/gist_id}", - "following_url": "https://api.github.com/users/dadaromeo/following{/other_user}", - "organizations_url": "https://api.github.com/users/dadaromeo/orgs", - "followers_url": "https://api.github.com/users/dadaromeo/followers", - "html_url": "https://github.com/dadaromeo", - "received_events_url": "https://api.github.com/users/dadaromeo/received_events", - "node_id": "MDQ6VXNlcjU2NzU3MzI=", - "repos_url": "https://api.github.com/users/dadaromeo/repos", - "site_admin": false, - "url": "https://api.github.com/users/dadaromeo", - "login": "dadaromeo", - "starred_url": "https://api.github.com/users/dadaromeo/starred{/owner}{/repo}", - "events_url": "https://api.github.com/users/dadaromeo/events{/privacy}", - "id": 5675732, - "gravatar_id": "", - "subscriptions_url": "https://api.github.com/users/dadaromeo/subscriptions", - "type": "User", - "avatar_url": "https://avatars.githubusercontent.com/u/5675732?v=4" - }, - "languages_url": "https://api.github.com/repos/dadaromeo/recsys-hpf/languages", - "git_url": "git://github.com/dadaromeo/recsys-hpf.git", - "branches_url": "https://api.github.com/repos/dadaromeo/recsys-hpf/branches{/branch}", - "clone_url": "https://github.com/dadaromeo/recsys-hpf.git", - "permissions": { - "push": false, - "admin": false, - "pull": true - }, - "teams_url": "https://api.github.com/repos/dadaromeo/recsys-hpf/teams", - "downloads_url": "https://api.github.com/repos/dadaromeo/recsys-hpf/downloads", - "updated_at": "2020-06-25T21:15:03Z", - "default_branch": "master", - "subscribers_url": "https://api.github.com/repos/dadaromeo/recsys-hpf/subscribers", - "fork": false, - "contributors_url": "https://api.github.com/repos/dadaromeo/recsys-hpf/contributors", - "git_commits_url": "https://api.github.com/repos/dadaromeo/recsys-hpf/git/commits{/sha}", - "statuses_url": "https://api.github.com/repos/dadaromeo/recsys-hpf/statuses/{sha}", - "url": "https://api.github.com/repos/dadaromeo/recsys-hpf", - "archive_url": "https://api.github.com/repos/dadaromeo/recsys-hpf/{archive_format}{/ref}", - "hooks_url": "https://api.github.com/repos/dadaromeo/recsys-hpf/hooks", - "archived": false, - "node_id": "MDEwOlJlcG9zaXRvcnk5MjY1Mjk4MA==", - "has_projects": true, - "watchers": 17, - "open_issues_count": 0, - "created_at": "2017-05-28T09:56:20Z" - }, - { - "watchers": 37, - "contents_url": "https://api.github.com/repos/valerymelou/django-active-link/contents/{+path}", - "contributors_url": "https://api.github.com/repos/valerymelou/django-active-link/contributors", - "downloads_url": "https://api.github.com/repos/valerymelou/django-active-link/downloads", - "created_at": "2017-07-10T02:27:55Z", - "language": "Python", - "archived": false, - "node_id": "MDEwOlJlcG9zaXRvcnk5NjcyNzcwNA==", - "html_url": "https://github.com/valerymelou/django-active-link", - "has_pages": false, - "open_issues_count": 1, - "milestones_url": "https://api.github.com/repos/valerymelou/django-active-link/milestones{/number}", - "owner": { - "following_url": "https://api.github.com/users/valerymelou/following{/other_user}", - "gists_url": "https://api.github.com/users/valerymelou/gists{/gist_id}", - "type": "User", - "html_url": "https://github.com/valerymelou", - "url": "https://api.github.com/users/valerymelou", - "subscriptions_url": "https://api.github.com/users/valerymelou/subscriptions", - "organizations_url": "https://api.github.com/users/valerymelou/orgs", - "id": 9080102, - "gravatar_id": "", - "events_url": "https://api.github.com/users/valerymelou/events{/privacy}", - "login": "valerymelou", - "avatar_url": "https://avatars.githubusercontent.com/u/9080102?v=4", - "received_events_url": "https://api.github.com/users/valerymelou/received_events", - "followers_url": "https://api.github.com/users/valerymelou/followers", - "starred_url": "https://api.github.com/users/valerymelou/starred{/owner}{/repo}", - "repos_url": "https://api.github.com/users/valerymelou/repos", - "site_admin": false, - "node_id": "MDQ6VXNlcjkwODAxMDI=" - }, - "clone_url": "https://github.com/valerymelou/django-active-link.git", - "forks": 6, - "open_issues": 1, - "forks_count": 6, - "trees_url": "https://api.github.com/repos/valerymelou/django-active-link/git/trees{/sha}", - "statuses_url": "https://api.github.com/repos/valerymelou/django-active-link/statuses/{sha}", - "blobs_url": "https://api.github.com/repos/valerymelou/django-active-link/git/blobs{/sha}", - "deployments_url": "https://api.github.com/repos/valerymelou/django-active-link/deployments", - "collaborators_url": "https://api.github.com/repos/valerymelou/django-active-link/collaborators{/collaborator}", - "issue_events_url": "https://api.github.com/repos/valerymelou/django-active-link/issues/events{/number}", - "disabled": false, - "tags_url": "https://api.github.com/repos/valerymelou/django-active-link/tags", - "updated_at": "2021-03-01T22:48:39Z", - "archive_url": "https://api.github.com/repos/valerymelou/django-active-link/{archive_format}{/ref}", - "stargazers_count": 37, - "permissions": { - "admin": false, - "push": false, - "pull": true - }, - "hooks_url": "https://api.github.com/repos/valerymelou/django-active-link/hooks", - "pushed_at": "2021-04-02T15:56:36Z", - "private": false, - "labels_url": "https://api.github.com/repos/valerymelou/django-active-link/labels{/name}", - "notifications_url": "https://api.github.com/repos/valerymelou/django-active-link/notifications{?since,all,participating}", - "languages_url": "https://api.github.com/repos/valerymelou/django-active-link/languages", - "full_name": "valerymelou/django-active-link", - "has_downloads": true, - "url": "https://api.github.com/repos/valerymelou/django-active-link", - "pulls_url": "https://api.github.com/repos/valerymelou/django-active-link/pulls{/number}", - "releases_url": "https://api.github.com/repos/valerymelou/django-active-link/releases{/id}", - "git_refs_url": "https://api.github.com/repos/valerymelou/django-active-link/git/refs{/sha}", - "has_issues": true, - "compare_url": "https://api.github.com/repos/valerymelou/django-active-link/compare/{base}...{head}", - "ssh_url": "git@github.com:valerymelou/django-active-link.git", - "git_url": "git://github.com/valerymelou/django-active-link.git", - "size": 83, - "subscribers_url": "https://api.github.com/repos/valerymelou/django-active-link/subscribers", - "watchers_count": 37, - "comments_url": "https://api.github.com/repos/valerymelou/django-active-link/comments{/number}", - "mirror_url": null, - "git_tags_url": "https://api.github.com/repos/valerymelou/django-active-link/git/tags{/sha}", - "forks_url": "https://api.github.com/repos/valerymelou/django-active-link/forks", - "has_wiki": true, - "fork": false, - "id": 96727704, - "branches_url": "https://api.github.com/repos/valerymelou/django-active-link/branches{/branch}", - "description": "The best way to highlight active links in your Django project.", - "subscription_url": "https://api.github.com/repos/valerymelou/django-active-link/subscription", - "issue_comment_url": "https://api.github.com/repos/valerymelou/django-active-link/issues/comments{/number}", - "issues_url": "https://api.github.com/repos/valerymelou/django-active-link/issues{/number}", - "stargazers_url": "https://api.github.com/repos/valerymelou/django-active-link/stargazers", - "git_commits_url": "https://api.github.com/repos/valerymelou/django-active-link/git/commits{/sha}", - "commits_url": "https://api.github.com/repos/valerymelou/django-active-link/commits{/sha}", - "events_url": "https://api.github.com/repos/valerymelou/django-active-link/events", - "teams_url": "https://api.github.com/repos/valerymelou/django-active-link/teams", - "license": { - "node_id": "MDc6TGljZW5zZTU=", - "url": "https://api.github.com/licenses/bsd-3-clause", - "name": "BSD 3-Clause \"New\" or \"Revised\" License", - "spdx_id": "BSD-3-Clause", - "key": "bsd-3-clause" - }, - "name": "django-active-link", - "svn_url": "https://github.com/valerymelou/django-active-link", - "homepage": "", - "has_projects": true, - "assignees_url": "https://api.github.com/repos/valerymelou/django-active-link/assignees{/user}", - "default_branch": "master", - "merges_url": "https://api.github.com/repos/valerymelou/django-active-link/merges", - "keys_url": "https://api.github.com/repos/valerymelou/django-active-link/keys{/key_id}" - } -] +version https://git-lfs.github.com/spec/v1 +oid sha256:274f333961a0b0fc4725dab55b76df6ae6b80b1d827d02fb133dd9fee1e07ebd +size 118246 diff --git a/scripts/setup-datastore/fixtures/users.json b/scripts/setup-datastore/fixtures/users.json index 3dc2919d..d5129db0 100644 --- a/scripts/setup-datastore/fixtures/users.json +++ b/scripts/setup-datastore/fixtures/users.json @@ -1,682 +1,3 @@ -[ - { - "bio": "IT Engineer with a great experience on Software Project Management and Open Sources solutions.", - "subscriptions_url": "https://api.github.com/users/pollux1er/subscriptions", - "public_gists": 0, - "email": "assontia@gmail.com", - "gravatar_id": "", - "events_url": "https://api.github.com/users/pollux1er/events{/privacy}", - "received_events_url": "https://api.github.com/users/pollux1er/received_events", - "id": 24635, - "repos_url": "https://api.github.com/users/pollux1er/repos", - "blog": "http://www.annuaire.cm", - "avatar_url": "https://avatars.githubusercontent.com/u/24635?v=4", - "site_admin": false, - "following_url": "https://api.github.com/users/pollux1er/following{/other_user}", - "login": "pollux1er", - "public_repos": 53, - "gists_url": "https://api.github.com/users/pollux1er/gists{/gist_id}", - "followers_url": "https://api.github.com/users/pollux1er/followers", - "updated_at": "2021-03-25T14:26:13Z", - "followers": 10, - "html_url": "https://github.com/pollux1er", - "twitter_username": null, - "created_at": "2008-09-15T08:27:19Z", - "organizations_url": "https://api.github.com/users/pollux1er/orgs", - "following": 15, - "url": "https://api.github.com/users/pollux1er", - "location": "Douala Cameroon", - "node_id": "MDQ6VXNlcjI0NjM1", - "type": "User", - "company": "Nexttel Cameroun", - "name": "Patient Assontia", - "hireable": true, - "starred_url": "https://api.github.com/users/pollux1er/starred{/owner}{/repo}" - }, - { - "site_admin": false, - "starred_url": "https://api.github.com/users/molhokwai/starred{/owner}{/repo}", - "received_events_url": "https://api.github.com/users/molhokwai/received_events", - "following": 0, - "blog": "https://bit.ly/emelit-main", - "email": "molhokwai@gmail.com", - "organizations_url": "https://api.github.com/users/molhokwai/orgs", - "avatar_url": "https://avatars.githubusercontent.com/u/89254?v=4", - "updated_at": "2020-12-25T06:57:56Z", - "public_gists": 0, - "location": "Douala, Cameroon", - "url": "https://api.github.com/users/molhokwai", - "bio": "Web programmer & project developer -who like to get things done- for 17 years+ in Belgium & Holland, now In Cameroon...\r\nSoon starting *Machine Learning*...", - "html_url": "https://github.com/molhokwai", - "twitter_username": "molhokwai", - "company": "Self-employed (Emelit)", - "followers_url": "https://api.github.com/users/molhokwai/followers", - "followers": 2, - "following_url": "https://api.github.com/users/molhokwai/following{/other_user}", - "name": null, - "hireable": null, - "gravatar_id": "", - "node_id": "MDQ6VXNlcjg5MjU0", - "type": "User", - "login": "molhokwai", - "id": 89254, - "public_repos": 15, - "subscriptions_url": "https://api.github.com/users/molhokwai/subscriptions", - "repos_url": "https://api.github.com/users/molhokwai/repos", - "gists_url": "https://api.github.com/users/molhokwai/gists{/gist_id}", - "events_url": "https://api.github.com/users/molhokwai/events{/privacy}", - "created_at": "2009-05-27T18:20:14Z" - }, - { - "following_url": "https://api.github.com/users/michelcameroon/following{/other_user}", - "followers": 1, - "url": "https://api.github.com/users/michelcameroon", - "avatar_url": "https://avatars.githubusercontent.com/u/240598?v=4", - "email": "lug.limbe@gmail.com", - "type": "User", - "hireable": null, - "starred_url": "https://api.github.com/users/michelcameroon/starred{/owner}{/repo}", - "public_gists": 0, - "blog": "sokolo.cronopios.org", - "subscriptions_url": "https://api.github.com/users/michelcameroon/subscriptions", - "following": 0, - "id": 240598, - "organizations_url": "https://api.github.com/users/michelcameroon/orgs", - "created_at": "2010-04-09T20:05:53Z", - "events_url": "https://api.github.com/users/michelcameroon/events{/privacy}", - "gravatar_id": "", - "updated_at": "2020-11-23T15:33:21Z", - "bio": "open source informatic school in limbe cameroon", - "name": "michel", - "twitter_username": null, - "public_repos": 64, - "html_url": "https://github.com/michelcameroon", - "location": "limbe cameroon", - "company": null, - "received_events_url": "https://api.github.com/users/michelcameroon/received_events", - "repos_url": "https://api.github.com/users/michelcameroon/repos", - "site_admin": false, - "gists_url": "https://api.github.com/users/michelcameroon/gists{/gist_id}", - "followers_url": "https://api.github.com/users/michelcameroon/followers", - "login": "michelcameroon", - "node_id": "MDQ6VXNlcjI0MDU5OA==" - }, - { - "received_events_url": "https://api.github.com/users/lekeutch/received_events", - "events_url": "https://api.github.com/users/lekeutch/events{/privacy}", - "type": "User", - "public_repos": 5, - "starred_url": "https://api.github.com/users/lekeutch/starred{/owner}{/repo}", - "public_gists": 0, - "organizations_url": "https://api.github.com/users/lekeutch/orgs", - "repos_url": "https://api.github.com/users/lekeutch/repos", - "following": 2, - "location": "Immeuble July Voyages - Elig-Essono - Yaoundé - CAMEROUN", - "company": "Isalyd Corporation SA", - "login": "lekeutch", - "updated_at": "2021-03-20T19:29:31Z", - "node_id": "MDQ6VXNlcjI0ODIwNg==", - "avatar_url": "https://avatars.githubusercontent.com/u/248206?v=4", - "email": "steve.keutchankeu@gmail.com", - "following_url": "https://api.github.com/users/lekeutch/following{/other_user}", - "url": "https://api.github.com/users/lekeutch", - "hireable": true, - "html_url": "https://github.com/lekeutch", - "followers_url": "https://api.github.com/users/lekeutch/followers", - "subscriptions_url": "https://api.github.com/users/lekeutch/subscriptions", - "created_at": "2010-04-20T14:03:29Z", - "gists_url": "https://api.github.com/users/lekeutch/gists{/gist_id}", - "twitter_username": null, - "site_admin": false, - "blog": "http://www.isalyd.com", - "gravatar_id": "", - "name": "Stève KEUTCHANKEU", - "bio": null, - "followers": 5, - "id": 248206 - }, - { - "starred_url": "https://api.github.com/users/mambenanje/starred{/owner}{/repo}", - "followers": 5, - "login": "mambenanje", - "public_repos": 1, - "email": null, - "company": "Njorku ", - "organizations_url": "https://api.github.com/users/mambenanje/orgs", - "node_id": "MDQ6VXNlcjI3Nzk3NA==", - "following": 0, - "hireable": null, - "subscriptions_url": "https://api.github.com/users/mambenanje/subscriptions", - "id": 277974, - "name": "Churchill Nanje", - "gravatar_id": "", - "bio": "Self taught software engineer turned entrepreneur in Buea, Cameroon", - "events_url": "https://api.github.com/users/mambenanje/events{/privacy}", - "site_admin": false, - "received_events_url": "https://api.github.com/users/mambenanje/received_events", - "url": "https://api.github.com/users/mambenanje", - "updated_at": "2020-11-06T06:00:51Z", - "twitter_username": null, - "followers_url": "https://api.github.com/users/mambenanje/followers", - "html_url": "https://github.com/mambenanje", - "type": "User", - "avatar_url": "https://avatars.githubusercontent.com/u/277974?v=4", - "created_at": "2010-05-15T20:49:33Z", - "location": "Buea, Cameroon", - "public_gists": 0, - "blog": "http://mambenanje.com", - "gists_url": "https://api.github.com/users/mambenanje/gists{/gist_id}", - "repos_url": "https://api.github.com/users/mambenanje/repos", - "following_url": "https://api.github.com/users/mambenanje/following{/other_user}" - }, - { - "hireable": null, - "public_gists": 0, - "followers_url": "https://api.github.com/users/michelvoula/followers", - "received_events_url": "https://api.github.com/users/michelvoula/received_events", - "followers": 1, - "twitter_username": null, - "url": "https://api.github.com/users/michelvoula", - "html_url": "https://github.com/michelvoula", - "avatar_url": "https://avatars.githubusercontent.com/u/459683?v=4", - "email": "michel@akoden.com", - "following_url": "https://api.github.com/users/michelvoula/following{/other_user}", - "events_url": "https://api.github.com/users/michelvoula/events{/privacy}", - "login": "michelvoula", - "node_id": "MDQ6VXNlcjQ1OTY4Mw==", - "blog": "http://www.facebook.com/michel.voula", - "public_repos": 4, - "following": 0, - "type": "User", - "updated_at": "2019-12-02T14:35:35Z", - "gists_url": "https://api.github.com/users/michelvoula/gists{/gist_id}", - "gravatar_id": "", - "name": "Michel VOULA", - "site_admin": false, - "company": null, - "starred_url": "https://api.github.com/users/michelvoula/starred{/owner}{/repo}", - "id": 459683, - "repos_url": "https://api.github.com/users/michelvoula/repos", - "location": "Yaounde Cameroun", - "subscriptions_url": "https://api.github.com/users/michelvoula/subscriptions", - "created_at": "2010-10-29T15:54:53Z", - "organizations_url": "https://api.github.com/users/michelvoula/orgs", - "bio": null - }, - { - "company": "itwim", - "followers_url": "https://api.github.com/users/lemoulu/followers", - "email": "lemoulu@yahoo.fr", - "twitter_username": null, - "avatar_url": "https://avatars.githubusercontent.com/u/488098?v=4", - "received_events_url": "https://api.github.com/users/lemoulu/received_events", - "followers": 0, - "following_url": "https://api.github.com/users/lemoulu/following{/other_user}", - "html_url": "https://github.com/lemoulu", - "gists_url": "https://api.github.com/users/lemoulu/gists{/gist_id}", - "subscriptions_url": "https://api.github.com/users/lemoulu/subscriptions", - "following": 0, - "repos_url": "https://api.github.com/users/lemoulu/repos", - "location": "Yaoundé Cameroun", - "updated_at": "2016-02-26T23:36:54Z", - "created_at": "2010-11-19T07:30:25Z", - "bio": null, - "public_gists": 0, - "blog": "moualeu.com", - "site_admin": false, - "type": "User", - "events_url": "https://api.github.com/users/lemoulu/events{/privacy}", - "login": "lemoulu", - "node_id": "MDQ6VXNlcjQ4ODA5OA==", - "public_repos": 0, - "gravatar_id": "", - "organizations_url": "https://api.github.com/users/lemoulu/orgs", - "name": "lemoulu", - "id": 488098, - "starred_url": "https://api.github.com/users/lemoulu/starred{/owner}{/repo}", - "hireable": true, - "url": "https://api.github.com/users/lemoulu" - }, - { - "url": "https://api.github.com/users/nacerix", - "repos_url": "https://api.github.com/users/nacerix/repos", - "name": "Nacer Adamou", - "gists_url": "https://api.github.com/users/nacerix/gists{/gist_id}", - "public_repos": 57, - "starred_url": "https://api.github.com/users/nacerix/starred{/owner}{/repo}", - "company": null, - "events_url": "https://api.github.com/users/nacerix/events{/privacy}", - "subscriptions_url": "https://api.github.com/users/nacerix/subscriptions", - "twitter_username": null, - "blog": "http://nacerix.blogspot.com", - "html_url": "https://github.com/nacerix", - "hireable": null, - "gravatar_id": "", - "email": "adamou.nacer@gmail.com", - "updated_at": "2021-02-27T01:26:38Z", - "avatar_url": "https://avatars.githubusercontent.com/u/628136?v=4", - "received_events_url": "https://api.github.com/users/nacerix/received_events", - "location": "Yaounde - Cameroon", - "id": 628136, - "following_url": "https://api.github.com/users/nacerix/following{/other_user}", - "following": 2, - "type": "User", - "organizations_url": "https://api.github.com/users/nacerix/orgs", - "followers": 2, - "created_at": "2011-02-20T10:19:51Z", - "login": "nacerix", - "node_id": "MDQ6VXNlcjYyODEzNg==", - "public_gists": 0, - "site_admin": false, - "bio": null, - "followers_url": "https://api.github.com/users/nacerix/followers" - }, - { - "site_admin": false, - "node_id": "MDQ6VXNlcjY4ODc0NA==", - "type": "User", - "gravatar_id": "", - "login": "thewu32", - "received_events_url": "https://api.github.com/users/thewu32/received_events", - "followers_url": "https://api.github.com/users/thewu32/followers", - "name": "Emploi Cameroun", - "bio": null, - "gists_url": "https://api.github.com/users/thewu32/gists{/gist_id}", - "events_url": "https://api.github.com/users/thewu32/events{/privacy}", - "repos_url": "https://api.github.com/users/thewu32/repos", - "updated_at": "2016-02-27T00:02:21Z", - "public_repos": 1, - "following_url": "https://api.github.com/users/thewu32/following{/other_user}", - "public_gists": 0, - "starred_url": "https://api.github.com/users/thewu32/starred{/owner}{/repo}", - "company": "CAWAD SARL", - "email": "info@emploicameroun.net", - "organizations_url": "https://api.github.com/users/thewu32/orgs", - "created_at": "2011-03-24T17:17:35Z", - "url": "https://api.github.com/users/thewu32", - "html_url": "https://github.com/thewu32", - "subscriptions_url": "https://api.github.com/users/thewu32/subscriptions", - "blog": "http://www.emploicameroun.net/", - "hireable": null, - "avatar_url": "https://avatars.githubusercontent.com/u/688744?v=4", - "following": 0, - "location": "Yaoundé, Cameroun", - "id": 688744, - "followers": 0, - "twitter_username": null - }, - { - "location": "Yaounde, Cameroon", - "hireable": true, - "name": "Desmond Takwi", - "html_url": "https://github.com/takwid", - "gravatar_id": "", - "organizations_url": "https://api.github.com/users/takwid/orgs", - "repos_url": "https://api.github.com/users/takwid/repos", - "events_url": "https://api.github.com/users/takwid/events{/privacy}", - "following": 0, - "blog": "http://takwidgroup.com/", - "public_gists": 0, - "followers_url": "https://api.github.com/users/takwid/followers", - "id": 738586, - "followers": 0, - "received_events_url": "https://api.github.com/users/takwid/received_events", - "created_at": "2011-04-19T08:57:28Z", - "following_url": "https://api.github.com/users/takwid/following{/other_user}", - "email": "dtakwi@gmail.com", - "subscriptions_url": "https://api.github.com/users/takwid/subscriptions", - "starred_url": "https://api.github.com/users/takwid/starred{/owner}{/repo}", - "site_admin": false, - "company": "TAKWID GROUP", - "node_id": "MDQ6VXNlcjczODU4Ng==", - "avatar_url": "https://avatars.githubusercontent.com/u/738586?v=4", - "updated_at": "2020-11-19T13:41:00Z", - "type": "User", - "login": "takwid", - "url": "https://api.github.com/users/takwid", - "bio": "Cameroon-based #Entrepreneur", - "twitter_username": "takwid", - "gists_url": "https://api.github.com/users/takwid/gists{/gist_id}", - "public_repos": 0 - }, - { - "hireable": null, - "created_at": "2011-05-23T14:49:12Z", - "node_id": "MDQ6VXNlcjgwNTM0OA==", - "twitter_username": null, - "type": "User", - "subscriptions_url": "https://api.github.com/users/jiofidelus/subscriptions", - "site_admin": false, - "url": "https://api.github.com/users/jiofidelus", - "id": 805348, - "login": "jiofidelus", - "blog": "http://www.jiomekong-uy1.uninet.cm/", - "received_events_url": "https://api.github.com/users/jiofidelus/received_events", - "public_gists": 0, - "name": "Jiomekong Azanzi Fidèl", - "avatar_url": "https://avatars.githubusercontent.com/u/805348?v=4", - "public_repos": 18, - "organizations_url": "https://api.github.com/users/jiofidelus/orgs", - "bio": null, - "location": "Yaoundé, Cameroon", - "gists_url": "https://api.github.com/users/jiofidelus/gists{/gist_id}", - "starred_url": "https://api.github.com/users/jiofidelus/starred{/owner}{/repo}", - "following": 1, - "company": "UMMISCO - University of Yaoundé 1", - "updated_at": "2021-03-11T20:17:41Z", - "email": null, - "html_url": "https://github.com/jiofidelus", - "following_url": "https://api.github.com/users/jiofidelus/following{/other_user}", - "events_url": "https://api.github.com/users/jiofidelus/events{/privacy}", - "repos_url": "https://api.github.com/users/jiofidelus/repos", - "gravatar_id": "", - "followers": 46, - "followers_url": "https://api.github.com/users/jiofidelus/followers" - }, - { - "received_events_url": "https://api.github.com/users/quincykwende/received_events", - "login": "quincykwende", - "updated_at": "2021-01-04T15:19:05Z", - "public_gists": 0, - "followers_url": "https://api.github.com/users/quincykwende/followers", - "site_admin": false, - "html_url": "https://github.com/quincykwende", - "bio": null, - "gravatar_id": "", - "hireable": true, - "node_id": "MDQ6VXNlcjgyMTE5OQ==", - "name": "Quincy Kwende", - "blog": "www.wasamundi.com", - "company": "Wasamundi", - "starred_url": "https://api.github.com/users/quincykwende/starred{/owner}{/repo}", - "avatar_url": "https://avatars.githubusercontent.com/u/821199?v=4", - "following_url": "https://api.github.com/users/quincykwende/following{/other_user}", - "subscriptions_url": "https://api.github.com/users/quincykwende/subscriptions", - "following": 13, - "gists_url": "https://api.github.com/users/quincykwende/gists{/gist_id}", - "created_at": "2011-05-31T17:28:12Z", - "repos_url": "https://api.github.com/users/quincykwende/repos", - "email": null, - "twitter_username": null, - "public_repos": 20, - "id": 821199, - "url": "https://api.github.com/users/quincykwende", - "location": "Buea, Cameroon", - "followers": 9, - "type": "User", - "events_url": "https://api.github.com/users/quincykwende/events{/privacy}", - "organizations_url": "https://api.github.com/users/quincykwende/orgs" - }, - { - "public_gists": 0, - "created_at": "2011-07-11T23:55:50Z", - "events_url": "https://api.github.com/users/ifeyi/events{/privacy}", - "repos_url": "https://api.github.com/users/ifeyi/repos", - "blog": "http://www.cicc.cm", - "bio": null, - "location": "Douala, Yaounde Cameroun", - "followers_url": "https://api.github.com/users/ifeyi/followers", - "hireable": null, - "following_url": "https://api.github.com/users/ifeyi/following{/other_user}", - "company": "CICC", - "email": "ifeyibatindek@gmail.com", - "avatar_url": "https://avatars.githubusercontent.com/u/909023?v=4", - "public_repos": 9, - "name": "ifeyi", - "following": 2, - "html_url": "https://github.com/ifeyi", - "starred_url": "https://api.github.com/users/ifeyi/starred{/owner}{/repo}", - "followers": 2, - "gists_url": "https://api.github.com/users/ifeyi/gists{/gist_id}", - "url": "https://api.github.com/users/ifeyi", - "node_id": "MDQ6VXNlcjkwOTAyMw==", - "updated_at": "2021-03-16T09:01:46Z", - "login": "ifeyi", - "site_admin": false, - "organizations_url": "https://api.github.com/users/ifeyi/orgs", - "type": "User", - "id": 909023, - "received_events_url": "https://api.github.com/users/ifeyi/received_events", - "gravatar_id": "", - "subscriptions_url": "https://api.github.com/users/ifeyi/subscriptions", - "twitter_username": null - }, - { - "gravatar_id": "", - "gists_url": "https://api.github.com/users/babounlek/gists{/gist_id}", - "id": 954008, - "organizations_url": "https://api.github.com/users/babounlek/orgs", - "repos_url": "https://api.github.com/users/babounlek/repos", - "node_id": "MDQ6VXNlcjk1NDAwOA==", - "html_url": "https://github.com/babounlek", - "location": "Yaoundé Cameroun", - "public_repos": 1, - "type": "User", - "public_gists": 0, - "company": "Rank2me", - "following": 0, - "created_at": "2011-08-02T12:26:04Z", - "followers_url": "https://api.github.com/users/babounlek/followers", - "twitter_username": null, - "received_events_url": "https://api.github.com/users/babounlek/received_events", - "name": "rank2me", - "followers": 0, - "login": "babounlek", - "events_url": "https://api.github.com/users/babounlek/events{/privacy}", - "updated_at": "2020-06-04T20:09:35Z", - "following_url": "https://api.github.com/users/babounlek/following{/other_user}", - "avatar_url": "https://avatars.githubusercontent.com/u/954008?v=4", - "hireable": null, - "starred_url": "https://api.github.com/users/babounlek/starred{/owner}{/repo}", - "url": "https://api.github.com/users/babounlek", - "email": null, - "bio": null, - "blog": "rank2me.com", - "subscriptions_url": "https://api.github.com/users/babounlek/subscriptions", - "site_admin": false - }, - { - "html_url": "https://github.com/emuki", - "avatar_url": "https://avatars.githubusercontent.com/u/1027695?v=4", - "received_events_url": "https://api.github.com/users/emuki/received_events", - "organizations_url": "https://api.github.com/users/emuki/orgs", - "following_url": "https://api.github.com/users/emuki/following{/other_user}", - "type": "User", - "node_id": "MDQ6VXNlcjEwMjc2OTU=", - "twitter_username": null, - "login": "emuki", - "name": "Enstine Muki", - "company": "ProBlogger", - "blog": "http://enstinemuki.com", - "gists_url": "https://api.github.com/users/emuki/gists{/gist_id}", - "public_gists": 0, - "followers_url": "https://api.github.com/users/emuki/followers", - "email": null, - "site_admin": false, - "id": 1027695, - "updated_at": "2020-08-07T16:49:07Z", - "followers": 0, - "gravatar_id": "", - "following": 0, - "hireable": null, - "url": "https://api.github.com/users/emuki", - "events_url": "https://api.github.com/users/emuki/events{/privacy}", - "created_at": "2011-09-05T15:16:25Z", - "repos_url": "https://api.github.com/users/emuki/repos", - "bio": null, - "starred_url": "https://api.github.com/users/emuki/starred{/owner}{/repo}", - "subscriptions_url": "https://api.github.com/users/emuki/subscriptions", - "public_repos": 1, - "location": "Douala, Cameroon" - }, - { - "blog": "http://terrabytelabs.com", - "updated_at": "2015-04-07T15:05:41Z", - "gravatar_id": "", - "following": 0, - "public_repos": 0, - "created_at": "2011-09-14T17:19:58Z", - "id": 1050909, - "company": "Terrabyte Labs ", - "email": "opensource@terrabytelabs.com", - "html_url": "https://github.com/terrabytelabs", - "node_id": "MDQ6VXNlcjEwNTA5MDk=", - "avatar_url": "https://avatars2.githubusercontent.com/u/1050909?v=4", - "repos_url": "https://api.github.com/users/terrabytelabs/repos", - "organizations_url": "https://api.github.com/users/terrabytelabs/orgs", - "site_admin": false, - "bio": null, - "name": "Terrabyte Labs", - "received_events_url": "https://api.github.com/users/terrabytelabs/received_events", - "public_gists": 0, - "twitter_username": null, - "subscriptions_url": "https://api.github.com/users/terrabytelabs/subscriptions", - "login": "terrabytelabs", - "following_url": "https://api.github.com/users/terrabytelabs/following{/other_user}", - "location": "Cameroon", - "starred_url": "https://api.github.com/users/terrabytelabs/starred{/owner}{/repo}", - "followers": 0, - "type": "User", - "gists_url": "https://api.github.com/users/terrabytelabs/gists{/gist_id}", - "url": "https://api.github.com/users/terrabytelabs", - "events_url": "https://api.github.com/users/terrabytelabs/events{/privacy}", - "hireable": null, - "followers_url": "https://api.github.com/users/terrabytelabs/followers" - }, - { - "company": null, - "blog": "", - "subscriptions_url": "https://api.github.com/users/efbeka/subscriptions", - "hireable": true, - "organizations_url": "https://api.github.com/users/efbeka/orgs", - "events_url": "https://api.github.com/users/efbeka/events{/privacy}", - "followers_url": "https://api.github.com/users/efbeka/followers", - "email": null, - "avatar_url": "https://avatars.githubusercontent.com/u/1089495?v=4", - "received_events_url": "https://api.github.com/users/efbeka/received_events", - "following": 87, - "followers": 10, - "login": "efbeka", - "public_gists": 3, - "url": "https://api.github.com/users/efbeka", - "location": "Cameroon", - "site_admin": false, - "gists_url": "https://api.github.com/users/efbeka/gists{/gist_id}", - "public_repos": 10, - "html_url": "https://github.com/efbeka", - "bio": null, - "id": 1089495, - "created_at": "2011-09-29T10:16:39Z", - "name": "Berger Fotso", - "node_id": "MDQ6VXNlcjEwODk0OTU=", - "updated_at": "2021-02-06T07:00:21Z", - "twitter_username": null, - "repos_url": "https://api.github.com/users/efbeka/repos", - "starred_url": "https://api.github.com/users/efbeka/starred{/owner}{/repo}", - "following_url": "https://api.github.com/users/efbeka/following{/other_user}", - "gravatar_id": "", - "type": "User" - }, - { - "location": "yaoundé,cameroon", - "public_gists": 1, - "following_url": "https://api.github.com/users/chomnoue/following{/other_user}", - "updated_at": "2021-03-18T02:38:54Z", - "followers_url": "https://api.github.com/users/chomnoue/followers", - "public_repos": 49, - "organizations_url": "https://api.github.com/users/chomnoue/orgs", - "starred_url": "https://api.github.com/users/chomnoue/starred{/owner}{/repo}", - "url": "https://api.github.com/users/chomnoue", - "html_url": "https://github.com/chomnoue", - "site_admin": false, - "type": "User", - "followers": 3, - "node_id": "MDQ6VXNlcjExMzM0MjA=", - "avatar_url": "https://avatars.githubusercontent.com/u/1133420?v=4", - "hireable": true, - "repos_url": "https://api.github.com/users/chomnoue/repos", - "company": null, - "blog": "", - "login": "chomnoue", - "received_events_url": "https://api.github.com/users/chomnoue/received_events", - "events_url": "https://api.github.com/users/chomnoue/events{/privacy}", - "name": "Alain-Michel Chomnoue Nghemning", - "bio": null, - "created_at": "2011-10-17T14:53:20Z", - "gists_url": "https://api.github.com/users/chomnoue/gists{/gist_id}", - "gravatar_id": "", - "subscriptions_url": "https://api.github.com/users/chomnoue/subscriptions", - "id": 1133420, - "twitter_username": null, - "following": 0, - "email": "chomnoue@yahoo.fr" - }, - { - "public_gists": 1, - "created_at": "2011-12-14T19:50:00Z", - "following": 12, - "events_url": "https://api.github.com/users/afranck64/events{/privacy}", - "following_url": "https://api.github.com/users/afranck64/following{/other_user}", - "repos_url": "https://api.github.com/users/afranck64/repos", - "location": null, - "hireable": null, - "avatar_url": "https://avatars.githubusercontent.com/u/1263883?v=4", - "company": "Gottfried Wilhelm Leibniz University", - "organizations_url": "https://api.github.com/users/afranck64/orgs", - "gists_url": "https://api.github.com/users/afranck64/gists{/gist_id}", - "followers": 4, - "twitter_username": null, - "received_events_url": "https://api.github.com/users/afranck64/received_events", - "login": "afranck64", - "bio": null, - "blog": "", - "type": "User", - "email": null, - "node_id": "MDQ6VXNlcjEyNjM4ODM=", - "subscriptions_url": "https://api.github.com/users/afranck64/subscriptions", - "id": 1263883, - "followers_url": "https://api.github.com/users/afranck64/followers", - "name": null, - "url": "https://api.github.com/users/afranck64", - "gravatar_id": "", - "starred_url": "https://api.github.com/users/afranck64/starred{/owner}{/repo}", - "site_admin": false, - "public_repos": 14, - "updated_at": "2021-01-03T17:29:59Z", - "html_url": "https://github.com/afranck64" - }, - { - "bio": null, - "following": 0, - "gravatar_id": "", - "starred_url": "https://api.github.com/users/fxdRoiD/starred{/owner}{/repo}", - "following_url": "https://api.github.com/users/fxdRoiD/following{/other_user}", - "html_url": "https://github.com/fxdRoiD", - "twitter_username": null, - "repos_url": "https://api.github.com/users/fxdRoiD/repos", - "hireable": true, - "organizations_url": "https://api.github.com/users/fxdRoiD/orgs", - "received_events_url": "https://api.github.com/users/fxdRoiD/received_events", - "blog": "", - "site_admin": false, - "avatar_url": "https://avatars3.githubusercontent.com/u/1277943?v=4", - "gists_url": "https://api.github.com/users/fxdRoiD/gists{/gist_id}", - "node_id": "MDQ6VXNlcjEyNzc5NDM=", - "location": "Cameroon", - "updated_at": "2020-03-24T04:25:08Z", - "subscriptions_url": "https://api.github.com/users/fxdRoiD/subscriptions", - "followers_url": "https://api.github.com/users/fxdRoiD/followers", - "email": "franckxav@gmail.com", - "public_repos": 3, - "created_at": "2011-12-21T15:44:11Z", - "type": "User", - "id": 1277943, - "name": "Fx Kamdoum", - "followers": 0, - "company": null, - "url": "https://api.github.com/users/fxdRoiD", - "events_url": "https://api.github.com/users/fxdRoiD/events{/privacy}", - "public_gists": 0, - "login": "fxdRoiD" - } -] +version https://git-lfs.github.com/spec/v1 +oid sha256:cec36695023c189f988cdcf92be06f1f55074ffe2c4d6ecb4d5d8c3db3273634 +size 28901 diff --git a/tools/meilisearch-index-generator/Dockerfile b/tools/meilisearch-index-generator/Dockerfile index c1e608f6..47a49f80 100644 --- a/tools/meilisearch-index-generator/Dockerfile +++ b/tools/meilisearch-index-generator/Dockerfile @@ -1,19 +1,29 @@ FROM python:3.8-slim-buster -RUN apt update && apt install git gcc -y +RUN apt update && apt install git gcc curl procps lsof -y RUN apt install make RUN pip3 install virtualenv +# Create appuser +ENV USER=user +ENV UID=10001 + +RUN adduser \ + --disabled-password \ + --gecos "" \ + --shell "/sbin/nologin" \ + --uid "${UID}" \ + "${USER}" + WORKDIR /app ADD ./requirements.txt ./ -ADD ./Makefile ./ - -RUN make install-deps +RUN pip install --no-cache-dir -r requirements.txt COPY . /app -CMD ["make", "run-with-emulator"] +# set user to `user` +CMD ["python", "-m", "app.cli"] diff --git a/tools/meilisearch-index-generator/Makefile b/tools/meilisearch-index-generator/Makefile index df7bff57..b4ee6b8e 100644 --- a/tools/meilisearch-index-generator/Makefile +++ b/tools/meilisearch-index-generator/Makefile @@ -5,7 +5,7 @@ PYTHON=$(VENVPATH)/bin/python3 venv: $(VENVPATH)/bin/activate $(VENVPATH)/bin/activate: requirements.txt - test -d $(VENVPATH) || virtualenv -p python3 $(VENVPATH); \ + test -d $(VENVPATH) || python3 -m venv $(VENVPATH); \ . $(VENVPATH)/bin/activate; \ pip install -r requirements.txt; \ touch $(VENVPATH)/bin/activate; diff --git a/tools/meilisearch-index-generator/app/cli.py b/tools/meilisearch-index-generator/app/cli.py index 39ca1004..5a821386 100644 --- a/tools/meilisearch-index-generator/app/cli.py +++ b/tools/meilisearch-index-generator/app/cli.py @@ -10,15 +10,14 @@ def create_github_users_index(): ret = fetch_all_users() + print(MEILISEARCH_HOST, MEILISEARCH_MASTER_KEY) client = meilisearch.Client(MEILISEARCH_HOST, MEILISEARCH_MASTER_KEY) try: - index = client.create_index(storage.KIND_USERS, {"primaryKey": "id"}) + client.get_index(storage.KIND_USERS) except Exception as e: - index = client.get_index(storage.KIND_USERS) - print("error: ", e) - finally: - index.update_documents(ret) - print("started updating github_users documents") + client.create_index(storage.KIND_USERS, {"primaryKey": "id"}) + client.index(storage.KIND_USERS).update_documents(ret) + print("started updating github_users documents") def create_github_projects_index(): @@ -26,14 +25,11 @@ def create_github_projects_index(): client = meilisearch.Client(MEILISEARCH_HOST, MEILISEARCH_MASTER_KEY) try: - index = client.create_index(storage.KIND_PROJECTS, {"primaryKey": "id"}) + client.get_index(storage.KIND_PROJECTS) except Exception as e: - index = client.get_index(storage.KIND_PROJECTS) - print("error: ", e) - finally: - index.update_documents(ret) - print("started updating github_projects documents") - + client.create_index(storage.KIND_PROJECTS, {"primaryKey": "id"}) + client.index(storage.KIND_PROJECTS).update_documents(ret) + print("started updating github_projects documents") if __name__ == "__main__": # Usage : diff --git a/tools/meilisearch-index-generator/app/utils/database/projects.py b/tools/meilisearch-index-generator/app/utils/database/projects.py index e840dde8..749ceb67 100644 --- a/tools/meilisearch-index-generator/app/utils/database/projects.py +++ b/tools/meilisearch-index-generator/app/utils/database/projects.py @@ -1,51 +1,11 @@ -from app.utils.database import storage -from app.utils import converters +import json +PROJECTS_FILE = './data/projects.json' -def sanitize_project_data(data): - """ - sanitize_project_data [prepare project data format] - @params: data - """ +def fetch_all_projects(): + data = [] + # Read data from file and return it + with open(PROJECTS_FILE, 'r') as f: + data = json.load(f) - data = converters.convert_datetime_fields_to_string(data) return data - - -def sanitize_array_of_project_data(data_arr: list): - """ - sanitize_array_of_project_data [prepare array of project data format] - @params: data_arr - """ - for data in data_arr: - data = sanitize_project_data(data) - return data_arr - -def get_one_page_of_projects(cursor=None, limit: int = 100): - client = storage.get_client() - query = client.query(kind=storage.KIND_PROJECTS) - query_iter = query.fetch(start_cursor=cursor, limit=limit) - page = next(query_iter.pages) - - result = list(page) - result = sanitize_array_of_project_data(result) - - next_cursor = query_iter.next_page_token - return result, next_cursor - -def fetch_all_projects(on_pageloaded_success=None): - pages = [] - page, next_cursor = get_one_page_of_projects() - if on_pageloaded_success: - on_pageloaded_success(page) - pages += page - - while next_cursor: - page, next_cursor = get_one_page_of_projects(cursor=next_cursor) - if not page: - break - - if on_pageloaded_success: - on_pageloaded_success(page) - pages += page - return pages diff --git a/tools/meilisearch-index-generator/app/utils/database/users.py b/tools/meilisearch-index-generator/app/utils/database/users.py index fbc1c9e8..9cd1c469 100644 --- a/tools/meilisearch-index-generator/app/utils/database/users.py +++ b/tools/meilisearch-index-generator/app/utils/database/users.py @@ -1,52 +1,11 @@ -from app.utils.database import storage -from app.utils import converters +import json +USERS_FILE = './data/users.json' -def sanitize_user_data(data): - """ - sanitize_user_data [prepare user data format] - @params: data - """ +def fetch_all_users(): + data = [] + # Read data from file and return it + with open(USERS_FILE, 'r') as f: + data = json.load(f) - data = converters.convert_datetime_fields_to_string(data) return data - - -def sanitize_array_of_user_data(data_arr: list): - """ - sanitize_array_of_user_data [prepare array of user data format] - @params: data_arr - """ - for data in data_arr: - data = sanitize_user_data(data) - return data_arr - -def get_one_page_of_users(cursor=None, limit: int = 100): - client = storage.get_client() - query = client.query(kind=storage.KIND_USERS) - query_iter = query.fetch(start_cursor=cursor, limit=limit) - page = next(query_iter.pages) - - result = list(page) - result = sanitize_array_of_user_data(result) - - next_cursor = query_iter.next_page_token - return result, next_cursor - - -def fetch_all_users(on_pageloaded_success=None): - pages = [] - page, next_cursor = get_one_page_of_users() - if on_pageloaded_success: - on_pageloaded_success(page) - pages += page - - while next_cursor: - page, next_cursor = get_one_page_of_users(cursor=next_cursor) - if not page: - break - - if on_pageloaded_success: - on_pageloaded_success(page) - pages += page - return pages diff --git a/tools/meilisearch-index-generator/data/projects.json b/tools/meilisearch-index-generator/data/projects.json new file mode 100644 index 00000000..99927965 --- /dev/null +++ b/tools/meilisearch-index-generator/data/projects.json @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:263d8c74426f2ca0885ce3c3cb6dbb8358b1cbc619c2a77ea816c85307ecac67 +size 1877298 diff --git a/tools/meilisearch-index-generator/data/users.json b/tools/meilisearch-index-generator/data/users.json new file mode 100644 index 00000000..f45d5601 --- /dev/null +++ b/tools/meilisearch-index-generator/data/users.json @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cf446e12787055172318adea6bfbc30113eff981f21e549343e5b2db82e6cc0c +size 3400305 diff --git a/tools/meilisearch-index-generator/requirements.txt b/tools/meilisearch-index-generator/requirements.txt index a582f2ac..c83c597e 100644 --- a/tools/meilisearch-index-generator/requirements.txt +++ b/tools/meilisearch-index-generator/requirements.txt @@ -1,14 +1,34 @@ -# For exchanges with github api -requests - -# For tests in the application -pytest - -# meilisearch -meilisearch - -#lint -flake8 - -# For gcloud datastore -google-cloud-datastore +annotated-types==0.7.0 +cachetools==5.4.0 +camel-converter==3.1.2 +certifi==2024.7.4 +charset-normalizer==3.3.2 +exceptiongroup==1.2.2 +flake8==7.1.1 +google-api-core==2.19.1 +google-auth==2.32.0 +google-cloud-core==2.4.1 +google-cloud-datastore==2.19.0 +googleapis-common-protos==1.63.2 +grpcio==1.65.4 +grpcio-status==1.62.3 +idna==3.7 +iniconfig==2.0.0 +mccabe==0.7.0 +meilisearch==0.31.4 +packaging==24.1 +pluggy==1.5.0 +proto-plus==1.24.0 +protobuf==4.25.4 +pyasn1==0.6.0 +pyasn1_modules==0.4.0 +pycodestyle==2.12.1 +pydantic==2.8.2 +pydantic_core==2.20.1 +pyflakes==3.2.0 +pytest==8.3.2 +requests==2.32.3 +rsa==4.9 +tomli==2.0.1 +typing_extensions==4.12.2 +urllib3==2.2.2