Coder Social home page Coder Social logo

tjmgregory / killer-pool-pwa Goto Github PK

View Code? Open in Web Editor NEW

This project forked from buehler/killer-pool-pwa

0.0 0.0 0.0 663 KB

Hacky PWA to support playing "killer pool"

Home Page: https://killer-pool.vercel.app

JavaScript 47.18% Rust 44.24% CSS 0.13% HCL 6.72% Dockerfile 1.73%

killer-pool-pwa's Introduction

Killer Pool PWA

This is an experiment / hacky app for playing / supporting the play of Killer Pool. The app is a Progressive Web App (PWA) that can be installed on a mobile device.

A Progressive Web App (PWA) is a type of web application that provides a user experience similar to that of native mobile apps. PWAs use modern web technologies such as service workers, web app manifests, and responsive design to deliver app-like experiences on desktop and mobile devices.

The app is written in Next.JS and deployed on Vercel, while the API is written in Rust and deployed on Google Cloud (Cloud-Run).

Motivation

I tried to make a small app for playing Killer Pool with friends as fast as possible. With a strict "MVP" approach. So, the app is not perfect, but it works. It does look decent, but it is far from perfect. The API does not use any security features, so when using API calls directly, you could break the games.

One idea was to use notifications with web workers and server side event streaming to update clients when something changed. But sadly, on iOS the notifications are not possible (altough: https://webkit.org/blog/13878/web-push-for-web-apps-on-ios-and-ipados/).

Development

To actively develop the api, you'll need to install the Rust toolchain. After that, you need to start docker and docker-compose up to start the database. Then you can start the api with cargo run (or cargo watch -x run).

To hack the frontend, you need nodeJS and start the next app (after you installed the deps with npm install) with npm run dev. You can configure the api url in the .env.local file.

For localhost development, use http://localhost:8000 as API url.

killer-pool-pwa's People

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.