Coder Social home page Coder Social logo

cool-maze's Introduction

cool-maze

Cool Maze is a quick mobile-to-desktop share app, through matrix barcode.

coolmaze illustration

This repo contains (open source):

This repo does not contain (closed source):

This repo does not contain (open source):

  • The backend and frontend of the reverse use case Hot Maze, which have moved to this repo.

The Issue tracker welcomes bugs of all components of Cool Maze.

cool-maze's People

Contributors

deleplace avatar bartalog avatar laurentroyerkubity avatar ripounet avatar dependabot[bot] avatar

Stargazers

J-p Bailly avatar  avatar

cool-maze's Issues

Android onboarding screen

The app is not really designed to be opened as standalone, it is rather part of an "intent" process (Share with...).

Currently launching the app displays an ugly blank screen.

Design an onboarding to explain the concept and invite user to open webpage on desktop computer.

Chrome extension

Toolbar icon : click it to display QR and listen to push service.

Not much more than the webpage coolmaze.net, but handy.

Webpage design

It currently only features an obscure, unusable QR-code.

Keep it sober and minimalist, but explain :

  • that you need the mobile app to use the QR-code,
  • what the use case is, what it's for,
  • why the QR-code is not a proper URL.

Video type altered

From Picasa app, sharing a 14MB MP4 video ended up in a 40MB MPG video.

It didn't play directly in browser (Safari), instead it was downloaded to fs.

Make sure source and target are in same country

Emit a mail alert otherwise. This may detect a bug or an security leak. Or even block the transfer?

This would reduce 2 security risks

  • Confidentiality : "Someone is secretly listening to many Pusher channels, and can receive my data"
  • Spam : "Someone is sending his stuff to many Target IDs, and some are received by innocent users"

Firefox extension

Toolbar icon : click it to display QR and listen to push service.

Not much more than the webpage coolmaze.net, but handy.

Mime-type image/* not handled correctly

Sometimes a photo shared from Whatsapp is uploaded as image/* ... and then the browser doesn't know how to display it directly (offers a raw file download instead).

Scan hint : portrait, not landscape

The scan works fine, but the sentence is at the correct place for the Portrait use, which is currently the only recommended orientation for Cool Maze app.

Related to issue #19

Gather usage statistics

Maybe Google Analytics will be enough, or maybe not.

Interesting metrics would be

  • mobile app performances
  • duration between webpage display and message reception
  • country
  • upload size and duration
  • upload mime-type
  • duration between scan opening camera and QR-code recognition
  • errors

Time QR-code read performance

How many ms between "Share with ... Cool Maze" and QR-code successful reading, in optimal conditions (when phone already facing the QR-code at appropriate distance) ?

Webpage: QR-code is too big

Typical computer user (sitting 50cm in front of screen) must step back with phone in order to scan the QR-code.

By default, display a smaller (medium-size) QR-code.

Add an option to display full-size, e.g. for video projectors.

Consider avoiding re-upload of known file (using a hash)

Keep all files in GCS.
Keep a mapping of Hash -> GCS File in Datastore and Memcache.
Make sure the mobile calculates the hash before uploading.

In case the hash is known, serve directly a fresh GET URL to the existing GCS object.

Note that it is almost the contrary of issue #31. A compromise would be to keep the files and mappings, but no more than 3 days.

Detect brute force attacks

This would let us take appropriate measures to mitigate the attack : invalidate current sessions, raise the complexity of the chanIDs ...

Service to send arbitrary file

The file transfer must be :

  • either a progressive stream
  • or an upload mobile->file server, then a download file server->computer browser

Hosting

  • GAE ?
  • AWS ?
  • other Paas or IaaS ?

Perform upload and scan concurrently

The upload doesn't need the result of the scan.
The scan intent doesn't need the upload to be completed.

Make the two in parallel. Wait for the two completions before notifying the uploaded file GET URL (the what) to the target desktop browser (the whom).

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.