first you’d want to use a marketing email service for this (not transactional)
be very certain to not mix transactional with marketing channels
second you’d definitely want a user option so they can toggle the notification on/off/frequency.
setting the weekly email - for repeat actions like this I usually call them from make.com (since bubble has pretty poor scheduling functions). call from make.com is simple - just call the api workflow at a day and time each week.
the workflow itself would iterate the users who wants to get the notification and then trigger another api workflow for each user
that workflow would likely trigger a custom event to build the email content and another custom event to send the email
you’d maybe need another api workflow to receive open/click data from the email provider and then log that back into bubble