
you are here
fully featured social map built on farcaster
About
The problem it solves A fully featured, and shareable farcaster miniapp and client for casting in the a social world map: () Add any cast, with any media or embed to a world map, on a layer you choose. Your cast in farcaster will let a user open the map to where your cast is as well as show a preview of the location on farcaster. Example: https://farcaster.xyz/universal-friend/0xcab6c0db. You can also go to the cast on farcaster through the map. () Share any location or layer of the map via url. () You can filter the map by layers (Home, favourite_places, events or any user created one) and by time. Each layer will have a self generated color to make it distinct. () You can see your user timeline of map based casts. () You can use it as either a mini app or a standalone full-screen farcaster client at uarehere.online from any browser or as a progressive web app. Smart Contract Address(es) Last year the project launched for base in base sepolia (in a barebones state ) here : https://sepolia.basescan.org/address/0xD5B94E12Bd3215cB83fa09E9850a1a8669983562 this handled embed and layer creation, and had an nft embedding component but is not used anymore. May be used later to add an onchain component to the current farcaster embeds.
How it's made
Challenges we ran into Several small-medium ones, just highlighting a couple of memorable ones below: () Generating a map image by taking a screenshot of my app at the right location to give great embed open graph previews in a scalable manner . () Generating the preview before the cast on the map : (putting a preview marker on the map, taking a dom snapshot of the map at that point in time and deleting by the time the user posts and the form closes ) . ()In general building a non-next js (this one is a client side react app) based miniapp. Most of the miniapp ecosystem seems to be nextjs focused. () Displaying all basic media types and embeds on map marker popups. Example: https://www.uarehere.online/@?lat=41.96211&lng=-87.64235&z=19.75&layer=Home