{"id":15044029,"url":"https://github.com/whist-team/whist-server","last_synced_at":"2025-08-01T15:10:52.583Z","repository":{"id":36953550,"uuid":"356949545","full_name":"Whist-Team/Whist-Server","owner":"Whist-Team","description":"Whist server implementation","archived":false,"fork":false,"pushed_at":"2025-06-18T11:11:25.000Z","size":3589,"stargazers_count":2,"open_issues_count":18,"forks_count":4,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-06-18T12:20:47.825Z","etag":null,"topics":["fastapi","game","hacktoberfest","pymongo","python","server","whist"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Whist-Team.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2021-04-11T18:37:50.000Z","updated_at":"2025-06-18T11:11:27.000Z","dependencies_parsed_at":"2023-11-30T18:29:50.116Z","dependency_job_id":"1f2cdf33-2937-4409-b6f9-b97a147b936d","html_url":"https://github.com/Whist-Team/Whist-Server","commit_stats":{"total_commits":1651,"total_committers":9,"mean_commits":"183.44444444444446","dds":0.5966081162931557,"last_synced_commit":"3f7860b8bf40fc907b5804f04cbf77b586df05e7"},"previous_names":[],"tags_count":11,"template":false,"template_full_name":null,"purl":"pkg:github/Whist-Team/Whist-Server","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Whist-Team%2FWhist-Server","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Whist-Team%2FWhist-Server/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Whist-Team%2FWhist-Server/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Whist-Team%2FWhist-Server/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Whist-Team","download_url":"https://codeload.github.com/Whist-Team/Whist-Server/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Whist-Team%2FWhist-Server/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":268248740,"owners_count":24219557,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-01T02:00:08.611Z","response_time":67,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["fastapi","game","hacktoberfest","pymongo","python","server","whist"],"created_at":"2024-09-24T20:49:58.563Z","updated_at":"2025-08-01T15:10:52.559Z","avatar_url":"https://github.com/Whist-Team.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![codecov](https://codecov.io/gh/Whist-Team/Whist-Server/branch/main/graph/badge.svg)](https://codecov.io/gh/Whist-Team/Whist-Server)\n[![security: bandit](https://img.shields.io/badge/security-bandit-yellow.svg)](https://github.com/PyCQA/bandit)\n![PyPI](https://img.shields.io/pypi/v/whist-server)\n![PyPI - Python Version](https://img.shields.io/pypi/pyversions/whist-server)\n![PyPI - Wheel](https://img.shields.io/pypi/wheel/whist-server)\n![GitHub repo size](https://img.shields.io/github/repo-size/whist-team/whist-server)\n![Lines of code](https://img.shields.io/tokei/lines/github/whist-team/whist-server)\n![PyPI - Downloads](https://img.shields.io/pypi/dm/whist-server)\n![PyPI - License](https://img.shields.io/pypi/l/whist-server)\n\n# Whist-Server\n\nThis is the REST API server of a Whist game. It provides user management, session organization and\na convenient interface for the rules' implementation of\n[Whist-Core](https://github.com/Whist-Team/Whist-Core).\n\n## Development\n\n### Setup\nYou need [Poetry](https://python-poetry.org/) for development.\n```bash\n# Create venv and install deps\npoetry install\n```\nThe Python virtual environment will be created in the `.venv` directory.\n\n### Run tests/lint\n```bash\n# Run tests (in venv)\npython -m pytest # or pylint...\n# OR\npoetry run python -m pytest\n```\n\n### Build\nGenerates `sdist` and `bdist_wheel`.\n```bash\npoetry build\n```\n\n### Publish\n\nYou need the environment variable `POETRY_PYPI_TOKEN_PYPI` filled with a PyPI token.\n\n```bash\npoetry build\npoetry publish\n# OR\npoetry publish --build\n```\n\n### Run\n\nIn order to use GitHub SSO you need to set two environment variables. At the moment they are\nmandatory.\n\n```dotenv\nGITHUB_CLIENT_ID # This is the GitHub Identifier\nGITHUB_CLIENT_SECRET # During creation this secret is generated.\nGITHUB_REDIRECT_URL=http://HOST:PORT/oauth2/github/ # Only required for Browser Application with the ability to redirect.\n```\n\n---\n\n#### Splunk\n\nIf you want to use Splunk you require an environment variable with the authentication token: \n`SPLUNK_TOKEN` and you have to start the server with optional arguments `--splunk_host` and \n`--splunk-port`.\n\nSplunk support is currently disabled.\n\n---\n\nIn order to run the application it must be started like this:\n\n```shell\npython -m whist_server --reload --admin_name=root --admin_pwd=password 0.0.0.0 8080\n```\n\n:warning: A mongodb instance is required to run before launching the `Whist-Server`.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwhist-team%2Fwhist-server","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwhist-team%2Fwhist-server","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwhist-team%2Fwhist-server/lists"}