The App is ready for testing purposes now and the app can be accessed
here. But before you start using the app, I recommend you going through this post which explains in detail the functioning of the app.
Since our app is to be run on a local server in a shop, it is not possible to actually show you the full functioning of the app. So, the best we could do was upload our app online for the user feedback. Now, you can access all the functionalities of the app(all pages can be accessed by anyone) but in the real life scenario, only the song queue and song database pages will be accessible by the customers of the shop, the admin login page and admin console page will be accessible by the shop owner and the player page will be just opened by the shopkeeper on a window and that will automatically play the songs either from the queue or if the queue is empty, a random song will be played.
Now, I will explain the pages in detail and the flow of the pages:
Customers:
The first screen you see when you visit the page is the current song queue in the shop's database.
 |
| First screen in Customer mode |
Here, you can view the songs in the current queue. The Feedback button pops up a simple prompt to fill in your feedback to the shop owner. The "Get the List" button takes you to the second page of the app which displays the songs in the shop's database.
 |
| second page accessible to customer |
Here you can see the list and you can add your choice of song(limited to 1 song per person) and if by any chance your song isn't in the current database, you can request the song by clicking on "Write to Us" below. This takes you to the third page accessible to customer.
 |
| Song Request page to submit song request |
Note that since customers just need to add song and request songs so they wouldn't be amused to go through all the registration process and so we login the customer when they visit our first page and use the same token to request in other pages.
Shopkeeper:
To have access to the requests and play songs in the shop, the shopkeeper needs to first login to the server using our login page, available at "/adminlogin" endpoint:
 |
| Shopkeeper login page |
The current credentials for testing purpose is "username:shopkeeper, password:shopkeeper123". After logging in, the admin console is available for the shopkeeper which displays the customer feedback on one side while the song addition requests in the other side. The admin has the rights to delete the feedbacks and requests.
 |
| The admin console |
Also, after logging in as the owner, the shopkeeper can play the queue songs via the endpoint "/player". It is just an empty page(no UI) because all it needs to do is play songs from the queue or if the queue is empty, play a random song from the database. For some obvious copyright issues, we have not included the actual songs in the webapp, but there is a demo song that plays for every request. If you still need to verify if the songs are played from queue or at random, you can open the console and see which song is currently playing. This way you can see the actual functioning of the app in real time.
So, I hope that you go through this app and kindly test the app for any bugs or issues and I request you to either comment below your feedback or you can PM me on slack at
@akashagrawal if you are a Hasura Intern.
I think admin page need a logout button. Also how will admin add a song to queue
ReplyDelete?