An application is a program used to interact with the Farcaster network. It can be as simple as a mobile client that talks to a Hub. Apps can also have backends that interface with Hubs, doing the heavy lifting for feeds, suggestions, and notifications.
Users can choose the type of application that best suits their needs and even use many apps at once. Applications can be self-hosted by storing keys on the client, delegated by using a signer, or hosted by managing all keys server-side.