megalista
megalista copied to clipboard
Add a frontend to Firestore-based config.
@caiotomazelli a configuração por JSON é para ser uma forma alternativa ao planilha do spreadsheet?
Se sim, não seria melhor utilizar o Filestore ou até mesmo uma tabela no BQ?
Hey Joaquim, thanks for the suggestion! Following your comment and @nivaldoh Firestore datasource PR, we can use this issue to discuss options for a Frontend to manage a config living in Firestore.
Hi, the initial version I have for the frontend is as follows:
Users are able to access an App Engine URL, and are greeted with a list of all supported destinations. One possible improvement would be to add extra info about each option
After selecting an option, users are directed to a page with destination-specific fields. I experimented with ways to make the interface easy to use for non-technical users (which seemed to be a likely user base in our context). I also added fields such as user name and requester name, for the sole purpose of adding some traceability to each configuration registered.
I added field explanations on hover, and adding field-specific checks and warnings would be the next priority. Confirming the existence of the BigQuery dataset and table could also be quite useful. Being able to visualize all active schedules and easily remove them is already a feature on Sheets, and also important here (although it might require a login system).
As soon as the user confirms registration, as success page is displayed, with an option to add a new configuration. This also stores the data in a (currently harcoded) collection in Firestore. An interesting improvement would be to automatically create a Scheduler job, assuming all data is valid.
The interface is quite barebones for now, but it provides two advantages over other methods:
- It does not rely on the Google Sheets domain, which has been blacklisted in some of our clients.
- It is meant to provide a friendly interface for non-technical users.
I'm very interested in hearing your opinions about this, as well as new ideas for improvements! I am looking to open a new PR about this in the near future.