How to build a social component