Have I got the right database structure?

One thing to think about when you are designing the database are your Privacy Rules. I expect this design will be fine as you will create all the DB entries at “register” time by the User so you can have the nice simple rule on your Things of “this record was created by this user”.

Another thing is performance - that design of having a list of Followers and Following on your Users could give you performance issues when you have 100’s of followers and Following. There is an excellent ebook from @petter that explains this well. The Ultimate Guide to Bubble Performance - 156 pages of optimizing tips