{"id":28455610,"url":"https://github.com/primer/api","last_synced_at":"2025-06-27T02:32:30.316Z","repository":{"id":45671193,"uuid":"513227040","full_name":"primer/api","owner":"primer","description":"A GraphQL API for collecting and accessing data about the Primer Design System","archived":true,"fork":false,"pushed_at":"2024-10-10T01:00:59.000Z","size":510,"stargazers_count":4,"open_issues_count":0,"forks_count":3,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-06-06T22:09:52.405Z","etag":null,"topics":["api","graphql"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","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/primer.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}},"created_at":"2022-07-12T17:06:13.000Z","updated_at":"2025-04-04T04:35:52.000Z","dependencies_parsed_at":"2023-02-09T08:45:36.574Z","dependency_job_id":null,"html_url":"https://github.com/primer/api","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/primer/api","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/primer%2Fapi","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/primer%2Fapi/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/primer%2Fapi/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/primer%2Fapi/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/primer","download_url":"https://codeload.github.com/primer/api/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/primer%2Fapi/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":262177859,"owners_count":23270948,"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","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","graphql"],"created_at":"2025-06-06T22:09:53.574Z","updated_at":"2025-06-27T02:32:30.304Z","avatar_url":"https://github.com/primer.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Primer API\n\n\u003e **Warning**: ⚠️ This repository is being sunset and is no longer actively maintained. It was part of an internal experiment and is not likely in active use. Please consider migrating to alternative solutions or repositories. \n\n\nA [GraphQL](https://graphql.org/) API for collecting and accessing data about the [Primer Design System](https://primer.style)\n\n## Data flow\n\n![Data flow diagram](https://user-images.githubusercontent.com/4608155/179082139-9fc96339-bcd2-4171-a02c-6b693d7fa4eb.png)\n\n## Technology stack\n\n- [Apollo Server](https://www.apollographql.com/docs/apollo-server/) for running the GraphQL server\n- [Prisma](https://www.prisma.io/) for defining the data schema\n- [TypeGraphQL Prisma](https://prisma.typegraphql.com/) for generating a GraphQL API from our Prisma schema\n- [Supabase](https://supabase.com) for hosting the PostgreSQL database\n\n## Local development\n\n### Set up\n\n1. Clone the repository:\n\n   ```shell\n   git clone git@github.com:primer/api.git primer-api\n   cd primer-api\n   ```\n\n1. Run the `setup` script:\n\n   ```shell\n   npm run setup\n   ```\n\n   This will install and build any necessary dependencies.\n\n1. Create a `.env` file in the `api` directory of the repository with a `DATABASE_URL` variable:\n\n   ```shell\n   DATABASE_URL=...\n   ```\n\n   The `DATABASE_URL` variable should be set to a connection string for a PostgreSQL database. Ask @colebemis, @langermank, or @mperrotti for the connection string.\n\n### Run locally\n\n1. Run the `start` script:\n\n   ```shell\n   npm run start\n   ```\n\n   This will start the following servers locally:\n\n   - GraphQL API: http://localhost:4000\n   - Docs example: http://localhost:3000\n\n### Publish schema changes\n\n1. Make changes to the database schema in `prisma/schema.prisma`\n\n1. Run a migration:\n\n   ```shell\n   npm run prisma:migrate\n   ```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fprimer%2Fapi","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fprimer%2Fapi","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fprimer%2Fapi/lists"}