Thanks for writing in! I’m a bit unclear about both of these questions.
For 1, is this an issue with automatic column width, or with dynamic column length? If you have a simple reproducible example about column widths (i.e. you’re not getting the width you’re expecting), I would create an issue for that.
Dynamic column lengths are a bit trickier. I would more clearly specify the action you’re looking for, and then create an issue (or see if anyone else in the community has had similar problems as you.) Datatables are meant to correspond to existing tables. One possible thing to think about would be a callback that recreates the entire datatable component if it notices a change in the data.
In terms of exporting data, I would research creating CSV files and serving them via flask. Then, you can just simply create a link to a created csv. This is an example of a stackoverflow question addressing this issue.