{"id":15905519,"url":"https://github.com/amodinho/formulaone-graphql","last_synced_at":"2026-04-16T14:02:28.989Z","repository":{"id":113362816,"uuid":"147191130","full_name":"AmoDinho/formulaone-graphql","owner":"AmoDinho","description":"A Node backend for 'FanBoost', powered by GraphQL Yoga and Prisma.🏎🏋️‍♂️","archived":false,"fork":false,"pushed_at":"2019-01-23T11:53:24.000Z","size":407,"stargazers_count":1,"open_issues_count":3,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-02-08T11:41:32.748Z","etag":null,"topics":["backend","graphql","javascript","nodejs","prisma"],"latest_commit_sha":null,"homepage":"https://fan-boost-two-48a9866683.herokuapp.com/fan-two/dev","language":"JavaScript","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/AmoDinho.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}},"created_at":"2018-09-03T10:48:57.000Z","updated_at":"2019-05-15T11:45:49.000Z","dependencies_parsed_at":"2023-04-29T20:21:09.218Z","dependency_job_id":null,"html_url":"https://github.com/AmoDinho/formulaone-graphql","commit_stats":{"total_commits":86,"total_committers":1,"mean_commits":86.0,"dds":0.0,"last_synced_commit":"6356c249733c15d1beafd2e242e2abbe3e09865f"},"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AmoDinho%2Fformulaone-graphql","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AmoDinho%2Fformulaone-graphql/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AmoDinho%2Fformulaone-graphql/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AmoDinho%2Fformulaone-graphql/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AmoDinho","download_url":"https://codeload.github.com/AmoDinho/formulaone-graphql/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246892845,"owners_count":20850850,"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":["backend","graphql","javascript","nodejs","prisma"],"created_at":"2024-10-06T13:03:08.746Z","updated_at":"2025-10-30T06:32:18.250Z","avatar_url":"https://github.com/AmoDinho.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# FanBoost 🏎\nThis is the backend for FanBoost. It is powered by [GraphQL-Yoga](https://github.com/prisma/graphql-yoga) an Express GraphQL server and [Prisma](https://prisma.io) to interact with a SQL Postgress database. \n\n## Features\n\n* Prisma Datalayer: Prisma sits inbetween your GraphQL API and database and acts as an ORM.\n* GraphQL API: The API is built with GraphQL-Yoga. Which is an Express server that supports GraphQL APIs.\n* Real-Time Subscriptions: The app use Websockets to enable real-time interactions with the API. \n* Transactional Emails: Nodemailer and PostMark are used to send transactional emails.\n* Authentification: The app  uses Json Web Tokens to help with Authenticating users.\n\nThe API supports the following queries:\n\n```feed(\n   filter: String, \n   skip: Int, \n   first: Int, \n   orderBy: DriverOrderByInput): Feed!\n\n   driver(\n   id: ID!): Driver!\n   \n    tracks(\n    filter: String, \n    skip: Int, \n    first: Int, \n    orderBy: CircuitOrderByInput): Tracks!\n    \n    circuit(id:ID!): Circuit\n   ```\n\n\nThe API supports the following mutations:\n\n```    \n    driver(\n    name: String!, \n    team: String!, \n    points: Int!, \n    pictureURL: String!, \n    podiums: Int!, \n    championshipWins:Int!, \n    country:String!): Driver!\n    \n    signup(\n    email: String!,\n    password:String!,\n    name:String!): AuthPayload\n    \n    login(\n    email: String!, \n    password: String!): AuthPayload\n    \n    boost(\n    driverId: ID!): FanBoost\n    \n    updateDriver(\n    id:ID!,\n    name: String!, \n    number: Int!, \n    team: String!, \n    points: Int!, \n    pictureURL: String!, \n    podiums: Int!, \n    championshipWins:Int!, \n    country:String!): Driver!\n    \n    deleteDriver(id:ID!): Driver\n    \n    requestReset(email: String!): SuccessMessage\n    \n    resetPassword(resetToken: String!, password: String!,confirmPassword: String!): User!\n    \n    deleteUser(id:ID!, password: String!): User!\n    \n    createCircuit(name: String!,\n    country: String!,\n    numOfLaps: Int!,\n    description: String!,\n    raceDistance: Float!,\n    circuitLength: Float!,\n    lapRecord: Float!,\n    address:String!,\n    longitude: Float!,\n    latitude: Float!,\n    flyAway: Boolean!,\n    trackMap: String!,\n    trackImage: String!): Circuit!\n    \n    updateCircuit(id: ID!,\n    name: String!,\n    country: String!,\n    numOfLaps: Int!,\n    description: String!,\n    raceDistance: Float!,\n    circuitLength: Float!,\n    lapRecord: Float!,\n    address:String!,\n    longitude: Float!,\n    latitude: Float!,\n    flyAway: Boolean!,\n    trackMap: String!,\n    trackImage: String!): Circuit!\n    \n    deleteCircuit(id: ID!): Circuit!\n\n```\n\n\n\nYou can jump over to the front-end repo [here](https://github.com/AmoDinho/formulaone-graphql-client).\n\nThis project uses yarn which can be downloaded from [here](https://yarnpkg.com/en/).\n\n\n## App Structure\n```\n├── Server\n   ├── Database\n   ├── src\n      ├── generated\n      ├── resolvers\n      ├── index.js\n      ├── schema.graphql\n      ├── utils.js\n   ├── .graphqlconfig.yml\n\n```\n \n\n## Setup Instructions\n\nFirst clone the repo:\n```\n$ git clone https://github.com/AmoDinho/formulaone-graphql.git\n```\n\nThen install the dependancies :\n\n```\n \n$ yarn install\n\n\n```\n\n\nIn one terminal run :\n\n```\n$ yarn run server\n\n```\n\nThis will start the appilcation server. \n\nThen to start the database server run:\n\n```\n$ yarn run playground\n\n```\n\nPlayground should open on `localhost://3000`\n\nMake sure you start the backend server first before the front-end repo. Then follow the commands and make sure it runs through `localhost://3001`.\n\n\n\nThe following resources were used to create this app: \n\n* [Advanced React](https://github.com/wesbos/Advanced-React)\n* [Boilerplate for a Fullstack GraphQL App with React \u0026 Prisma](https://github.com/alan345/naperg)\n* [How to GraphQL:React-Apollo](https://github.com/howtographql/react-apollo)\n* [React-Apollo Docs](https://www.apollographql.com/docs/react/)\n* [GraphQL Docs](https://graphql.org/)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Famodinho%2Fformulaone-graphql","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Famodinho%2Fformulaone-graphql","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Famodinho%2Fformulaone-graphql/lists"}