A web appication for crowdsourcing your printing needs. Think Postmates, but for documents.
- Node.js (10.15.0+)
-
Download and install the code.
$ git clone https://github.com/cs394-w19/Printly.git $ cd Printly $ npm install
-
Create a new Firebase project. Required components are:
firebase-auth
for user loginfirebase-storage
for uploaded documentsfirebase-database
for maintaining active printers
-
Add your project's config info to the beginning of App.js.
var config = { apiKey: "YOUR", authDomain: "PROJECT", databaseURL: "INFO", storageBucket: "HERE", }; firebase.initializeApp(config);
-
Add printer profiles to Firebase Realtime Database, following the format in printly-export.json.
- Add corresponding profile pictures to Firebase Storage, following the format in id_pictures.
- Add content of Assets folder to Firebase Storage.
-
Deploy the project with
firebase deploy
in the command line. -
Alternatively, start the app on your local machine with
npm start
.
- Firebase undefined object 404s on printer selection page.
- Unmounted component state update on printer selection page (possibly related to first issue).
- Material-UI typography will be deprecated in the next update.
-
Printee side
- Detect student users by email.
- Have a separate print queue for each unqiue user.
- Dynamically search for printers based on address.
- Dynamically calculate ETA and track delivery on map.
-
Printer side
- All of it