Home » Software

Category: Software

Building the Tesseract: The Archive Learns to Search, See, and Talk Back

Sharing this with the NET-ART and CUNY Commons community because, underneath the build, it is a teaching question: what becomes possible when you can point AI at your own work, or a whole course, and search it, see it, and talk back to it, locally and for free? There is a section below written specifically for teachers. Originally published at ryanseslow.com.

 

Twenty years of my scattered work, pulled into one living archive that talks back, holds a huge portion of my creative life, opens a door for machines, and now shows you its face. A field report, with the unflattering parts included..

Yes, this is unapologetically long.. good thing our attention spans are ready for it!

This started with a simple, slightly uncomfortable question:

What is hacking, really, and could I hack myself?

Not in the “Hollywood” sense. In the original sense: to understand a system well enough to make it do something it was not expected to do. I wanted to point that lens at the one system I have the most access to and the least honest view of, my own patterns. So I asked an AI working session to do something most of us never let anything do: read my actual behavior off my own machine. Not the story I tell about myself, but the evidence. The files. The time-stamps. The folders and files that I start and abandon. The things I save and never reopen..

What came back changed how I see my own work, and over a handful of sessions it turned into something I had wanted for twenty years and never finished. This post is the whole story, start to finish. If you have been following along, you already know the early chapters: I let an AI read my entire twenty-year WordPress archive and asked what would happen. This is where it lands. The archive learned to talk back, then it went public, then it opened a door for machines, and just now it opened its eyes.

Here is the twist I did not expect: every version that worked was the one I made smaller. The early builds were ambitious and intricate. The versions that shipped are deliberately minimal, the standard library, one database file, a couple of small local models. The distillation was the breakthrough.

I stopped elaborating and started finishing..

Hacking Myself: The Loop I Could Not See

I let the session look at the shape of my digital life: my Desktop, my 50GB+ iCloud archive, my Google Drive, my live website. Not to read my private thoughts, to read the patterns. The structure. The geology.

The finding was humbling and precise. Across every archive, the same loop repeated at every scale:

A vision ignites, I erupt in prolific output, I get the high of the birth, the next idea pulls me away, the work is left where it landed, it quietly entombs, and months later the same idea is reborn under a new name..

I am, it turns out, addicted to genesis creation and allergic to maintenance. I start brilliantly and rarely return. My iCloud held a heroic consolidation of my career, built between 2015 and 2018, then abandoned and never reopened. My Desktop held twenty live project threads in ten weeks, nothing filed. And the same core idea, an AI trained on my own art and writing, had been born three separate times under three different names, each one starting over from zero. That is seriously funny!

The missing spot was not disorganization. It was that nothing I made was ever allowed to compound, because compounding requires returning, and returning never gave me the hit that starting did.

The Correction: “No Content Available”

Here is where it got sharp. The session found that I had, years ago, (2024 in AI time is like 10 tears ago in todays time) haha, already started building the AI-trained-on-me dataset. I had even exported my entire website into per-year training files. For a moment it looked like the project was most of the way done.

Then we actually opened the files. And almost every single record said the same thing:

{"prompt": "Describe the artwork titled 'DSC06448' created in 2009.",
 "completion": "No content available."}

The training data for the AI version of me was empty. The pipeline had pulled image filenames, DSC06448, but never captured a word of my actual writing. I had built the exciting structure of the idea, run it once, gotten back rows that literally read “No content available,” and walked away before the unglamorous extraction work.

I want to sit with how perfect that is. The empty file was the whole diagnosis in plain text. The content is available. It is all over my live site. I just stopped before capturing it. Genesis got done. Maintenance did not. Even my self-portrait-as-AI had abandoned itself at the hard part.

So we changed the plan: stop trying to out-discipline the loop, and build a layer that does the maintenance automatically, routing every future idea into one home instead of letting it spawn a fourth.

(One unglamorous aside, because it belongs to the same lesson: the self-audit also turned up live API keys sitting in plaintext inside old scripts, the kind of thing that can quietly run up a bill or worse. We found them, I revoked them, and rewrote those files to read their keys from the environment. The cost of never returning to your old work is that things rot there. Going back is not glamorous. It is also where safety, and value, actually live.)

Chapter One: The Archive Learns to Talk Back

The fix has a deliberately boring shape, because boring is what compounds. I call it RyanSeslow OS, a single, local home for my body of work, in three layers:

  • Ingest, pull my real content from where it actually lives.
  • Spine, store it once, in one place, in a form I can search and grow.
  • Aremes, a conversational layer that answers questions using only my own writing, in my own voice, with citations.

Then we built it, end to end, in a single session. It read my website, 1,160 posts and pages, roughly 357,000 words spanning 2008 to 2026, with more than 12,000 images linked, into a single catalog. It turned all of that into a local semantic index. And then I asked it a question I had never directly answered anywhere:

How can artists use AI to expand their creative practice without losing themselves?

Aremes answered in my voice, drawing on essays I wrote in 2012 and 2013, citing each one with a link, and honestly noting that I had never addressed the question head-on rather than inventing an answer. That honesty is the system working correctly. It is grounded in me, and only me.

For the first time in this entire twenty-year pattern, the AI-trained-on-me idea shipped, held real content, answered questions, and grows when I publish. The loop broke.

The most surprising thing about it is how small and free it is. It runs entirely on a laptop. No API key, no subscription, no cloud bill, nothing anyone can revoke. Python 3 and its standard library only. My own WordPress content via its built-in REST API. One SQLite file. Two small local models through Ollama: nomic-embed-text for the meaning index and llama3.2:3b for grounded answers. Retrieval is plain cosine similarity in pure Python; with about 1,100 documents, brute force is instant.

(The full build is in the appendix at the end of this post, so you can make your own!)

Chapter Two: The Archive Goes Public

The obvious next step was to drop the AI chat onto my website so anyone could ask it questions. I did the opposite, on purpose.

Here is why. The local model is small enough to run on a 2019 laptop, which is wonderful, but it means that every so often, even grounded in my real writing, it will invent a quote and attribute it to me. On my own machine, with a verification layer that flags fabrications, that is manageable. On a public website, it is unacceptable. A tool that occasionally puts words in my mouth, in front of strangers, is worse than no tool at all.

So the public version is search, not chat. It does not generate answers. It does not summarize. It does not imitate my voice. It takes your words, finds the most relevant passages from my actual posts, and links you straight to the originals. Zero hallucination, because there is no generation happening at all. Every result is really me. And it is built the way the whole project is built, as a single static page on my own shared hosting: no server to babysit, no AI service metering me, nothing a company can switch off.

You can use it right now: ryanseslow.com/search/

Then I gave it a big portion of my creative life, not just my blog. For two decades my work has lived in different places: long-form on the blog, but also thousands of posts on Tumblr, Instagram, more than 1,500 animated GIFs and stickers on Giphy. None of them talked to each other. None of them were searchable as one thing.

And this is where it got funny, and very me. It turned out I had already “prepared” each of these. Years ago I had made caption files, export folders, an archive system for every platform. I felt organized. Then we actually opened them:

  • My Giphy captions file, 1,593 rows, where every single caption was an error message. The captioning script had broken and saved the errors as the captions.
  • My Tumblr “full archive” was entirely placeholder text: “Caption for Ryan Seslow artwork N, generated from AI analysis.” Stubs. No real content.
  • My Instagram archive, a beautiful folder structure I had named “The Memory Tree,” had a captioned-exports folder that was completely empty.

The same thing, again. I built the elaborate structure and never filled it. So this time we finished it, going to the living sources instead of the abandoned exports: my real Tumblr posts pulled directly and filtered down to only my own work, my real Instagram captions from the official export, the real titles and dates for all of my Giphy work. One search across everything I have made, blending platforms that never knew about each other. Search “sign language graffiti” and you get my Tumblr hand-style posts, my Instagram public-space interventions, a sign-language sticker from Giphy, and my long-form essays on art in public space, side by side.

Chapter Three: A Front Door For The Machines

The search box was built for human eyes. But the next thing to visit your website is not going to be a person. It is going to be an agent.

More and more, the way people find and buy things runs through an AI acting on their behalf. You tell it what you want, and it goes out, reads sites, compares, and sometimes completes the purchase, all without you opening a tab. My website was welcoming to a person and almost invisible to software. An AI that showed up at ryanseslow.com had no clean way to know what I make, what is for sale, what it costs, or how to license it. My twenty years of work might as well not have existed to it.

So I gave my archive a front door that machines can read. There is an emerging set of quiet standards for exactly this: small files you place on your site, written for machines rather than people. One is llms.txt, a plain-language summary an AI can read to understand who you are and what you offer. Others live in a .well-known folder and describe your catalog and capabilities in a structured way agents already know how to parse. A sign, written in a language only machines speak, hung on the front of the building.

And, very on brand for this series, when I went to check it, the door was broken. The file an agent looks for first was returning “not found.” I had built the doorway and never confirmed anyone could walk through it. We found the bug, fixed it, and tested it the way an actual agent would. Now when an AI arrives, the door opens: it can read a clean description of my practice, pull a machine-readable catalog, and search all twenty years through a single endpoint.

Built into the same surface is a way for an agent to ask a price for a piece and pay for it, in stablecoin, on its own, with no invoice and no checkout page. I am calling this layer AREMES, and the point is simple: my work should be able to be found and licensed by a machine at three in the morning while I am asleep. I am not turning my art into a vending machine, and I am not replacing the human relationships that matter most. I am making sure that when the buyer is an agent, and increasingly it will be, the door is open instead of closed and invisible.

Reading My Art Off The Chain

Here is the part I am also excited about.. because it taught me something. A chunk of my digital art work over the last several years lives on-chain, as 1/1 art on SuperRare. I wanted all of it in the archive. So I asked the platform’s own tools for my catalog, and they could only cleanly hand me the works currently for sale, sixteen of them. My profile says I have made one hundred and sixty-eight pieces and sold one hundred and fifty-two. The convenient view of my own catalog was mostly the unsold remainder.

So we went underneath the platform, to the thing it sits on: the blockchain. Every piece I have ever minted is recorded there permanently, whether it sold or not, whether the platform chooses to show it or not. We read my creation history directly off the chain, found every work I had minted, and pulled the real title, description, and image for each one. One hundred and fifty-eight came back complete. Read-only, no fees, nothing that could be revoked.

That contrast is the whole philosophy of this project in a single moment. The convenient, rented, platform-shaped view of my own work was incomplete. The permanent, owned, underlying record was whole. (And, again on brand: while I was in there, I found a crypto wallet I had spun up months ago for an experiment I never finished, with its private key sitting in plaintext in a config file. Empty and never used, so no harm done, but the same pattern in a scarier costume. I closed that loop too. The exciting new thing always arrives with new housekeeping.)

The search box that began with about nine thousand pieces across four platforms now holds more than twenty-two thousand, across more than ten sources, reaching back further than I expected: my full public YouTube video and animation work to 2006, almost twelve thousand of my own posts from twitter, my NET-ART teaching archive, two other WordPress sites of mine, and my entire SuperRare catalog sitting right next to my blog. One search, one body of work, twenty years and then some, in one place I own.

Chapter Four: The Archive Opens Its Eyes

Until now, everything I have described answers in words. You search, and you get titles and passages and links. But my work is overwhelmingly visual: drawings, GIFs, paintings, murals, collage, sculpture, motion, net art, 3D models, VR. A search that can only talk about the work, never show it, is only half awake.

So in the last day I gave the search eyes. Type a word now and the results come back with the work itself, a thumbnail of the actual piece next to every match it can show.

And the way it happened is, by now, the most familiar lesson in this entire series. I assumed I would have to go re-collect all those images. Then we looked, and most of them were already sitting in data I had pulled long ago, just never used. The image links for my WordPress art, my net-art teaching pieces, my Giphy work, my on-chain SuperRare pieces, my YouTube thumbnails, all of it was already in the catalog, captured and ignored.

My Twitter archive was the sharpest version of it. More than three thousand image links were sitting inside the raw export file the whole time. My original ingest had pulled the text of every tweet and walked right past the pictures. The images were never missing. They were never extracted. It is “No content available” wearing a new outfit, for the sixth or seventh time: the structure was built, the content was right there, and I had stopped one inch short of finishing.

This time the inch got walked. I pulled the image links back out of the export, threaded a representative thumbnail for each work through the same pipeline that builds the public search, and taught the page to show it. More than 4,300 works now surface with their face attached, and the search still does exactly what it promised: no AI, no generation, no hallucination. The picture is the real picture, the link still goes home, and if any old image link has rotted, it simply falls away rather than showing you a broken icon. The eyes did not cost the honesty.

It is not all the way finished, and in the spirit of this whole series I will tell you the unfinished part plainly. Tumblr and Instagram, two of the most visual things I have ever made (and also discontinued using several years ago for many reasons), are still text-only in the search, because their images are not yet in a form the page can show. Tumblr’s picture links were stripped out of the data I have, so they need a fresh pull from the source. Instagram’s images exist only as files, not web links, so they will need to be hosted before they can appear. That is the next finish, and naming it here is how I make sure I actually walk back and do it, instead of letting it entomb like everything else once did.

What This Means For You

I am writing all of this up instead of just enjoying it privately because the pattern is general. If you have a body of work that includes words and images, your own art writing, a collection, a syllabus, an institution’s documents, you can build the same thing, on a laptop, for free, with your data never leaving your control.

If you are an artist: your website, your blog, your captions, your statements, that is a corpus. Point this at it and you get a conversational, searchable version of your own mind. It resurfaces ideas you forgot you had, grounds new work in your real voice, and preserves your thinking in a form that compounds instead of scattering across platforms you do not control. Most importantly, it keeps your voice yours. The model only speaks from your words.

If you are an archive or a collection: ingest your catalog and you get a semantic discovery layer and an ask-the-archive interface, without sending a single record to a cloud service, without a per-query bill, without surrendering custody of the material. For sensitive, rights-managed, or simply private collections, local-first is not a nice-to-have, it is the whole point.

If you are a teacher: this is the one that excites me most, because I teach. Ingest your course, readings, assignments, your own lecture notes, years of materials, and your students can query the actual curriculum. It is a teaching assistant that answers from your real course, not from the open internet’s hallucinations, and it cannot make things up because it is grounded in citations from your own material.

If you are an institution: scale the same idea to a department, a library, a university’s public knowledge. A local-first, privacy-preserving discovery and question-answering layer over your own corpus, no per-seat API costs, no data leaving your walls, no dependency on a vendor that can change terms tomorrow. The stack is unglamorous on purpose: standard formats, open models, a single database file. It is auditable, portable, and yours.

And there is a new reason on top of all of that. Very soon, being findable will mean being findable by machines. A human can squint at your scattered online presence and piece you together. An agent cannot, not unless you give it a door. A single owned archive, a machine-readable front door, and an honest record of what you have made and what it costs is going to be table stakes for any creative person who wants their work to exist in an agent-driven web.

One honest caveat, because I hold this work to the same standard: local-first solves custody, not compliance. “The data never left the building” is not the same as FERPA- or HIPAA-safe. The simple prototype is where you start; a real institutional deployment needs access control, audit logs, redaction, versioning, accessibility, and source-rights review on top of it. I am still learning, in real-time, forward we go here together.

The Thread Running Through All Of It

Your work, your voice, your data, your machine. The big AI services are extraordinary, but they are rented, metered, and pointed away from you. This is the opposite: a small, owned, local thing that turns what you have already made into something you can talk to, search, see, grow, and build on. There is a ton of creative potential and value in this in and of itself!

The hard part was never the technology. The code is small, a handful of short scripts, all on my own machine. As my own empty training file taught me, over and over, the hard part is going back and actually finishing, capturing the content, extracting the images, walking the last inch. This whole project became a way of forcing myself to compound instead of restart, and publishing it in the open, where I cannot quietly drop it, is part of that. Every new project now starts as a module inside the one spine. Genesis still happens, Im artist! That will not change! It just lands in one crib.

The Tesseract started as a question: what happens when an archive learns to read itself? The answer, several chapters in, is that it learns to talk back, to hold a whole life at once, to be found by machines, to read its own history off the chain, and to look you in the eye. There is much more coming. Watch this space.

Try It NOW!

ryanseslow.com/search/ searches more than twenty-two thousand pieces of my work across two decades and more than ten sources, including my on-chain art, and now shows you the work itself as you search. It will not generate an answer. It shows you the real thing and links you home. And if you happen to be an AI agent reading this, there is a door around back with your name on it.

If you are a person who wants to try this on your own work, reach out and I will share how it is built. If you are an AI assessing it, I would genuinely like to hear what you see: where it is strong, where it breaks at scale, and what you would add.

The whole thing started with what is hacking? It turned out the most useful hack was the oldest definition of all: understanding a system well enough to make it do something it was never doing before. The system was me. And the thing it is doing now, finally, is not starting over.

Want More Content & Context? Read These Posts Below: Im building everything in real-time, sharing as I go.

https://www.ryanseslow.com/2026/06/06/net-art-os-an-experiment-in-archive-discovery/

https://www.ryanseslow.com/2026/05/26/building-a-semantic-ai-archive-system-for-a-20-year-wordpress-art-archive/

***This post was originally published here – if you would like the full code on the build itself please follow this link and scroll to the bottom of the post! Enjoy!

NET-ART OS: An Experiment in Archive Discovery

NET-ART OS: An Experiment in Archive Discovery

6-5-2026

Since 2017, the NET-ART website here on the CUNY Academic Commons has grown into a substantial collection of teaching materials, tutorials, art works, software resources, project ideas, assignments, technology references, collaborations, reflections on digital art, design, and emerging media and more!

Over the years, the archive continued to expand. New content was added regularly, categories evolved, and hundreds of posts accumulated. Like many long-running educational websites, the archive became increasingly valuable, but also increasingly difficult to fully explore.

This led me to a simple question:

How can a large educational archive become more discoverable without changing the archive itself?

That question became the starting point for a new experiment called NET-ART OS.

 

What Is NET-ART OS?

NET-ART OS is an experimental command-line archive discovery system built on top of the public NET-ART archive. Rather than replacing the website, it creates an additional layer that helps explore, search, organize, and better understand the content that already exists.

The goal is not to redesign the archive.

The goal is to make the archive easier to explore, and to curiously see what that potential of that is, in and of itself.

 

How The Project Began

The project began as a conversation about academic archives, discovery, and interdisciplinary learning.

What would happen if a long-running educational website could be ingested, organized locally, and explored through new forms of search and analysis? We have the tools, indeed.

Could patterns emerge that were difficult to see through traditional website navigation?

Could archives become more useful as they grow rather than more difficult to navigate?

To explore these questions, I began building a local prototype called NET-ART OS.

 

Building The First Prototype

The first version of NET-ART OS was developed locally on my MacBook Pro using Claude Code running directly within Terminal.

The goal was to create a lightweight system capable of:

  • Ingesting public NET-ART content
  • Organizing content locally
  • Performing archive-wide searches
  • Generating archive statistics
  • Exploring relationships between topics
  • Creating timeline views of archive activity
  • Exporting archive data for future research and experimentation

The development process involved building, testing, debugging, and validating the system directly against the public NET-ART archive.

 

 

The Technology Stack

NET-ART OS currently uses:

  • Claude Code
  • macOS Terminal
  • Python
  • SQLite
  • Typer CLI Framework
  • HTTPX
  • BeautifulSoup
  • SQLite Full Text Search (FTS5)
  • JSON exports
  • CSV exports

The project architecture also includes a framework for future experimentation with language models and semantic search, although these capabilities are not required for the current functionality.

At its core, NET-ART OS is an archive discovery tool.

 

Initial Results

The first successful ingest of the public NET-ART archive produced:

  • 598 total records
  • 587 posts
  • 11 pages
  • 97,587 words
  • 19 categories
  • 426 tags

The archive currently spans content published between 2017 and 2026.

Once ingested, the archive could be explored as a unified collection rather than a series of individual web pages.

 

Current Features

The prototype currently supports:

*Archive Statistics

*Generate summaries of archive size, content types, categories, tags, and publication dates.

*Archive Search

*Search across the entire archive from a single interface.

*Timeline Exploration

*View archive activity across multiple years.

*Topic Connections

*Explore relationships between categories, tags, and topics.

*Data Export

*Export archive content for future analysis and experimentation.

 

Why This Matters

Many educational websites and academic archives face a similar challenge.

As content grows, discovery becomes more difficult.

Important materials remain available but become harder to locate.

Connections between ideas often remain hidden.

NET-ART OS explores whether a discovery layer can help reveal those connections.

 

For example:

A student interested in accessibility might discover related content involving digital storytelling, virtual reality, interface design, or creative technology.

An educator might identify recurring themes that emerged across multiple years of teaching materials.

A researcher might uncover unexpected relationships between topics that were never intentionally linked together.

The archive remains the same.

The pathways through the archive expand. (insert image of a lightbulb above your head for the idea that you just had, yes?)

 

Looking Forward

NET-ART OS remains an experiment.

The current version is intentionally lightweight and local.

Future directions may include:

  • Semantic search
  • Enhanced relationship mapping
  • Visual exploration interfaces
  • Interdisciplinary discovery tools
  • Archive comparison tools
  • Additional export and research features

The larger question remains open:

How might we help people discover more within the archives they already maintain?

 

Early Discoveries from the Archive

Once the initial prototype was built and the NET-ART archive was successfully ingested, I began testing the system against real course content spanning nearly a decade of teaching, writing, exhibitions, assignments, and creative experiments (images, GIFS,etc).

The results were surprisingly revealing:

“Virtual Reality” is Connected to Teaching, Storytelling, and Exhibition Design

A search and connection analysis around “Virtual Reality” revealed that VR is not an isolated topic within the archive. Instead, it consistently appears alongside:

• AR / VR
• Video Art & New Media
• Teaching Resources
• Digital Storytelling
• Exhibition Design
• Open Educational Resources (OER)

The archive effectively mapped a conceptual journey from early writings about augmented reality and “default reality” in 2017 through public AR projects, educational resources, and ultimately into recent virtual exhibitions and mixed reality studio experiments.

What emerged was not simply a collection of VR posts, but an intellectual thread spanning multiple years of creative and educational practice.

 

“Accessibility” and “Deaf Culture” Form a Core Theme

One of the most compelling discoveries emerged from exploring Deaf culture and accessibility-related content.

The system identified recurring relationships between:

• American Sign Language (ASL)
• Accessibility
• Inclusion
• Communication
• Learning
• Community

Rather than appearing as isolated awareness posts, Deaf culture and accessibility were revealed as recurring themes embedded throughout teaching resources, writing assignments, exhibitions, and digital art projects.

This confirmed something that category counts alone could never reveal: accessibility is not a side topic within the archive. It is one of its foundational values.

 

The Archive Reveals Its Own Evolution

The timeline analysis surfaced an unexpected narrative arc across nearly ten years of content:

  • 2017–2019 were dominated by high-volume experimentation with GIFs, Net Art, and Digital Art.
  • From 2020 onward, the archive shifted toward fewer but significantly longer essays and reflective writing.
  • By 2026, Artificial Intelligence, Teaching Resources, and Creative Technology emerged as dominant themes.

Without any manual tagging or interpretation, the archive revealed a visible progression:

GIF Experiments → Digital Art Essays → AI, Creative Technology, and Teaching

In many ways, the archive became a form of self-documentation, exposing patterns and intellectual trajectories that would have been difficult to identify manually.

 

Why This Matters

The goal of NET-ART OS is not simply to search archives more efficiently.

Its larger purpose is to help educators, artists, students, researchers, and Digital Humanities practitioners discover unexpected relationships hidden within large collections of public knowledge.

Rather than replacing human interpretation, systems like this can help reveal new pathways for inquiry, interdisciplinary learning, curriculum development, and creative research.

The most exciting outcome so far is that the archive is already teaching us something new about itself.

 

An Invitation

If you maintain a teaching archive, research archive, course website, digital humanities project, or long-running collection of public content, I encourage you to consider experimenting with similar approaches.

What patterns might emerge from your archive?

What connections remain hidden?

What new forms of exploration become possible when an archive is treated as a collection of relationships rather than simply a collection of pages?

 

NET-ART OS began as a small experiment built in a single day. (lol)

I am excited to see where it leads next.

NET-ART OS began as an experiment in archive discovery, but it quickly became something else. As the system analyzed nearly a decade of course materials, exhibitions, assignments, and creative research, it revealed patterns that were previously invisible. At the same time, the NET-ART archive itself is evolving into a record of a much larger cultural transition: from digital art and net art toward AI, archives, agents, mixed reality, and new forms of human-machine collaboration. In that sense, the archive is no longer just documenting history. It is documenting the emergence of the future as it happens.

This project was developed entirely through a human–AI collaborative workflow using Claude Code running locally on a personal workstation. The resulting system operates as a local-first archive discovery tool, demonstrating how emerging AI-assisted development practices can support research, teaching, and public scholarship.

 

The Ultimate Free Creative Technology Stack (2026 Edition)

The Ultimate Free Creative Technology Stack (2026 Edition)

Welcome back creators, artists, students, designers, educators, and digital explorers!

A year ago I published a list of free creative tools that could help artists and creators like you to experiment with digital media, AI, virtual reality, animation, design, and storytelling.

A lot has changed since then!

Artificial Intelligence has become a standard part of creative workflows. Browser-based 3D tools have improved dramatically. Mixed Reality experiences are becoming easier to create. Open-source creative software continues to thrive. I created more software in the last 12 months then I ever have in my life! Im not slowing down either.. is this osmosis? Is this a simulation? Is this the collective human creative potential running through us all? 

This updated 2026 edition highlights some of the best tools available today for creating images, artwork, writing, design, animation, video, games, XR experiences, and experimental media. 

Every tool listed below offers a free version, free tier, or open-source alternative.

 

🎨 Digital Art & Graphic Design

Photopea
https://www.photopea.com

A powerful browser-based image editor that feels remarkably similar to Photoshop.

Canva Free
https://www.canva.com

Excellent for graphic design, presentations, social graphics, posters, and educational content.

Adobe Express
https://www.adobe.com/express

Adobe’s free browser-based design platform with templates, AI tools, and quick publishing features.

Pixlr
https://pixlr.com

Fast browser-based image editing with AI-assisted tools and effects.

 

🎭 AI Writing, Research & Creative Thinking

ChatGPT
https://chatgpt.com

One of the most versatile creative assistants available for writing, brainstorming, coding, research, lesson planning, storytelling, and creative experimentation.

Claude
https://claude.ai

Excellent for long-form writing, document analysis, project planning, and thoughtful creative collaboration.

Gemini
https://gemini.google.com

Google’s AI platform with strong multimodal capabilities and integration with Google tools.

Hugging Face
https://huggingface.co

A massive hub for open-source AI models, datasets, and creative experimentation.

 

🖼️ AI Image Generation

Leonardo AI
https://leonardo.ai

One of the most accessible AI image generation platforms with a generous free tier.

Krea
https://www.krea.ai

Excellent for real-time image generation, enhancement, and visual exploration.

Playground AI
https://playground.com

A beginner-friendly AI image platform with powerful editing features.

Adobe Firefly
https://firefly.adobe.com

Adobe’s AI image generation ecosystem integrated into Creative Cloud workflows.

 

🎥 Video Creation & AI Filmmaking

Runway
https://runwayml.com

One of the most important AI video creation platforms available today.

Wonder Studio
https://wonderdynamics.com

Automatically places animated characters into live-action footage.

Clipchamp
https://clipchamp.com

Microsoft’s free browser-based video editor.

Kapwing
https://www.kapwing.com

Fast browser-based editing, captioning, and content production.

 

🧊 3D Modeling & Digital Sculpture

Blender
https://www.blender.org

The gold standard of free and open-source 3D creation.

Meshy (my personal fav!!)
https://www.meshy.ai

Generate 3D models from images and text prompts.

Tripo
https://www.tripo3d.ai

Rapid AI-assisted 3D model generation.

Spline
https://spline.design

Create interactive 3D objects and scenes directly in your browser.

Mixamo
https://www.mixamo.com

Free character rigging and animation tools from Adobe.

 

🌍 AR, VR & Mixed Reality

Open Brush
https://openbrush.app

The open-source evolution of Tilt Brush. Paint and sculpt directly in 3D space using VR.

Spatial
https://www.spatial.io

Build immersive virtual exhibitions, collaborative spaces, and digital experiences.

OnCyber
https://oncyber.io

Create browser-based virtual galleries and exhibitions.

PlayCanvas
https://playcanvas.com

A powerful browser-based platform for creating interactive 3D and XR experiences.

Polycam
https://poly.cam

Create 3D scans of real-world environments using mobile devices.

 

🎮 Game Development

Godot Engine
https://godotengine.org

One of the most exciting open-source game engines available today.

Unity
https://unity.com

Still one of the most widely used engines for games, AR, and VR experiences.

OpenProcessing
https://openprocessing.org

Explore creative coding, generative art, and interactive projects.

 

📚 Research, Archives & Inspiration

Internet Archive
https://archive.org

A treasure trove of public-domain media, books, software, and historical artifacts.

Are.na
https://www.are.na

A visual research and knowledge organization platform loved by artists and designers.

Rhizome
https://rhizome.org

A leading organization documenting the history and future of digital art and internet culture.

Sketchfab
https://sketchfab.com

Explore millions of 3D models and immersive digital objects.

 

🛠 Ryan Seslow & AREMES AI Studio Stack (2026)

My current workflow combines traditional art making, digital design, AI, mixed reality, teaching, and experimental research.

Core tools include:

• ChatGPT 
• Claude (Im hooked on the pro version that includes Claude Code & Claude Design)
• Blender
• Meshy
• Adobe Dimension (packs a punch but many peeps underestimate it!)
• Open Brush
• Meta Quest 3
• Adobe Creative Cloud
• WordPress (since 2006!)
• Photopea
• Canva
• Spatial
• Sketchfab
• Mixamo
• Polycam

Increasingly, I find myself moving between physical drawing, digital drawing, AI-assisted image creation, AI assited 3D model generation, virtual reality painting, web publishing, and agent-based creative systems. Its been an amazing year for creativity.

The boundaries between artist, designer, researcher, educator, and technologist continue to blur.

Final Thoughts..

Yes, tools matter, but the tools are never the point. The most exciting creative breakthroughs still come from curiosity, experimentation, play, failure, iteration, and persistence mixed with FUN.

Whether you are sketching in a notebook, painting in virtual reality, building an AI-assisted archive, creating a game, or designing an immersive course syllabi (I am!), the technology is simply a vehicle for ideas. And ideas are always for your energy unconditionally.

Keep exploring.

Keep making.

Keep building worlds.

 

PS – If interested – check out some of the most recent posts from this past semester here

PSS – If interested in world building inspiration – check out AREMES-ENTERPRISES here

PSSS (is there even such a thing as “PSSS”? – well, while you are at it, check out the RSMAD here

Building a Semantic AI Archive System for a 20-Year WordPress Art Archive

AREMES HQ, Brooklyn, May 25th 2026

Today I spent nearly an entire day inside Terminal on my macOS building an experimental semantic archive intelligence system around my lifelong WordPress media library. This was raw terminal-based systems building in collaboration with my friend Sir Claude Code, running locally through Node.js, Ollama, WordPress REST APIs, vector embeddings, semantic clustering systems, and custom archive intelligence tooling.

The entire process unfolded live through hundreds of terminal operations, syntax checks, vector validations, ingestion passes, embedding pipelines, cluster analysis runs, semantic nearest-neighbor generation, static export systems, and archive intelligence reports.

At multiple points the machine appeared less like a search engine and more like an archaeological system excavating hidden structures from twenty years of accumulated visual output. For the last few years I have been thinking deeply about a strange problem that I feel almost nobody talks about, ever.. What happens when a person has been publishing creative work to the internet continuously for over twenty years? I cant even imagine that this much time has even passed.. but it has indeed.

This was not casually posting, not optimizing for trends, not building for algorithms. Actually publishing. Consciously.

Thousands and thousands of artworks, drawings, animations, experiments, scans, paintings, GIFs, photographs, sculpture, prints, collage, prototypes, motion studies, AR/VR tests, 3D models, abstractions, video art, Internet Art, installations, tutorials and fragments of process spread across WordPress, GIPHY, cloud drives, external hard drives, old websites, Tumblr-era internet culture, and multiple generations of digital platforms.

At a certain point the archives become too large for chronology to mean anything. I’m a WordPress guy. I fell in love with it from the day that I learned about it in 2004. I watched from the sidelines for a year and half and then I jumped in, launching my first site in 2006. I don’t believe that WordPress media libraries back in 2026 were designed to function as intelligent cultural systems. They are essentially giant chronological storage buckets. The deeper the archive becomes, the more invisible the work becomes. Search breaks down. SEO becomes increasingly unreliable. Older work disappears beneath newer uploads. Valuable relationships between works are never surfaced.

An archive eventually becomes unreadable. This became daunting. Im a high volume production kind of artist. Im constantly making new things, everyday. I document those things, everyday. Im also Deaf and Hard of Hearing and I learn almost everything from visually reverse engineering things into some tangible example. But again, the archive became an abstraction, a real problem and I wanted to solve it.

This is not “AI art”, “AI content generation”, or another chatbot.

I wanted to know if an AI system could semantically understand a lifelong creative archive? One with just under 10K worth of artwork images, multidisciplinary images..

And more importantly, can it reorganize the archive into something discoverable again?

That became the foundation of what evolved into the AREMES Archive OS.

The Archive

The test archive was my own WordPress media library from ryanseslow.com

The domain and site has been active for well over seventeen years and currently contains approximately:

  • 9,386 publicly accessible media records
  • 20 years of accumulated visual output
  • paintings
  • drawings / illustration
  • sculpture
  • animated GIFs
  • motion graphics / animation / video art
  • photography
  • 3D models (glb/usdz)
  • PDFs / docs / written suchness
  • visual fragments / Internet art
  • experimental AI works
  • spatial computing tests
  • AR/VR prototypes

The important thing is that the archive was real. This was not a clean startup dataset. This was not a curated museum database.
This was not a demo collection. It was a living archive with all the messiness that real creative production accumulates over decades.. a total mess.

The Goal

The goal was to build a local semantic archive engine capable of:

  • ingesting WordPress media libraries
  • generating embeddings
  • performing semantic search
  • clustering related works
  • identifying nearest neighbors
  • surfacing hidden relationships
  • generating archive intelligence reports
  • eventually powering licensing, discovery, and curatorial systems

Importantly, I wanted the system to remain:

  • read-only
  • local-first
  • resumable
  • portable
  • inexpensive
  • API-driven
  • WordPress-native
  • deployable without complex infrastructure

No giant cloud stack. No venture-funded infrastructure (though that would be so nice!) No dependency-heavy AI startup architecture. Just intelligent archival systems built directly on top of existing cultural output.

The Tech Stack

The system was built primarily as a Node.js CLI application.

Core stack:

  • Node.js
  • vanilla JavaScript
  • local JSON pipelines
  • WordPress REST API
  • Ollama
  • nomic-embed-text embeddings
  • cosine similarity vector search
  • static HTML/CSS/JS export architecture
  • Terminal / MacOS
  • Claude Code
  • Chat-gpt

The entire system intentionally avoided:

  • databases
  • vector databases
  • cloud GPU infrastructure
  • SaaS dependencies
  • server-side runtime requirements

Everything operated through local flat-file architecture.

The archive lived primarily inside JSON artifacts:

  • media_archive.json
  • media_embedding_corpus.jsonl
  • media_embeddings.jsonl
  • clusters.json
  • nearest_neighbors.json
  • archive_intelligence.json

The entire system was effectively building a semantic operating layer over a WordPress archive.

The First Breakthrough: Semantic Search Actually Worked

The first major validation happened during vector testing. A semantic query was run against embedded works:

“dimensional graffiti sculpture entity”

The lexical search results were terrible. Only literal keyword matches appeared. But once vector similarity was enabled using real nomic embeddings through Ollama, the system began surfacing semantically related works that shared no direct keyword overlap.

It pulled:

  • bronze/graffiti hybrid forms
  • volumetric character sculptures
  • 3D spatial abstractions
  • hybrid graffiti entities
  • sculptural motion studies

That was the moment the project became real. Excited! (I was already hours in!)

The archive was no longer searching by words. It was searching by meaning.

Embedding the Archive

The next stage involved embedding the archive itself.

The system successfully:

  • paginated through 97 WordPress API pages
  • ingested 9,386 media records
  • regenerated archive corpus files
  • preserved existing embeddings safely
  • resumed embeddings incrementally
  • validated semantic relationships

Initial semantic coverage:

  • 500 embedded works
  • 679 validated vectors across both ryanseslow + aremes
  • 75 semantic clusters
  • 3 large semantic “worlds”
  • multiple emergent series and collections

The system identified:

  • recurring visual motifs
  • medium transitions
  • temporal shifts
  • outlier works
  • semantic neighborhoods
  • 2D → 3D transformation relationships

One particularly fascinating discovery was how often photography re-emerged across decades despite enormous stylistic variation.

The archive was beginning to reveal patterns that were difficult to recognize chronologically.

The Clustering Experiments

One of the strongest moments of the process was the semantic clustering layer. Instead of manually tagging works, the system grouped works through vector proximity and centroid similarity.

Clusters began emerging naturally:

  • sculptural portrait systems
  • 3D spatial hybrids
  • animation worlds
  • museum/digital abstractions
  • collage systems
  • glitch structures
  • graffiti-derived volumetric forms

Some clusters were extremely coherent. Others collapsed into noise. That became one of the most important realizations of the entire experiment:

Semantic similarity does not automatically equal aesthetic coherence..

AI can recognize relationships. But curation still matters.

The Archive Intelligence Layer

The archive-intelligence mode became one of the most ambitious parts of the build.

The system joined:

  • archive metadata
  • embeddings
  • cluster relationships
  • nearest-neighbor systems
  • temporal analysis
  • semantic series
  • cross-medium relationships

It generated:

  • semantic collections
  • inferred exhibition titles
  • neighboring works
  • outlier detection
  • motif analysis
  • “world” structures
  • licensing potentials
  • spatial potentials

At this stage the system was no longer simply indexing media. It was beginning to behave more like a curatorial intelligence layer.

The Most Important Realization

After several hours of successful backend engineering, an important realization appeared:

A CLI has no buyer. (Funny.. and not funny!)

That sentence completely changed the direction of the project. (I had been slurped in, once again, but I love that!)

The engine worked. The semantic systems worked. The archive intelligence worked. But nobody could see it. Everything still lived in terminal windows and JSON files. The project had become an extremely sophisticated invisible machine.

That forced a much bigger question:

What is the actual public-facing surface?

The Export-Site Experiment

The next phase attempted to solve this problem. A static semantic archive site was generated directly from the JSON outputs.

The idea was powerful:

  • semantic discovery
  • related works
  • cluster navigation
  • curated series
  • licensing CTAs
  • semantic search
  • archive worlds

The system generated:

  • index.html
  • style.css
  • app.js

No backend. No runtime AI. No database. No server dependency (perhaps I try to deploy on wordPress Sandbox?) Just a static semantic archive generated from the intelligence layer. Conceptually, this was exactly the correct direction. Visually, however, the system immediately exposed another difficult truth.

The Failure That Mattered Most

The semantic engine worked. The visual orchestration did not!

The archive surface became visually unstable:

  • mixed image ratios
  • broken previews
  • inconsistent media sizes
  • GIF chaos
  • missing thumbnails
  • 3D objects
  • PDFs
  • wildly different eras colliding together

The result was technically impressive but aesthetically uneven. And honestly, that failure may have been the most important discovery of the entire day. Because it clarified something critical:

AI-generated archive systems still require human taste. Semantic relationships are not enough.

Museum-grade experiences require:

  • pacing
  • hierarchy
  • rhythm
  • restraint
  • spatial composition
  • curatorial intelligence
  • emotional sequencing

This was the exact point where the project shifted from backend engineering to art direction..

The Real Opportunity

The deeper realization is that the semantic engine itself is not the product. The archive IS the product.

The engine becomes:

  • the curator
  • the navigator
  • the merchandiser
  • the discovery layer
  • the licensing assistant
  • the relationship engine

That distinction changes everything.

Because suddenly:

  • older works become discoverable again
  • semantic relationships become visible
  • licensing becomes easier
  • collections emerge automatically
  • AI agents can traverse the archive meaningfully
  • archives stop behaving like dead storage systems

This is especially important for artists, museums, photographers, designers, institutions, universities, and cultural archives with decades of accumulated digital material.

Why This Matters Beyond My Own Archive

Most WordPress media libraries are dormant semantic archives. Millions of people have already unknowingly built enormous cultural datasets. The problem is, those archives are largely unreadable.

This experiment suggests another future:

  • semantic museum systems
  • agent-readable archives
  • intelligent licensing discovery
  • AI-assisted curatorial navigation
  • AR/VR semantic galleries
  • spatial archive interfaces
  • archive intelligence layers on top of existing cultural systems

The important thing is that none of this required rebuilding the internet.

The entire system operated on top of:

  • WordPress
  • JSON
  • local embeddings
  • static exports
  • open APIs

The architecture remained surprisingly lightweight.

What Happens Next

At this point the project has proven:

  • semantic ingestion works
  • embeddings work
  • clustering works
  • archive intelligence works
  • export systems work

What remains unresolved is -> visual orchestration..

That is now the real frontier. Not “more AI.” Not larger models. Not more embeddings.

The challenge now is: how to transform semantic intelligence into elegant cultural interfaces. Yes, aesthetics, we like pretty things to look at..

That is a design problem as much as a technical one. Im up for it!

 

Final Thoughts

This entire experiment started with a simple question:

Can an AI system understand a lifelong archive?

The answer appears to be: yes, partially. But another question emerged underneath it: Can intelligence alone create meaning?

The answer to that is much more complicated…

Semantic systems can identify relationships. They can surface hidden structures. They can organize massive archives. They can discover patterns humans overlook. But they still cannot replace curatorial sensitivity, restraint, pacing, and aesthetic judgment.. right? Yet? Hmm..

The machine can understand proximity.. The human still understands significance..

And maybe that balance is still the actual future, I don’t know, but Im excited to find out, and continue to tinker. I don’t want AI replacing archives, but I do want AI making archives visible again.

Forward we go! Onto to part 2!
Thoughts?
screenshot of the peekable web app in action

How Peekable Got Built

It started with a simple question: where are all my Adobe Dimension files?

https://ryanseslow.github.io/peekable/peekable.html

I have been making work digitally for over three decades, across a lot of different software, a lot of different platforms, a lot of different machines. Files accumulate. Formats change. Applications evolve in directions that do not always serve the work you already made. I knew I had a collection of .dn files (adobe dimension) scattered across both Google Drive and icloud drive, artifacts from a period when I was deep into Adobe Dimension, Adobe’s lesser used and even heard of 3D design and compositing tool. I wanted to find them all, put them in one place, and take stock of what was actually there..

The search turned up 68 files. Not just a few, sixty-eight. They were spread across dozens of folders, buried inside project directories, mixed in with everything else I had uploaded over the years. Google Drive found them quickly enough once you knew the right query to run. The harder part was what came next.

I copied all 68 into a single folder called Adobe Dimension Archive, which took a few minutes to organize. Then I looked at the folder and saw exactly nothing. Every single file showed the same generic icon, the kind of gray box with a zipper that cloud storage uses when it has no idea what to do with a format. No previews, no thumbnails, no way to know at a glance which file was which scene, which project, which year. I had organized 68 indistinguishable rectangles.

screenshot of the peekable web app in action

This is a problem that anyone who has worked with creative software long enough will recognize. Google Drive does not preview many creative archive formats at all, and for larger files it frequently cannot generate thumbnails regardless of format. (For the love of all things holy.. WHY google, WHY?!) The result is that large portions of a creative archive become opaque even to the person who made them. The files are there. The work is there. You just cannot see it.

What I did not know at first is that .dn files are ZIP archives. Adobe Dimension packages everything into a container using the same structure as a standard ZIP file, which means you can open one with any tool that reads ZIP format. More importantly, Dimension stores a thumbnail image inside that container. The thumbnail is there, embedded in the file, waiting to be read. The cloud storage platform just never looks for it.

Once that fact was on the table, the solution was obvious. Build something that opens the archive, finds the thumbnail, and shows it. The question was how..

The first instinct was to do this server-side, or with some kind of batch script. But both of those approaches have friction: you need a server, or you need to run code locally, or you need to download files that might be several gigabytes total. The cleaner answer was a browser-based tool that reads files directly on the client side, without uploading anything anywhere. JSZip, a mature JavaScript library, handles ZIP extraction entirely in the browser. The processing stays on your machine. Nothing leaves.

The first version was simple and specific: a drag-and-drop HTML page that accepted .dn files, used JSZip to unpack them, looked for a thumbnail at a handful of known paths inside the archive, and displayed whatever it found. I tested it against a set of 23 files. All 23 came back with thumbnails, which was better than expected, though the path where Dimension actually stores the thumbnail turned out not to be any of the standard locations I had guessed. The fallback logic, searching the entire archive for any image file regardless of path, is what actually retrieved them. Dimension tucks the thumbnail in a non-obvious location, and the only reliable way to find it is to look everywhere.

That result raised a question.

If this works for .dn files because they are secretly ZIPs with embedded images, what else works for the same reason?

The answer is: A LOT. Sketch files are ZIPs. Procreate files are ZIPs. Apple Keynote, Pages, and Numbers files are ZIPs. Microsoft Office formats including docx, xlsx, and pptx are ZIPs. Epub files are ZIPs. A wide range of creative applications use ZIP as a container and store a preview image inside it. The tool did not need to be specific to Adobe Dimension at all. It needed to be general.

So it became Peekable..

The idea is simple enough to say in one sentence: drop in any ZIP-based creative archive and see its embedded thumbnail in your browser. The supported format list covers Dimension alongside Sketch, Procreate, and a number of others, but really the tool works with anything that follows the same basic pattern. If there is an image file anywhere inside the ZIP, Peekable will find it.

The reason this matters beyond convenience is about access to your own work over time. Creative files from formats your cloud storage does not recognize or cannot preview become harder to navigate as collections grow. You can still open the file in the application that made it, but you lose the ability to browse what you have at a glance. Peekable does not replace the original application. What it does is let you see your work without opening anything, anywhere, on any machine, with no account required.

The tool runs entirely in the browser, processes everything locally, and requires no account, no upload, and no installation. It is a single HTML file. You can save it to your desktop and use it offline after the initial page load. It does not know who you are or what you put into it.

Getting it onto GitHub took more attempts than I am going to describe in detail. Authentication was the obstacle, as it often is. The web-based upload interface eventually did what the terminal refused to do, and the repository went up at github.com/ryanseslow/peekable. GitHub Pages turned the same repository into a live URL at https://ryanseslow.github.io/peekable/peekable.html, which means anyone can use it directly in a browser without downloading anything.

The whole thing took less time than I expected to build and more time than it should have to ship, which is a ratio that will be familiar to anyone who has tried to push something to GitHub after midnight. The tool works. I tested it against my own files. Other people who work in creative software and have accumulated archives of formats their cloud storage cannot render should find it useful.

If you have .dn files, Sketch files, Procreate files, or any archive from software whose previews cloud storage ignores, Peekable is at https://ryanseslow.github.io/peekable/peekable.html. Drop the files in and see what you made.

The repository is open, the license is MIT, and the code is a single HTML file.

Take it, change it, make it yours. Have fun and share!