I think you need to ask yourself what the relationship is between these various entities. user_profiles, for example, appears to be a 1-to-1 with the users table and so it would seem redundant in this case. A user can only have one name, age, etc. and so I would store these attributes on the users table directly. Incidentally, age changes and so I would store birth date instead and calculate an age accordingly.
I also wouldn't store things like followers on the platforms table since a platform will have many followers. Instead, store data that is unique to a platform instance on your platforms table and link things like users through a platforms_users table.
In the case of relating users to platforms, these three tables: users, platforms, and platforms_users are all that is needed to track those associations. In other words, your users and platforms have a many-to-many relationship and the platforms_users table serves as the pivot to form that relationship.
From this point, any additional related attributes to users or platforms can be stored in their own respective tables and, depending on their relationships, linked back directly or through other pivot tables.