> in months time frame.
I'm going to assume you meant you could start in a month, rather than be completed in a month, because otherwise I'd like to save you some pain!
I wrote a mail client, two actual, focussed upon the console. (Think "scriptable mutt".) Writing a mail-client is hard. Partly due to the sheer amount of bogus mails you'll get, and partly due to people having very firm beliefs about what they want.
The user-interface is the easy part. More important is to design how you're going to work - Originally I allowed something similar to google's tagging, so you could "open a folder" which contained mail from multiple Maildir collections. It was not a success.
Using a database to store your state is a cheap alternative, but risks issues getting outdated if you ever interact with the mail outside your program. You either have to force an "indexing" step - like notmuch does - or scan the filesystem tree. Neither of those approaches are great, for obvious reasons.
(Also God help you if you want to work with remote IMAP servers. Standards? What are they!)