--- title: 'SpatialFeed' disqus: hackmd --- # SpatialFeed [TOC] ## Introduction :::info Display events around you in real-time ::: Location-based live events, jobs, news and other things happening around you. Events are displayed with 5km radius for free users, and paid for scanning longer distances. Future use-case includes viewing real-time spatial feed about news, houses, gyms, rocket launches, jobs, friends, aggregated social data and events. This app is clearly not meant for any city, but high population density cities with a lot of activity happening around. ### How it works 1. Fetch data from an API from event websites (meetup / eventribe) 2. Display the card and event details with media 3. Share events as stream 4. Implicit friendships ### Features - anyone should be able to post an event - users can teleport to another city in AR mode - this can use Street View API - place of interest can have media like video, image and sound - search options for finding POI ## Technology #### Mobile : Babylon JS | React Native We use this pipeline : Viro + MapBox : [viro](https://docs.viromedia.com/docs/viropolyline), [portal](https://blog.viromedia.com/how-to-build-ar-portals-in-5-mins-w-react-native-viro-ar-b939850def94), [mapbox](https://www.residentadvisor.net/) and Babylon.js ### Examples #### AR - [Hypertrending](https://techcrunch.com/2019/03/08/foursquares-hypertrending-helps-you-spy-on-the-coolest-local-happenings/) Foursquare approach to location in real-time - [GeoSure](https://geosureglobal.com/) a safety assessment app and platform, uses real-time, hyper-local data to provide travelers with neighborhood safety information along multiple dimensions of identity and well-being - [Google I/O 2019](https://drive.google.com/file/d/1hS_Mnz3zEBubRyWsN7KMa_b9CMaLjXYm/view?usp=sharing) Helps you locate conference events at I/O 2019. #### XR For Hololens the use-case hasn't been approapriated yet. Since Azure Anchors are particularly are [sufficient](https://azure.microsoft.com/en-us/services/spatial-anchors/). We can add GPS just to make it more accurate and persistant. Two cases are possible with MR : 1. Create a miniature world with 3D Maps like Google Earth, this can be generated from MapBox 2. Without 3D Maps, just superimpose events POI cards in MR as user chooses location 3. Use 2D maps with 3D world-space canvas - [Google Earth VR](https://www.youtube.com/watch?v=3r5zDgrB23Y) - [Microsoft](https://www.microsoft.com/en-us/p/outings/9pc50k3qbh0x?activetab=pivot:overviewtab) - [HoloMaps](https://taqtile.com/holomaps/), [github](https://github.com/peted70/geojsontomesh) #### Browser - [Google Alerts](https://google.org/publicalerts/details) - [The Pudding](https://pudding.cool/2018/10/city_3d/) ## PageRank and location weights **PageRank (PR)** is an algorithm used by Google Search to rank websites in their search engine results. I think for this topic we can consider looking at the location as node and interest as edges, people in a certain location have an affinity for certain topics due to their location. An event **E** in city **A** might have a higher rank than the same event in city **B**. So we can use **POI** (pages) as nodes and **location** (IP Address) as edges. ## Interest Graphs VS Social Graphs ::: info The `Interest Graph` is an online representation of individuals’ [interests](https://techcrunch.com/2012/02/18/beyond-facebook-the-rise-of-interest-based-social-networks/), with people and interests being the nodes of the graph. Connections exist between people and interests as well as between interests and interests. Online communities, from the early forums and discussion groups to the likes of StumbleUpon, Digg and Reddit, have always played a central role in grouping people around topics of interest. However, applying the Interest Graph concept to link online search and discovery to offline purchases catapults the realm of opportunities to a whole new level, as demonstrated for example by the latest Groupon valuation rumors. The Interest Graph has been described as the “middle ground between Google and Facebook – between search, advertising, and the social graph”. Simply put, Google creates their version of the Interest Graph by mining my search queries and other data collected online, for example through Gmail or Google Maps. `Location` Location in particular is interesting and Meetup helps groups of people with shared interests plan meetings and offline gatherings, was started long before the term IG became fashionable and is a great example of how location and interest intersect. Color, a social app to share photos real-time with people around you,using elastic network (“multilens,” “visual bulletin,” etc.. By design, it has chosen location to be the most relevant factor to drive its content. It will be interesting to see how they can further increase relevancy within these highly local implied social networks created in real-time. ::: User story --- - [name= tenaciousDaniel] > I lived in NYC for a few years, and every so often I'd find myself wandering around the city on a weekend afternoon, wondering what I should do. Ideally, there'd be an app where I could simply open it up, look at a map, set it to the current time or maybe within an hour or so, and easily see events near me. That app just does not exist. You can get kinda close with a few apps, but not really. In this context, I don't care what my friends are doing, I just want to find something cool period. Events *things I might possibly be interested in* vs *things my friends expressed interest in* ## Scalability ### Hasura by Vladimir Novick We will use Hasura as a backend layer. [Building Data Driven AR apps with GraphQL](https://dev.to/hasurahq/building-ar-apps-in-react-native-powered-by-graphql-using-hasura-h9m) The trick is that an engine is a compiler so it also solves $n+1$ problem in GraphQL so no need for dataloader and such. That attributes to amazing performance And no need to worry about batching because it is solved in the core. ###### tags: `Name` `Eschereal` $L^p$ spaces `Elixr`