Started as my MA thesis in 2022, kept building since, mostly solo with a little funding. Fully open source, self-hosted, AGPL-3.0, Next.js + Deck.gl on the frontend, Strapi backend, Python ETL pulling from museum open-access APIs. Currently indexing over 100k artifacts from all over the world, across 8 collections (Met, V&A, SMB Berlin). Recently added an md export so researchers can download provenance data for a filtered set of artifacts.
The infrastructure is conceptualized as an indexer, not a hoster. Even images are kept as URLs pointing to the source institutions. It's connective tissue between archives that were never designed to speak to each other, with an origin-first search UI concept. The data model is on purpose flat, to avoid encoding problematic taxonomies, and routes researchers directly to the source giving responsibility to the source institutions rather than duplicating institutional data. It indexes the relationship between origin sites and destination collections.
Coming from a design background, taking this project from prototype to production app has been incredibly rewarding, but honestly it’s getting a little bit overwhelming to scale alone. I would love community’s feedback on performance scaling, any code contributions, data pipelines for missing museum apis or general feedback.
Repo: https://github.com/hburakyel/ex-situ
Live: https://exsitu.app
A small subset of the data. If all London museums were included (such as the British Museum, for example) there would be a LOT more lines going to London.
[^1]: https://en.wikipedia.org/wiki/William_Richard_Hamilton
I find it much more compelling to fully see some negative aspect(s) of someone's past existence while accepting that if I grew up in that era, I would have vastly different morals and probably be fine with that.
Judge others not too harshly if you may, since you will also be judged further down the line and most surely will be judged as inadequately moral or good by their standards, didn't do enough to help preventing some proper shit happening/will happen and so on, rather looked away while milking some comfy job for those sweet dollars (we all have kids and families and mortgages and dreams I know, so does everybody else).
Most people here work for FAANGs of this era for example, hardly moral corporations by any metric and some literally sowing evil ie in cancers called social networks and their gamifications or pushing unwanted ads / outright lies into every eyeball they can reach. And those companies are hardly the only black spots on current society, I'd even say purely moral work is rather rare.
Or perhaps a better example is "of the time" quotes to justify apartheid South Africa, a place my parents grew up in. Many friends parent's were blindly ignorant or supportive, but that doesn't mean they didn't know the facts. They just go, "that's how it was". When I know from my parent's it wasn't like that, and White and Black people knew exactly what was going on. Same could be said for Nazi Germany.
And certainly same can be said for everyone on here that works at FAANG, or Palantir or any US defense contractor. They are knowingly and willingly aiding genocide or mass surveillance. They cannot claim ignorance.
We live in a day and age where people far too easily give up their freedoms, give up moral stand points because it is difficult or divisive. Yes, that's exactly what it is meant to be.
Maybe if we judged people more harshly we wouldn't be seeing a rise in fascism today, because views are just accepted as they are. Hell no. I hope I am judged down the line. Don't be too blase about accepting shitty viewpoints because people are morally ignorant, or lack principles and in doing so divide humanity along spurious lines.
I couldn't figure out from the UI but is there a way to filter the map? Say, I only want to see things going out of Cusco or I only want to see where things end up in Berlin?
It would also be nice to have some directionality to the lines to indicate source and destination, perhaps a colour or lightness gradient or something.
From a UX perspective, it is very weird to place the toggle button for the right panel at the top of the left panel... After I gave up to find a way to close the right panel, I found that button a few minutes later, when I looked around for other interactive elements.