The easiest common installation pattern is to have CiviCRM and the frontend website on the same server using the CMS as the website but it is often said there are benefits to keeping them separate. Multiple approaches and extensions have been developed to facilitate this - but our documentation does not (yet!) provide any guidance on these.
The purpose of this question is to gather information about the various tools that exist, what problems they solve and how they fit together as the basis for a new section in the documentation.
What extensions exist to connect a frontend website with a backend CiviCRM?
What can they be used for? Eg - mailing list signup, event signup, personal profile updates, contributions etc
What front-end extensions/modules/plugins work with them?
What back-end extensions work with them?
- I know the normal advice is not to ask multiple questions in one SE question. But think of those as sub-parts of the overall question "How can I connect my website to CiviCRM on a remote server?"
There are some previous related questions but the aim here is to get a comprehensive list of current recommended methods. Eg: creating contacts from remote websites Webform CiviCRM integration with REST Using iframes to present contribution page on remote site CiviCRM and WordPress on different hosts?
If we get one great all-encompassing answer, that can become the basis for the documentation update. More likely, we'll get a selection of answers on particular tools that will need to be consolidated.