Although I use the 3.0 version of PyMailGUI as is on a regular basis for both personal and business communications, there is always room for improvement to software, and this system is no exception. If you wish to experiment with its code, here are a few suggested projects to close out this chapter:
Mail list windows could be sorted by columns on demand.
This may require a more sophisticated list window structure
which presents columns more distinctly. The current display of
mail lists seems like the most obvious candidate for cosmetic
upgrade in general, and any column sorting solution would likely
address this as well. tkinter extensions such as the Tix
widget may show promise here, and the third-party
TkinterTreectrl supports multicolumn sortable listboxes, too, but
is available only for Python 2.X today; consult the Web and
other resources for pointers and details.
The implementation of save-mail files limits their size by loading them into memory all at once; a DBM keyed-access implementation may work around this constraint. See the list windows module comments for ideas. This also applies to sent-mail save files, though the user can limit their sizes with periodic deletions; users might also benefit from a prompt for deletions if they grow too large.
Hyperlink URLs within messages could be highlighted visually and made to spawn a web browser automatically when clicked by using ...