{"id":18060570,"url":"https://github.com/montudor/scoreboard-api","last_synced_at":"2026-04-28T11:03:35.971Z","repository":{"id":196859263,"uuid":"319173087","full_name":"montudor/scoreboard-api","owner":"montudor","description":"A very basic scoreboard API created for my Tetris project","archived":false,"fork":false,"pushed_at":"2020-12-14T22:30:20.000Z","size":19,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-05T12:25:53.997Z","etag":null,"topics":["api","django","django-rest-framework"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/montudor.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2020-12-07T01:39:21.000Z","updated_at":"2023-05-18T17:21:46.000Z","dependencies_parsed_at":"2023-09-30T23:45:23.916Z","dependency_job_id":null,"html_url":"https://github.com/montudor/scoreboard-api","commit_stats":null,"previous_names":["montudor/scoreboard-api"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/montudor/scoreboard-api","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/montudor%2Fscoreboard-api","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/montudor%2Fscoreboard-api/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/montudor%2Fscoreboard-api/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/montudor%2Fscoreboard-api/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/montudor","download_url":"https://codeload.github.com/montudor/scoreboard-api/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/montudor%2Fscoreboard-api/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32377599,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-28T09:24:15.638Z","status":"ssl_error","status_checked_at":"2026-04-28T09:24:15.071Z","response_time":56,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["api","django","django-rest-framework"],"created_at":"2024-10-31T04:09:25.654Z","updated_at":"2026-04-28T11:03:35.951Z","avatar_url":"https://github.com/montudor.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Simple Scoreboard API\n\n[![forthebadge](https://forthebadge.com/images/badges/made-with-python.svg)](https://forthebadge.com)\n[![forthebadge](https://forthebadge.com/images/badges/for-robots.svg)](https://forthebadge.com)\n\nJust a small basic API built with the [Django REST Framework](https://www.django-rest-framework.org)\nto save scores from my Tetris clone.\n\n## Development\n\nIn order to prepare the development environment on your local machine you must run the following commands.\nIt may be wise to do this in a Python virtual environment.\n```\npip install -r requirements.txt\npython manage.py migrate\n```\n\nThen, to launch the API at [localhost:8000](http://localhost:8000), run this command:\n```\npython manage.py runserver\n```\n\n## Production\n\n### Setting up the environment\n\nIn order to deploy this API in production, you must ensure you have Docker and Docker Compose installed on the server.\nYou should also remember to change the SECRET_KEY by, first, creating the following `docker-compose.override.yml` file.\n```yml\nversion: \"3.8\"\n\nservices:\n  web:\n    env_file:\n      .env\n```\n\nthen putting the secrets in a `.env` file, like so:\n```\nSECRET_KEY=\u003cSECRET\u003e\n```\n\n### How do I generate a secret key?\n\nYou can do this on your local development machine by first executing the following command.\n```\npython manage.py shell\n```\n\nThen typing the following lines:\n```python\nfrom django.core.management.utils import get_random_secret_key\nget_random_secret_key()\n```\n\nThis will output a new secret key directly below.\n\n### Final steps\n\nFinally, run the following commands:\n\n```\nmake up\nmake migrate\nmake collectstatic\n```\n\nThis will expose the API at port 8000. At this point you want to configure nginx to reverse proxy to that port.\nHere is an example configuration for nginx:\n\n```nginx\nserver {\n    server_name \u003cSERVER NAME\u003e;\n\n    location / {\n        proxy_set_header Host $host;\n        proxy_set_header X-Real-IP $remote_addr;\n        proxy_pass http://localhost:8000;\n    }\n\n    location /static {\n        root /path/to/app/static;\n    }\n\n    listen [::]:443 ssl ipv6only=on; # managed by Certbot\n    listen 443 ssl; # managed by Certbot\n    ssl_certificate /etc/letsencrypt/live/\u003cSERVER NAME\u003e/fullchain.pem; # managed by Certbot\n    ssl_certificate_key /etc/letsencrypt/live/\u003cSERVER NAME\u003e/privkey.pem; # managed by Certbot\n    include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot\n    ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot\n}\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmontudor%2Fscoreboard-api","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmontudor%2Fscoreboard-api","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmontudor%2Fscoreboard-api/lists"}