Receipts in dashboard and annual receipts
Do these users have their own individual logins to your website?  If not, it would be difficult to provide them access to their receipts again.  If they do, then some custom code could be written to generate them.

Your annual receipts is a bit more doable.  You could schedule an email to be sent to all donors on January 1, that listed their donations, or at least the total amount of donations. There is a CiviCRM extension called Summary Fields what keeps running balances which probably would help here. 

(Note that listing the donations in the year might require a small amount of customization.)