I am trying to build a Streamlit app in which a user enters data in a form-like manner (info about themself), and this data is then submitted and sent as a CSV file to me or as a PDF. Does anyone know of how to do this? The idea is that it is basically like Microsoft Forms, except in a Streamlit app.
Are you trying to send yourself an email with each submission, or are you trying to collect submissions and send a summary?
If you want to send batches of submissions, you’d be best served hooking up an external data store since the deployed app would lose all stored info not in the original deployment if it reboots.
If you are trying to send yourself an email with each submission, you could use something like yagmail to email info (assuming there are no privacy concerns about the data being collected/emailed).
As for packaging up data into a file to send, the details vary depending on just what kind of data you’re collecting per submission. Very simply, I have an example of saving two text inputs to a csv as part of an example to take widget inputs and pass them to a Jupiter notebook.