Come Alone by Meet & Mint Developers · events feed v1

For developers & partners

The Come Alone events feed

Every event on comealone.app, as plain JSON and RSS: curated come-alone events from city open data, summarised in our own words, each with an original cover. No key, no login, CORS open. Free for non-commercial use with attribution; commercial and white-label plans for products, media and cities.

  • 792upcoming events
  • 171cities
  • CC BY 4.0free with attribution

Endpoints

Static files, rebuilt after every batch

Everything lives under https://comealone.app/feed/v1/. Files are regenerated when we add events (usually daily) and cached for 30 minutes at the edge. Only upcoming events are included — past ones drop out automatically.

  • /feed/v1/events.jsonAll upcoming events, sorted by start, plus meta (count, cities, licence).
  • /feed/v1/cities.jsonEvery city with country, timezone, event counts and its own feed URLs.
  • /feed/v1/city/<slug>.jsonOne city. Slugs are lower-case ASCII with hyphens: madrid, san-sebastian, new-taipei.
  • /feed/v1/events.rssRSS 2.0 of all upcoming events — title, official link, description, pubDate (= start), guid, cover as enclosure.
  • /feed/v1/city/<slug>.rssPer-city RSS. Add it to a reader or a newsletter tool, or put it in a <link rel="alternate">.
  • /feed/v1/widget.jsDrop-in widget that renders a city's next events on your page (see below).

Responses carry Access-Control-Allow-Origin: * and Cache-Control: public, max-age=1800. There is no rate limit on static files; please cache on your side for at least 15 minutes anyway.

Cities with the most events right now

The full list, with slugs, is in cities.json.

Schema

One event, normalised

Every feed is { "meta": {…}, "events": [ … ] }. meta has generated_at, count, cities, license and docs_url; per-city feeds add city, slug, country and timezone. Fields marked | null may be missing for some events.

FieldTypeMeaning
idstringStable key of the event (also the cover file name). Use it for de-duplication.
titlestringEvent title, in English, written by our team.
descriptionstring | nullTwo or three sentences in our own words. Never the organiser's text.
startstringLocal start as ISO 8601 with UTC offset, e.g. 2026-10-14T17:30:00+02:00.
endstring | nullLocal end, same format.
timezonestring | nullIANA zone, e.g. Europe/Madrid. Derived from the city.
citystringCity name as shown on the site.
city_slugstringLower-case ASCII slug; the per-city feed is /feed/v1/city/{slug}.json.
countrystring | nullCountry name; country_code is the ISO 3166-1 alpha-2 code.
venuestring | nullVenue or meeting point.
addressnullReserved. Street addresses are not in the current data set.
categorystringOne of Music, Culture, Learning, Social, Outdoors, Food and drink, Nightlife, Arts & crafts, Sports.
pricestring"free", an amount found in the description (e.g. "€2.50") or "low-cost". is_free is the boolean.
source_urlstringThe organiser's official page. Always link to it.
organizerstring | nullHost name of the official page (e.g. barcelona.cat); organiser names are not in the data yet.
cover_urlstring | nullOriginal illustration, 960×600 WebP, CC BY 4.0 like the rest of the feed.
languagesstring[] | nullISO 639-1 codes when the description says the event is held in a language.
updated_atstringWhen the underlying data set was last changed (UTC).
urlstringThe event's city page on comealone.app.

Example response

{
  "meta": {
    "generated_at": "2026-10-16T14:00:00+00:00",
    "count": 792,
    "cities": [
      "Barcelona",
      "Madrid",
      "…"
    ],
    "license": "CC BY 4.0 — attribution 'Come Alone / Meet & Mint'",
    "docs_url": "https://comealone.app/developers/"
  },
  "events": [
    {
      "id": "g10-birding-ryan",
      "title": "Fall birding in a Brooklyn community garden",
      "description": "Look for migrating songbirds in the garden's trees and passing hawks overhead with local birdwatching author Ryan Goldberg, and talk about birding in the city. Free; bring binoculars if you have them.",
      "start": "2026-10-17T09:00:00-04:00",
      "end": "2026-10-17T11:00:00-04:00",
      "timezone": "America/New_York",
      "city": "New York",
      "city_slug": "new-york",
      "country": "United States",
      "country_code": "US",
      "venue": "East Fourth Street Community Garden",
      "address": null,
      "category": "Outdoors",
      "price": "free",
      "is_free": true,
      "source_url": "https://www.nycgovparks.org/events/2026/10/17/birding-with-ryan",
      "organizer": "nycgovparks.org",
      "cover_url": "https://mm-covers.pages.dev/m/g10-birding-ryan.webp",
      "languages": null,
      "updated_at": "2026-10-16T15:21:37+00:00",
      "url": "https://comealone.app/#new-york"
    }
  ]
}

Dates are local to the event with an explicit UTC offset, so new Date(e.start) is always correct; show them in e.timezone, not in the viewer's zone, unless you mean to.

Quick start

Three lines to the first event

curl + jq

curl -s https://comealone.app/feed/v1/events.json | jq '.events[0:3] | .[] | {title, start, city, source_url}'
curl -s https://comealone.app/feed/v1/city/madrid.json | jq '.meta.count'
curl -s https://comealone.app/feed/v1/events.rss | head -20

JavaScript (browser or Node 18+)

const r = await fetch('https://comealone.app/feed/v1/city/madrid.json');
const { meta, events } = await r.json();
console.log(meta.count, 'events in', meta.city);
for (const e of events.slice(0, 5)) {
  console.log(new Date(e.start).toLocaleString(), e.title, e.venue, e.source_url);
}

RSS autodiscovery

<link rel="alternate" type="application/rss+xml" title="Come Alone — Madrid" href="https://comealone.app/feed/v1/city/madrid.rss">

Attribution for the free tier: a visible “Events by Come Alone / Meet & Mint” near the list, and a link to each event's source_url. That is the whole licence (CC BY 4.0).

Embeddable widget

One script tag, a list of tonight's events

Put the tag where the list should appear. It renders the next events of a city with cover thumbnails, links to the official pages and an “Open in Meet & Mint” link. No dependencies, ~4 KB, styles are scoped to the widget and follow your page's font.

<script src="https://comealone.app/feed/v1/widget.js" data-city="madrid" data-limit="5"></script>
AttributeDefaultMeaning
data-city(all cities)City slug from cities.json. Omit for a cross-city list.
data-limit5How many events to show (1–50).
data-category(all)Only this category, e.g. Music.
data-freefalsetrue shows free events only.
data-themelightlight, dark or auto (follows the visitor's system).
data-titleGo alone in <city>Heading text; empty string hides it.
data-target(after the script)CSS selector of an element to render into instead.

Live preview

The preview above is the real widget, fed by this site's own feed.

Pricing

Free to read, fair to build on

The feed is open. What you pay for is the right to use it inside a commercial product, without our name on it, with support and a stable schema.

Open

€0CC BY 4.0
  • Personal, community, research and non-commercial sites
  • JSON, RSS and the widget
  • Attribution “Come Alone / Meet & Mint” and a link to each official page
  • Best-effort availability, schema may change with notice on this page
Start now

Commercial & white-label

from €49/ month
  • Use inside paid products, apps, media sites and city portals
  • Widget without our branding, your colours
  • Pinned schema version, change log by e-mail, 48-hour support
  • Extra fields on request (addresses, coordinates, your categories), priority for new cities
Write to us

Cities, tourism boards and newsrooms: tell us which cities and languages you need and we will set up a feed and a quote. Contact details are coming to this page shortly — for now, reach the Meet & Mint team through meetmint.app.

Good practice

How to use it well

  1. Link to the official page. source_url is where people register, check prices and see last-minute changes. Never hide it.
  2. Show times in the event's timezone. Each event has timezone; a Taipei concert at 19:30 is not at 13:30.
  3. Cache for 15–30 minutes. We rebuild the files after each batch; the edge caches for 30 minutes. Polling more often just returns the same file.
  4. Keep the attribution. On the free tier, “Events by Come Alone / Meet & Mint” with a link to comealone.app, visible next to the list.
  5. Use id for de-duplication. It is stable across rebuilds; updated_at tells you when the data set last changed.

The app

Get the Meet & Mint app — see who's going

Meet & Mint: Events & Friends puts events and people near you on one map, with a chat for every event. Join alone, invite another adult, or host your own walk, dinner or game night. The widget's “Open in Meet & Mint” link brings your visitors here.

  • Events & people on one mapSwitch with one tap; filter by category, date, price and who you're coming with.
  • A chat for every eventPlus a room for each group going together — agree where to meet before you arrive.
  • Join aloneOr invite another adult, or bring kids when the host welcomes families. Waitlist when it's full.
  • Privacy by defaultApproximate location only, who's going hidden by default, exact meeting point only for confirmed participants.
Meet & Mint app iconMeet & Mint: Events & FriendsiPhone · Android

★ 4.5 on the App Store · MEET & MINT LTD · meetmint.app

The Meet & Mint app: a map of events and people near you
Events near you and people to go with, in the Meet & Mint app
An event in Meet & Mint: join alone, as a pair or with a group
Event chat rooms and 1-to-1 meetings in Meet & Mint
Hosting your own event in Meet & Mint takes minutes