{"id":44677327,"url":"https://github.com/specify/sp7-stats","last_synced_at":"2026-02-15T03:30:38.245Z","repository":{"id":62219723,"uuid":"269070597","full_name":"specify/sp7-stats","owner":"specify","description":"Dashboard for analyzing Specify 7 usage statistics","archived":false,"fork":false,"pushed_at":"2025-09-09T03:44:25.000Z","size":1238,"stargazers_count":0,"open_issues_count":4,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-09-09T06:30:16.709Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://max.patii.uk/projects/usage-stats","language":"PHP","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/specify.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,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2020-06-03T11:31:33.000Z","updated_at":"2023-10-09T03:34:58.000Z","dependencies_parsed_at":"2023-12-03T06:21:23.886Z","dependency_job_id":"a5a3bc75-dbb7-4f4e-80e4-78f9e7ac2f99","html_url":"https://github.com/specify/sp7-stats","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/specify/sp7-stats","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/specify%2Fsp7-stats","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/specify%2Fsp7-stats/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/specify%2Fsp7-stats/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/specify%2Fsp7-stats/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/specify","download_url":"https://codeload.github.com/specify/sp7-stats/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/specify%2Fsp7-stats/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29466929,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-15T01:01:38.065Z","status":"online","status_checked_at":"2026-02-15T02:00:07.449Z","response_time":118,"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":[],"created_at":"2026-02-15T03:30:37.562Z","updated_at":"2026-02-15T03:30:38.229Z","avatar_url":"https://github.com/specify.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Specify 7 Usage Statistics\n\nThis website provides some information on the usage\nof [Specify 7](https://github.com/specify/specify7).\n\n## Screenshots\n\nUsage stats in list view:\n\n![Usage stats in list view](./docs/img/list.png)\n\nUsage stats in table view:\n\n![Usage stats in table view](./docs/img/table.png)\n\nGitHub repository stats:\n\n![GitHub repository stats](./docs/img/github.png)\n\n## Installation\n\n### Configuration\n\n1. Clone this repository\n2. Install Docker and Docker compose\n3. Copy `./env.example` file to `./.env` and change the variables as applicable\n4. Edit `docker-compose.yml` in all the places where you see `CHANGE THIS:`\n5. Copy `./sp7-stats/config/auth.example.conf` to\n   `./sp7-stats/config/auth.conf` and change the variables as applicable. That\n   would require you to create a GitHub OAuth\n   App. [See the instructions](https://github.com/specify/nginx-with-github-auth#installation)\n6. Generate `fullchain.pem` and `privkey.pem` (certificate\n   and the private key) using Let's Encrypt and put (or symlink) these files\n   into the `./sp7-stats/config/` directory.\n\n   While in development, you can generate self-signed certificates:\n\n   ```sh\n   openssl req \\\n      -x509 -sha256 -nodes -newkey rsa:2048 -days 365 \\\n      -keyout ./sp7-stats/config/privkey.pem \\\n      -out ./sp7-stats/config/fullchain.pem\n   ```\n\n### Start up\n\nStart the containers: `docker compose up -d`\n\n### Optional settings\n\nYou can go over the other settings in the `./sp7-stats/config/optional.php` file\nand see if there is anything you would like to adjust.\n\nFor example:\n\n1. You can set up daily cron to the following\n   location `https://\u003cyourdomain\u003e/cron/refresh_data.php`. This will automatically\n   unzip the files and compile the information so that users can get up to date\n   information.\n2. You can change the duration of time before compiled data is considered out of\n   date by changing `SHOW_DATA_OUT_OF_DATE_WARNING_AFTER`. The default value is\n   86400 = 1\n   day[![analytics](https://www.google-analytics.com/collect?v=1\u0026t=pageview\u0026dl=https%3A%2F%2Fgithub.com%2Fspecify%2Fsp7-stats\u0026uid=readme\u0026tid=UA-169822764-2)]()\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fspecify%2Fsp7-stats","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fspecify%2Fsp7-stats","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fspecify%2Fsp7-stats/lists"}