{"id":13514153,"url":"https://github.com/web-ridge/sqlboiler-graphql-schema","last_synced_at":"2025-03-31T02:33:28.728Z","repository":{"id":57509647,"uuid":"236812178","full_name":"web-ridge/sqlboiler-graphql-schema","owner":"web-ridge","description":"MOVED TO https://github.com/web-ridge/gqlgen-sqlboiler","archived":true,"fork":false,"pushed_at":"2020-12-03T15:42:30.000Z","size":178,"stargazers_count":7,"open_issues_count":5,"forks_count":2,"subscribers_count":3,"default_branch":"main","last_synced_at":"2024-11-01T17:37:23.960Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Go","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/web-ridge.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null},"funding":{"custom":["https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick\u0026hosted_button_id=7B9KKQLXTEW9Q\u0026source=url"]}},"created_at":"2020-01-28T18:47:09.000Z","updated_at":"2023-01-28T11:37:50.000Z","dependencies_parsed_at":"2022-09-26T17:51:18.874Z","dependency_job_id":null,"html_url":"https://github.com/web-ridge/sqlboiler-graphql-schema","commit_stats":null,"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/web-ridge%2Fsqlboiler-graphql-schema","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/web-ridge%2Fsqlboiler-graphql-schema/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/web-ridge%2Fsqlboiler-graphql-schema/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/web-ridge%2Fsqlboiler-graphql-schema/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/web-ridge","download_url":"https://codeload.github.com/web-ridge/sqlboiler-graphql-schema/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246407402,"owners_count":20772127,"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":[],"created_at":"2024-08-01T05:00:47.949Z","updated_at":"2025-03-31T02:33:23.709Z","avatar_url":"https://github.com/web-ridge.png","language":"Go","readme":"# MOVED TO https://github.com/web-ridge/gqlgen-sqlboiler\n\nCan now be used like this (please look up latest api on the repository above)\n```golang\n\tif err = gbgen.SchemaWrite(gbgen.SchemaConfig{\n\t\tBoilerModelDirectory: backend,\n\t\t// Directives:           []string{\"IsAuthenticated\"},\n\t\t// GenerateBatchCreate:  false, // Not implemented yet\n\t\tGenerateMutations:    true,\n\t\tGenerateBatchDelete:  true,\n\t\tGenerateBatchUpdate:  true,\n\t}, \"schema.graphql\", gbgen.SchemaGenerateConfig{\n\t\tMergeSchema: false, // uses three way merge to keep your customization\n\t}); err != nil {\n\t\tfmt.Println(\"error while trying to generate schema.graphql\")\n\t\tfmt.Fprintln(os.Stderr, err.Error())\n\t\tos.Exit(3)\n\t}\n```\n\n## sqlboiler-graphql-schema\n\nWe want developers to be able to build software faster using modern tools like GraphQL, Golang, React Native without depending on commercial providers like Firebase or AWS Amplify.\n\nThis program generates a grapql schema based on the generated sqlboiler structs we do this because we want to support the sqlboiler aliasing in our schema. Generating the schema is a good way too add type safety to queries and filters and prevent too much manual typing.\n\nYou can edit your schema like you want later and re-generate if your database changes. This program will create a merge conflict with your existing schema so you can choose to accept/reject changes.\n\n## How to run\n\n`go run github.com/web-ridge/sqlboiler-graphql-schema`\n\n## Before running\n\n- Install prettier globally (https://prettier.io/ `yarn global add prettier`)\n- Install git command line (required to do three way merging)\n\n## Other related projects from webRidge\n\n- https://github.com/web-ridge/gqlgen-sqlboiler (Generates converts between your qqlgen scheme and sqlboiler, and it will generate resolvers for the generated schema if you enable it!)\n- https://github.com/web-ridge/graphql-schema-react-native-app (Generate a React Native (Web) app based on your GraphQL scheme, WIP.)\n\n## Options\n\n```\nNAME:\n   sqlboiler-graphql-schema\n\nUSAGE:\n   sqlboiler-graphql-schema [global options] command [command options] [arguments...]\n\nCOMMANDS:\n   help, h  Shows a list of commands or help for one command\n\nGLOBAL OPTIONS:\n   --input value              directory where the sqlboiler models are (default: \"models\")\n   --output value             filepath for schema (default: \"schema.graphql\")\n   --skip-input-fields value  input names which should be skipped: e.g. --skip-input-fields=userId --skip-input-fields=organizationId\n   --mutations                generate mutations for models (default: true)\n   --batch-update             generate batch update for models (default: true)\n   --batch-create             generate batch create for models (default: true)\n   --batch-delete             generate batch delete for models (default: true)\n   --pagination               generate pagination support for models (default: \"\")\n   --help, -h                 show help (default: false)\n```\n\n\n## Features\n- [x] Support for manual updating the schema and re-generating (doing a three way merge https://github.com/charlesvdv/go-three-way-merge)\n- [x] Generating basic models\n- [x] Generating basic queries\n- [x] Generating mutations (Followed best practices https://blog.apollographql.com/designing-graphql-mutations-e09de826ed97)\n- [x] Generating filter for array queries (100%)\n- [x] Generating filters for relationships (100%)\n- [x] Generating input for mutations (100%)\n- [x] Generating payload for mutations (100%)\n- [x] Generating mutations (100%)\n- [x] Generating mutations for array models (0% WIP)\n- [x] Generating pagination for array models (20%, offset-based pagination done, TODO: cursor-based paginiation)\n\n## Future roadmap\n\n- [ ] Tests / snapshots\n- [ ] Edges / connections\n- [ ] Detecting when relationship is many to many\n- [ ] Adding node from to many-to-many relationships\n- [ ] Removing node from many-to-many relationships\n- [ ] Supporting schema per model\n\n\n\nFeel free to help and make a PR.\n\n```\ngo run github.com/webridge-git/sqlboiler-graphql-schema\n```\n\n## Example result\nhttps://github.com/web-ridge/gqlgen-sqlboiler-examples/blob/master/social-network/schema.graphql\n\n```graphql\n\ndirective @isAuthenticated on FIELD_DEFINITION\n\ntype Comment {\n  id: ID!\n  content: String!\n  post: Post!\n  user: User!\n  commentLikes: [CommentLike]\n}\n\ntype CommentLike {\n  id: ID!\n  comment: Comment!\n  user: User!\n  likeType: String!\n  createdAt: Int\n}\n\ntype Friendship {\n  id: ID!\n  createdAt: Int\n  users: [User]\n}\n\ntype Image {\n  id: ID!\n  post: Post!\n  views: Int\n  originalUrl: String\n  imageVariations: [ImageVariation]\n}\n\ntype ImageVariation {\n  id: ID!\n  image: Image!\n}\n\ntype Like {\n  id: ID!\n  post: Post!\n  user: User!\n  likeType: String!\n  createdAt: Int\n}\n\ntype Post {\n  id: ID!\n  content: String!\n  user: User!\n  comments: [Comment]\n  images: [Image]\n  likes: [Like]\n}\n\ntype User {\n  id: ID!\n  firstName: String!\n  lastName: String!\n  email: String!\n  comments: [Comment]\n  commentLikes: [CommentLike]\n  likes: [Like]\n  posts: [Post]\n  friendships: [Friendship]\n}\n\ninput IDFilter {\n  equalTo: ID\n  notEqualTo: ID\n  in: [ID!]\n  notIn: [ID!]\n}\n\ninput StringFilter {\n  equalTo: String\n  notEqualTo: String\n\n  in: [String!]\n  notIn: [String!]\n\n  startWith: String\n  notStartWith: String\n\n  endWith: String\n  notEndWith: String\n\n  contain: String\n  notContain: String\n\n  startWithStrict: String # Camel sensitive\n  notStartWithStrict: String # Camel sensitive\n  endWithStrict: String # Camel sensitive\n  notEndWithStrict: String # Camel sensitive\n  containStrict: String # Camel sensitive\n  notContainStrict: String # Camel sensitive\n}\n\ninput IntFilter {\n  equalTo: Int\n  notEqualTo: Int\n  lessThan: Int\n  lessThanOrEqualTo: Int\n  moreThan: Int\n  moreThanOrEqualTo: Int\n  in: [Int!]\n  notIn: [Int!]\n}\n\ninput FloatFilter {\n  equalTo: Float\n  notEqualTo: Float\n  lessThan: Float\n  lessThanOrEqualTo: Float\n  moreThan: Float\n  moreThanOrEqualTo: Float\n  in: [Float!]\n  notIn: [Float!]\n}\n\ninput BooleanFilter {\n  isTrue: Boolean\n  isFalse: Boolean\n  isNull: Boolean\n}\n\ninput CommentFilter {\n  search: String\n  where: CommentWhere\n}\n\ninput CommentWhere {\n  id: IDFilter\n  content: StringFilter\n  post: PostWhere\n  user: UserWhere\n  commentLikes: CommentLikeWhere\n  or: CommentWhere\n  and: CommentWhere\n}\n\ninput CommentLikeFilter {\n  search: String\n  where: CommentLikeWhere\n}\n\ninput CommentLikeWhere {\n  id: IDFilter\n  comment: CommentWhere\n  user: UserWhere\n  likeType: StringFilter\n  createdAt: IntFilter\n  or: CommentLikeWhere\n  and: CommentLikeWhere\n}\n\ninput FriendshipFilter {\n  search: String\n  where: FriendshipWhere\n}\n\ninput FriendshipWhere {\n  id: IDFilter\n  createdAt: IntFilter\n  users: UserWhere\n  or: FriendshipWhere\n  and: FriendshipWhere\n}\n\ninput ImageFilter {\n  search: String\n  where: ImageWhere\n}\n\ninput ImageWhere {\n  id: IDFilter\n  post: PostWhere\n  views: IntFilter\n  originalUrl: StringFilter\n  imageVariations: ImageVariationWhere\n  or: ImageWhere\n  and: ImageWhere\n}\n\ninput ImageVariationFilter {\n  search: String\n  where: ImageVariationWhere\n}\n\ninput ImageVariationWhere {\n  id: IDFilter\n  image: ImageWhere\n  or: ImageVariationWhere\n  and: ImageVariationWhere\n}\n\ninput LikeFilter {\n  search: String\n  where: LikeWhere\n}\n\ninput LikeWhere {\n  id: IDFilter\n  post: PostWhere\n  user: UserWhere\n  likeType: StringFilter\n  createdAt: IntFilter\n  or: LikeWhere\n  and: LikeWhere\n}\n\ninput PostFilter {\n  search: String\n  where: PostWhere\n}\n\ninput PostWhere {\n  id: IDFilter\n  content: StringFilter\n  user: UserWhere\n  comments: CommentWhere\n  images: ImageWhere\n  likes: LikeWhere\n  or: PostWhere\n  and: PostWhere\n}\n\ninput UserFilter {\n  search: String\n  where: UserWhere\n}\n\ninput UserWhere {\n  id: IDFilter\n  firstName: StringFilter\n  lastName: StringFilter\n  email: StringFilter\n  comments: CommentWhere\n  commentLikes: CommentLikeWhere\n  likes: LikeWhere\n  posts: PostWhere\n  friendships: FriendshipWhere\n  or: UserWhere\n  and: UserWhere\n}\n\ntype Query {\n  comment(id: ID!): Comment! @isAuthenticated\n  comments(filter: CommentFilter): [Comment!]! @isAuthenticated\n  commentLike(id: ID!): CommentLike! @isAuthenticated\n  commentLikes(filter: CommentLikeFilter): [CommentLike!]! @isAuthenticated\n  friendship(id: ID!): Friendship! @isAuthenticated\n  friendships(filter: FriendshipFilter): [Friendship!]! @isAuthenticated\n  image(id: ID!): Image! @isAuthenticated\n  images(filter: ImageFilter): [Image!]! @isAuthenticated\n  imageVariation(id: ID!): ImageVariation! @isAuthenticated\n  imageVariations(filter: ImageVariationFilter): [ImageVariation!]!\n    @isAuthenticated\n  like(id: ID!): Like! @isAuthenticated\n  likes(filter: LikeFilter): [Like!]! @isAuthenticated\n  post(id: ID!): Post! @isAuthenticated\n  posts(filter: PostFilter): [Post!]! @isAuthenticated\n  user(id: ID!): User! @isAuthenticated\n  users(filter: UserFilter): [User!]! @isAuthenticated\n}\n\ninput CommentCreateInput {\n  content: String!\n  postId: ID!\n}\n\ninput CommentUpdateInput {\n  content: String\n  postId: ID\n}\n\ninput CommentsCreateInput {\n  comments: [CommentCreateInput!]!\n}\n\ntype CommentPayload {\n  comment: Comment!\n}\n\ntype CommentDeletePayload {\n  id: ID!\n}\n\ntype CommentsPayload {\n  comments: [Comment!]!\n}\n\ntype CommentsDeletePayload {\n  ids: [ID!]!\n}\n\ntype CommentsUpdatePayload {\n  ok: Boolean!\n}\n\ninput CommentLikeCreateInput {\n  commentId: ID!\n  likeType: String!\n  createdAt: Int\n}\n\ninput CommentLikeUpdateInput {\n  commentId: ID\n  likeType: String\n  createdAt: Int\n}\n\ninput CommentLikesCreateInput {\n  commentLikes: [CommentLikeCreateInput!]!\n}\n\ntype CommentLikePayload {\n  commentLike: CommentLike!\n}\n\ntype CommentLikeDeletePayload {\n  id: ID!\n}\n\ntype CommentLikesPayload {\n  commentLikes: [CommentLike!]!\n}\n\ntype CommentLikesDeletePayload {\n  ids: [ID!]!\n}\n\ntype CommentLikesUpdatePayload {\n  ok: Boolean!\n}\n\ninput FriendshipCreateInput {\n  createdAt: Int\n}\n\ninput FriendshipUpdateInput {\n  createdAt: Int\n}\n\ninput FriendshipsCreateInput {\n  friendships: [FriendshipCreateInput!]!\n}\n\ntype FriendshipPayload {\n  friendship: Friendship!\n}\n\ntype FriendshipDeletePayload {\n  id: ID!\n}\n\ntype FriendshipsPayload {\n  friendships: [Friendship!]!\n}\n\ntype FriendshipsDeletePayload {\n  ids: [ID!]!\n}\n\ntype FriendshipsUpdatePayload {\n  ok: Boolean!\n}\n\ninput ImageCreateInput {\n  postId: ID!\n  views: Int\n  originalUrl: String\n}\n\ninput ImageUpdateInput {\n  postId: ID\n  views: Int\n  originalUrl: String\n}\n\ninput ImagesCreateInput {\n  images: [ImageCreateInput!]!\n}\n\ntype ImagePayload {\n  image: Image!\n}\n\ntype ImageDeletePayload {\n  id: ID!\n}\n\ntype ImagesPayload {\n  images: [Image!]!\n}\n\ntype ImagesDeletePayload {\n  ids: [ID!]!\n}\n\ntype ImagesUpdatePayload {\n  ok: Boolean!\n}\n\ninput ImageVariationCreateInput {\n  imageId: ID!\n}\n\ninput ImageVariationUpdateInput {\n  imageId: ID\n}\n\ninput ImageVariationsCreateInput {\n  imageVariations: [ImageVariationCreateInput!]!\n}\n\ntype ImageVariationPayload {\n  imageVariation: ImageVariation!\n}\n\ntype ImageVariationDeletePayload {\n  id: ID!\n}\n\ntype ImageVariationsPayload {\n  imageVariations: [ImageVariation!]!\n}\n\ntype ImageVariationsDeletePayload {\n  ids: [ID!]!\n}\n\ntype ImageVariationsUpdatePayload {\n  ok: Boolean!\n}\n\ninput LikeCreateInput {\n  postId: ID!\n  likeType: String!\n  createdAt: Int\n}\n\ninput LikeUpdateInput {\n  postId: ID\n  likeType: String\n  createdAt: Int\n}\n\ninput LikesCreateInput {\n  likes: [LikeCreateInput!]!\n}\n\ntype LikePayload {\n  like: Like!\n}\n\ntype LikeDeletePayload {\n  id: ID!\n}\n\ntype LikesPayload {\n  likes: [Like!]!\n}\n\ntype LikesDeletePayload {\n  ids: [ID!]!\n}\n\ntype LikesUpdatePayload {\n  ok: Boolean!\n}\n\ninput PostCreateInput {\n  content: String!\n}\n\ninput PostUpdateInput {\n  content: String\n}\n\ninput PostsCreateInput {\n  posts: [PostCreateInput!]!\n}\n\ntype PostPayload {\n  post: Post!\n}\n\ntype PostDeletePayload {\n  id: ID!\n}\n\ntype PostsPayload {\n  posts: [Post!]!\n}\n\ntype PostsDeletePayload {\n  ids: [ID!]!\n}\n\ntype PostsUpdatePayload {\n  ok: Boolean!\n}\n\ninput UserCreateInput {\n  firstName: String!\n  lastName: String!\n  email: String!\n}\n\ninput UserUpdateInput {\n  firstName: String\n  lastName: String\n  email: String\n}\n\ninput UsersCreateInput {\n  users: [UserCreateInput!]!\n}\n\ntype UserPayload {\n  user: User!\n}\n\ntype UserDeletePayload {\n  id: ID!\n}\n\ntype UsersPayload {\n  users: [User!]!\n}\n\ntype UsersDeletePayload {\n  ids: [ID!]!\n}\n\ntype UsersUpdatePayload {\n  ok: Boolean!\n}\n\ntype Mutation {\n  createComment(input: CommentCreateInput!): CommentPayload! @isAuthenticated\n  createComments(input: CommentsCreateInput!): CommentsPayload! @isAuthenticated\n  updateComment(id: ID!, input: CommentUpdateInput!): CommentPayload!\n    @isAuthenticated\n  updateComments(\n    filter: CommentFilter\n    input: CommentUpdateInput!\n  ): CommentsUpdatePayload! @isAuthenticated\n  deleteComment(id: ID!): CommentDeletePayload! @isAuthenticated\n  deleteComments(filter: CommentFilter): CommentsDeletePayload! @isAuthenticated\n  createCommentLike(input: CommentLikeCreateInput!): CommentLikePayload!\n    @isAuthenticated\n  createCommentLikes(input: CommentLikesCreateInput!): CommentLikesPayload!\n    @isAuthenticated\n  updateCommentLike(\n    id: ID!\n    input: CommentLikeUpdateInput!\n  ): CommentLikePayload! @isAuthenticated\n  updateCommentLikes(\n    filter: CommentLikeFilter\n    input: CommentLikeUpdateInput!\n  ): CommentLikesUpdatePayload! @isAuthenticated\n  deleteCommentLike(id: ID!): CommentLikeDeletePayload! @isAuthenticated\n  deleteCommentLikes(filter: CommentLikeFilter): CommentLikesDeletePayload!\n    @isAuthenticated\n  createFriendship(input: FriendshipCreateInput!): FriendshipPayload!\n    @isAuthenticated\n  createFriendships(input: FriendshipsCreateInput!): FriendshipsPayload!\n    @isAuthenticated\n  updateFriendship(id: ID!, input: FriendshipUpdateInput!): FriendshipPayload!\n    @isAuthenticated\n  updateFriendships(\n    filter: FriendshipFilter\n    input: FriendshipUpdateInput!\n  ): FriendshipsUpdatePayload! @isAuthenticated\n  deleteFriendship(id: ID!): FriendshipDeletePayload! @isAuthenticated\n  deleteFriendships(filter: FriendshipFilter): FriendshipsDeletePayload!\n    @isAuthenticated\n  createImage(input: ImageCreateInput!): ImagePayload! @isAuthenticated\n  createImages(input: ImagesCreateInput!): ImagesPayload! @isAuthenticated\n  updateImage(id: ID!, input: ImageUpdateInput!): ImagePayload! @isAuthenticated\n  updateImages(\n    filter: ImageFilter\n    input: ImageUpdateInput!\n  ): ImagesUpdatePayload! @isAuthenticated\n  deleteImage(id: ID!): ImageDeletePayload! @isAuthenticated\n  deleteImages(filter: ImageFilter): ImagesDeletePayload! @isAuthenticated\n  createImageVariation(\n    input: ImageVariationCreateInput!\n  ): ImageVariationPayload! @isAuthenticated\n  createImageVariations(\n    input: ImageVariationsCreateInput!\n  ): ImageVariationsPayload! @isAuthenticated\n  updateImageVariation(\n    id: ID!\n    input: ImageVariationUpdateInput!\n  ): ImageVariationPayload! @isAuthenticated\n  updateImageVariations(\n    filter: ImageVariationFilter\n    input: ImageVariationUpdateInput!\n  ): ImageVariationsUpdatePayload! @isAuthenticated\n  deleteImageVariation(id: ID!): ImageVariationDeletePayload! @isAuthenticated\n  deleteImageVariations(\n    filter: ImageVariationFilter\n  ): ImageVariationsDeletePayload! @isAuthenticated\n  createLike(input: LikeCreateInput!): LikePayload! @isAuthenticated\n  createLikes(input: LikesCreateInput!): LikesPayload! @isAuthenticated\n  updateLike(id: ID!, input: LikeUpdateInput!): LikePayload! @isAuthenticated\n  updateLikes(filter: LikeFilter, input: LikeUpdateInput!): LikesUpdatePayload!\n    @isAuthenticated\n  deleteLike(id: ID!): LikeDeletePayload! @isAuthenticated\n  deleteLikes(filter: LikeFilter): LikesDeletePayload! @isAuthenticated\n  createPost(input: PostCreateInput!): PostPayload! @isAuthenticated\n  createPosts(input: PostsCreateInput!): PostsPayload! @isAuthenticated\n  updatePost(id: ID!, input: PostUpdateInput!): PostPayload! @isAuthenticated\n  updatePosts(filter: PostFilter, input: PostUpdateInput!): PostsUpdatePayload!\n    @isAuthenticated\n  deletePost(id: ID!): PostDeletePayload! @isAuthenticated\n  deletePosts(filter: PostFilter): PostsDeletePayload! @isAuthenticated\n  createUser(input: UserCreateInput!): UserPayload! @isAuthenticated\n  createUsers(input: UsersCreateInput!): UsersPayload! @isAuthenticated\n  updateUser(id: ID!, input: UserUpdateInput!): UserPayload! @isAuthenticated\n  updateUsers(filter: UserFilter, input: UserUpdateInput!): UsersUpdatePayload!\n    @isAuthenticated\n  deleteUser(id: ID!): UserDeletePayload! @isAuthenticated\n  deleteUsers(filter: UserFilter): UsersDeletePayload! @isAuthenticated\n}\n```\n\n## Donate\n\nDid we save you a lot of time? Please consider a donation so we can invest more time in this library: [![paypal](https://www.paypalobjects.com/en_US/i/btn/btn_donate_LG.gif)](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick\u0026hosted_button_id=7B9KKQLXTEW9Q\u0026source=url)\n","funding_links":["https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick\u0026hosted_button_id=7B9KKQLXTEW9Q\u0026source=url"],"categories":["Go"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fweb-ridge%2Fsqlboiler-graphql-schema","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fweb-ridge%2Fsqlboiler-graphql-schema","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fweb-ridge%2Fsqlboiler-graphql-schema/lists"}