All Projects → ziolko → roombelt-activity-map

ziolko / roombelt-activity-map

Licence: Apache-2.0 License
🗺 Show a map of your active customers to build trust

Programming Languages

typescript
32286 projects

Projects that are alternatives of or similar to roombelt-activity-map

OpenHarmony
华为鸿蒙分布式操作系统(Huawei OpenHarmony)开发技术交流,鸿蒙技术资料,手册,指南,共建国产操作系统万物互联新生态。
Stars: ✭ 373 (+501.61%)
Mutual labels:  maps
commercejs-nextjs-vercel
Serverless eCommerce demo store built for the Jamstack. Built with Commerce.js, Next.js and can be one click deployed to Vercel. Includes product catalogue, categories, variants, cart, checkout, order confirmation and printable receipts. This is an open source project.
Stars: ✭ 68 (+9.68%)
Mutual labels:  vercel
next-sass-starter
Use Sass to start your Next.js app with CSS superpowers!
Stars: ✭ 30 (-51.61%)
Mutual labels:  vercel
google-streetview-images
Pull google streetview panoramic images along a route.
Stars: ✭ 45 (-27.42%)
Mutual labels:  maps
react-typescript-hooks-realworld
conduit realworld application with [ React + Typescript + Redux + Hooks ]
Stars: ✭ 20 (-67.74%)
Mutual labels:  vercel
google-maps-utility-library-v3-read-only
git clone of http://google-maps-utility-library-v3.googlecode.com/svn/
Stars: ✭ 51 (-17.74%)
Mutual labels:  maps
Site
Israel Hiking Map has maps, route planning, and travel information for Israel. This repository holds the files needed for running the Israel Hiking Map site and apps.
Stars: ✭ 52 (-16.13%)
Mutual labels:  maps
carto-react
CARTO for React packages
Stars: ✭ 17 (-72.58%)
Mutual labels:  maps
benjamincarlson.io
My personal website built with Next.js, Chakra UI, Firebase, and next-mdx-remeote.
Stars: ✭ 102 (+64.52%)
Mutual labels:  vercel
nglp-angular-material-landing-page
NGLP is an Angular Material Landing Page.
Stars: ✭ 32 (-48.39%)
Mutual labels:  landing-page
node-google-polyline
Encode / decode Google's polyline format
Stars: ✭ 35 (-43.55%)
Mutual labels:  maps
next.js-tailwindcss-template
Opinionated Next.js and TailwindCSS template.
Stars: ✭ 15 (-75.81%)
Mutual labels:  vercel
tailwindcss-landing-gradients
A landing page made with tailwindcss and the new Gradient feature.
Stars: ✭ 41 (-33.87%)
Mutual labels:  landing-page
gogo
GoGo - Free Bootstrap template for chat bot landing page
Stars: ✭ 45 (-27.42%)
Mutual labels:  landing-page
examples
Enjoy our curated collection of examples and solutions. Use these patterns to build your own robust and scalable applications.
Stars: ✭ 960 (+1448.39%)
Mutual labels:  vercel
Landing-Page
A simple Django Landing Page for organizations.
Stars: ✭ 26 (-58.06%)
Mutual labels:  landing-page
web-ui
Landing page for Mahadel project [Deprecated]
Stars: ✭ 16 (-74.19%)
Mutual labels:  landing-page
apps
daily.dev application suite
Stars: ✭ 253 (+308.06%)
Mutual labels:  vercel
o.map
Open Street Map app - KaiOS
Stars: ✭ 51 (-17.74%)
Mutual labels:  maps
website
My JAMStack website/blog [Next / MDX / ChakraUI]
Stars: ✭ 51 (-17.74%)
Mutual labels:  vercel

Roombelt activity map 🗺

This application generates an animated SVG world map with locations of active users of Roombelt. The map is embedded into https://roombelt.com in the "social proof" section to prove that the product has real world usage.

You can easily create similar map for your product by following the steps below.

Prerequisites

  1. Star this repository 😜
  2. Create a Vercel account.
  3. Get a Redis instance. I use Upstash but any modern Redis server would do.

Installation

  1. Create a new Vercel project with the following environment variables:
    • REDIS_URL, REDIS_PASSWORD and REDIS_PORT that define connection to the Redis database.
    • TOKEN is a secret that you will use to report users' activity to the map.
  2. Clone this repository.
  3. Deploy this repository to Vercel with Vercel CLI or git.

Usage

Single server can serve multiple separate maps. I use only https://maps.roombelt.com/roombelt.svg but other addresses like https://maps.roombelt.com/example.svg or https://maps.roombelt.com/subscribers.svg could be used as well.

The map contains up to 100 locations of clients active in the last 30 minutes. To change the limits modify this line.

Reporting user activity from your back-end is as simple as sending a POST request with a valid authorization header and the reported ip address in the payload. This is how I do it in the Roombelt backend:

await axios.post(
  "https://maps.roombelt.com/roombelt.svg",
  { ip: clientIp },
  { headers: { Authorization: `Bearer ${process.env["TOKEN"]}` } }
);

Credits

The idea was inspired by Clever Cloud dashboard activity map. The map generation code is based on https://github.com/NTag/dotted-map.

Jobs

I am looking for teammates in my daily job. If you're really strong in React and live in CEST +/- 3h let me know at [email protected].

License

Apache 2.0

If you use the activity map on your site let me know at [email protected] and I will add a link here.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].