Skip to content

acidicoala/ScreamDB

Repository files navigation

📜 ScreamDB

👋 Welcome

For user-friendly introduction, please check out the web app's home page. This document is meant for developers.

For discussions please refer to the official forum topic.

🏢 Hosting

The web app is hosted on 🔥 Firebase at https://scream-db.web.app/

It is automatically deployed on every push to the master branch.

🔐 The CORS issue

Modern browsers enforce strict CORS policy. That means the web app cannot directly make requests to the Epic Games GraphQL endpoint. Furthermore, the endpoint has a whitelist of valid User-Agent header values, which unfortunately is not possible to set using browser's JavaScript. To overcome these issues I have deployed a simple CORS proxy script on the Cloudflare Workers platform. It redirects all request to the actual GraphQL endpoint but modifies the response header Access-Control-Allow-Origin with the domain of this web app.

The CORS proxy script itself is open-source and is available in the epic-cors-proxy repository.

🛠️ Development

✔️ Requirements

  • Node.js v22+
  • pnpm v10

🚀 App architecture

This web was developed and hosted using great technologies such as:

📜 Available Scripts

In the project directory, you can run the following commands:

Command Action
pnpm dev Starts vite development server
pnpm graphql:codegen Starts code generator for graphql queries
pnpm build Builds the app for distribution
pnpm preview Serves built app distribution on a preview server

📖 Useful documentation

📄 License

This software is licensed under The Unlicense, terms of which are available in UNLICENSE.txt.

About

Web app for viewing Epic Games Store item IDs

Resources

License

Stars

Watchers

Forks

Contributors 2

  •  
  •