{"id":23343765,"url":"https://github.com/andyfrith/tmdb-demo","last_synced_at":"2026-05-07T01:07:21.248Z","repository":{"id":42282253,"uuid":"251071141","full_name":"andyfrith/tmdb-demo","owner":"andyfrith","description":"A minimal Node.js TypeScript application providing a GraphQL API and access to The Movie Database (TMDb)","archived":false,"fork":false,"pushed_at":"2023-01-05T17:47:01.000Z","size":3916,"stargazers_count":0,"open_issues_count":19,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-07-19T05:23:31.432Z","etag":null,"topics":["apollo-server","graphql","nodejs","tmdb-api","typescript"],"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/andyfrith.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":"2020-03-29T15:54:28.000Z","updated_at":"2020-04-04T21:21:08.000Z","dependencies_parsed_at":"2023-02-04T09:01:15.562Z","dependency_job_id":null,"html_url":"https://github.com/andyfrith/tmdb-demo","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/andyfrith/tmdb-demo","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andyfrith%2Ftmdb-demo","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andyfrith%2Ftmdb-demo/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andyfrith%2Ftmdb-demo/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andyfrith%2Ftmdb-demo/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/andyfrith","download_url":"https://codeload.github.com/andyfrith/tmdb-demo/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andyfrith%2Ftmdb-demo/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":271060061,"owners_count":24692431,"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-18T02:00:08.743Z","response_time":89,"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":["apollo-server","graphql","nodejs","tmdb-api","typescript"],"created_at":"2024-12-21T06:16:21.703Z","updated_at":"2026-05-07T01:07:21.223Z","avatar_url":"https://github.com/andyfrith.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cimg src=\"https://github.com/andyfrith/tmdb-demo/blob/master/screenshot1.png\" alt=\"Movies\" /\u003e\n\n# tmdb-demo\n\nThis demo is a minimal Node.js TypeScript application providing a GraphQL API and access to The Movie Database (TMDb.)\n\n## Table of Contents\n\n  1. [Introduction](#introduction)\n  2. [Features](#features)\n  3. [Environment](#environment)\n  4. [Other Demos](#other-demos)\n  5. [Contact Developer](#contact-developer)\n\n## Introduction\n\nThis very light application serves as a simple demo of several technologies and best-practices.\n\n## Features\n\nListing movies is made possible with the following GraphQL Query:\n\n```ts\n{\n  discoverMovies(\n    input: DiscoverMoviesRequest!\n  ): DiscoverMoviesResponse!\n}\n```\n\n### TyepScript\n\nWhy TypeScript?  Because, use of types lends itself to using highly-productive development tools and practices; such as, static checking and code refactoring during JavaScript development. Additionally, there is great support for TypeScript in the development community.\n\n### Node.js\n\nThe application was built using [Node.js](https://nodejs.org/).\n\n### GraphQL\n\nThis application was built using the [Apollo Server](https://www.apollographql.com/docs/apollo-server/) GraphQL server and the Node.js apollo-server-express middleware.\n\nThe GraphQL schema is generated using the [Apollo CLI](https://www.apollographql.com/docs/devtools/cli/).\n\n**[⬆ back to top](#table-of-contents)**\n\n## Environment\n\n### Available Scripts\n\nIn the project directory, you can run:\n\n#### `npm install`\n\nInstalls the necessary modules required to build and run the application.\n\n#### `npm generate`\n\nGenerates GraphQL schema by running the the [Apollo CLI](https://www.apollographql.com/docs/devtools/cli/).\n\n#### `npm start`\n\nStards the Node.js process, runs the app.\u003cbr /\u003e\nOpen [http://localhost:5002/graphql](http://localhost:5002/graphql) to view the GraphQL playground in the browser.\n\n#### `npm run build`\n\nCompiles the typescript using tsc, building the app for production.\n\n#### `npm run test`\n\nTests will be added in the future.\n\n**[⬆ back to top](#table-of-contents)**\n\n## Other Demos\n\n[tmdb-demo-ui](https://github.com/andyfrith/tmdb-demo-ui) - the UI counterpart- a minimal React Typescript application providing a simple UI that acesses the GraphQL API endpoints of the tmdb-demo server\n\n[demo-gql-ui](https://github.com/andyfrith/demo-gql-ui) - A minimal React Typescript application providing a simple UI that acesses the GraphQL API endpoints of the demo-gql server\n\n[react-portal](https://github.com/andyfrith/react-portal) - a React Redux application that provides simple user management tasks upon successful JWT authentication\n\n[greasy-spoon-pos](https://github.com/andyfrith/greasy-spoon-pos) - a React Redux application that provides minimal features of a very basic restaurant Point of Sale system\n\n[goodapplemedia.com](https://github.com/andyfrith/goodapplemedia.com) - a responsive website created with HTML5, Foundation CSS, and ES6 that demonstrates an exceptional and desirable user experience\n\n**[⬆ back to top](#table-of-contents)**\n\n## Contact Developer\n\nI'm driven to deliver exemplary User Experiences and sound application architectures. I enjoy solving customer problems with excellent design and engineering- to greatly affect business success.\n\n\n[Portfolio](http://goodapplemedia.com)\n\n[Email: afrith.denver.usa@gmail.com](mailto:afrith.denver.gmail.com)\n\n[LinkedIn](https://www.linkedin.com/in/goodapplemedia/)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fandyfrith%2Ftmdb-demo","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fandyfrith%2Ftmdb-demo","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fandyfrith%2Ftmdb-demo/lists"}