What is ZineCore2?
ZineCore2 is a metadata standard specifically designed for describing zines, their creators, physical holdings, and the institutions that collect them. Think of it as a common language that libraries, archives, distros, and digital platforms can use to share information about zines.
The Problem
Zines exist in a unique space between traditional publishing and ephemeral art. They're often:
- Self-published with nontraditional identifiers (no ISBN, ISSN, or publisher codes)
- Created by pseudonymous or anonymous authors requiring privacy-aware metadata
- Published in small runs making each physical copy valuable
- Distributed informally through distros, trades, and personal networks
- Culturally significant but underrepresented in library systems
Traditional cataloging standards like MARC were designed for commercial publishing and don't handle zine-specific needs well. ZineCore2 fills this gap by providing a modern, flexible metadata framework built specifically for zines while remaining compatible with library standards.
The Solution
ZineCore2 provides:
- Four specialized profiles — ZineCore2 (zines), AgentCore2 (creators), HoldingCore2 (copies), RepoCore2 (repositories)
- Controlled vocabularies — Curated terms for genres, subjects, rights, and more
- Privacy-aware design — Support for pseudonymous and anonymous creators
- Modern formats — JSON, JSON-LD, JSON Schema for web-native applications
- Library compatibility — Built on Dublin Core, compatible with MARC, BIBFRAME, Schema.org
- Multiple implementations — Use the API, self-host, or build your own
Who is ZineCore2 For?
Zinesters & Zine Makers
Catalog your own work with proper metadata for discovery and preservation. Document your creative practice with structured information that can travel with your zines.
Use case: A zinester maintains a catalog of their publications, tracking print runs, distribution channels, and archived copies.
Libraries & Archives
Catalog zine collections using modern metadata standards. Integrate zine records into your ILS/OPAC alongside traditional materials.
Use case: A university library catalogs their zine collection using ZineCore2, enabling discovery through their existing catalog while preserving zine-specific details like pseudonymous creators and access restrictions.
Distros & Zine Shops
Manage inventory with structured metadata. Track holdings, circulation, and availability across multiple locations.
Use case: A feminist distro uses ZineCore2 to manage their catalog, tracking which zines are in stock, which are available for duplication, and which creators prefer to remain anonymous.
Digital Archives & Platforms
Build discovery interfaces with rich metadata. Enable searching by genre, subject, creator, time period, and more.
Use case: A digital zine archive provides a searchable database of zine metadata, linking to digitized content while respecting creator privacy and rights.
Researchers & Scholars
Discover zine collections across institutions using interoperable metadata. Build datasets for zine studies research.
Use case: A researcher queries multiple zine repositories using ZineCore2 metadata to identify all zines about reproductive justice published between 2000-2020.
Key Features
1. Metadata Standards
ZineCore2 uses Dublin Core, the same foundation as major digital libraries worldwide. This ensures your zine metadata can integrate with:
- Library catalogs (via MARC/MARCXML export)
- Digital repositories (DSpace, Fedora, Islandora)
- Semantic web applications (via JSON-LD)
- Schema.org for web discoverability
2. Controlled Vocabularies
Eight curated vocabularies ensure consistency:
- Subjects (~150-300 terms) — activism, anarchism, feminism, LGBTQ+, DIY culture, etc.
- Genres (18+ types) — personal zine, political zine, art zine, poetry zine, comix, etc.
- Rights — Creative Commons, public domain, all rights reserved
- Agent Roles — creator, editor, illustrator, publisher, distributor
- Agent Kinds — person, collective, organization
- Repository Kinds — library, archive, distro, personal collection
- Holding Access — reading room only, loanable, reference, restricted
- Holding Distro — can duplicate, can digitize, rights holder approval required
3. Privacy & Anonymity
Many zinesters use pseudonyms or publish anonymously. ZineCore2 supports:
- Pseudonymous creators without requiring legal names
- Anonymous authorship
- Privacy flags for sensitive information
- Display names vs. internal identifiers
4. Relationships Between Profiles
The four profiles work together as an interconnected system:
ZineCore2 (the zine)
├─ creator → AgentCore2 (person/collective/org)
└─ described_by → HoldingCore2 (physical copy)
└─ held_by → RepoCore2 (library/distro/archive)
This enables questions like:
- "What zines did this collective create?"
- "Which libraries hold copies of this zine?"
- "What's in this distro's collection?"
What You Can Do With ZineCore2
Option 1: Use the Reference Implementation API
The easiest way to get started. The ZineCore2 reference implementation provides a hosted REST API:
- Create, read, update, delete zine records
- Browse by subject, genre, creator, date
- Export in multiple formats (JSON, JSON-LD, CSV, MARCXML)
- Public read access, authentication for writes
Best for: Small collections, quick prototypes, testing
Option 2: Self-Host the Django Server
Download and run the open-source reference implementation:
- Full control over your data
- Customize for your needs
- Production-ready Django REST Framework API
- PostgreSQL backend
Best for: Institutions, distros, archives with technical capacity
Option 3: Build Your Own Implementation
Use the specifications (JSON Schema, JSON-LD contexts, DC TAP tables) to build your own system in any language:
- JavaScript/TypeScript with TypeScript types
- Python with jsonschema validation
- Any language with JSON support
Best for: Custom integrations, existing systems, specialized requirements
Option 4: Use Just the Vocabularies
Don't need the full profiles? Just use ZineCore2's controlled vocabularies for tagging and categorization.
Best for: Simple tagging systems, content management, informal cataloging
Real-World Examples
Example 1: Riot Grrrl Collection
A university library catalogs their Riot Grrrl zine collection:
- ZineCore2 describes each zine (title, date, subjects: feminism + punk + DIY)
- AgentCore2 documents pseudonymous creators
- HoldingCore2 tracks physical copies across special collections and circulating stacks
- RepoCore2 identifies the university library with MARC org code
Result: Students can discover zines by subject, creator, or genre. Researchers can query metadata across multiple institutions.
Example 2: Queer Distro
A queer distro manages their inventory:
- Tracks which zines are in stock
- Notes which can be photocopied vs. which require creator permission
- Documents creators who prefer to remain anonymous
- Exports catalog as JSON for their website
Result: The distro's website shows availability in real-time. Creators' privacy preferences are respected.
Example 3: Digital Archive
A digital zine archive builds a discovery platform:
- Metadata in ZineCore2 format
- Full-text search across subjects and genres
- Browse by time period, location, or creator
- Exports to Schema.org for Google Scholar indexing
Result: Researchers worldwide can discover zines. The archive appears in academic search engines.
Next Steps
Now that you understand what ZineCore2 is, here's where to go next:
- Choosing a Profile — Determine which of the four profiles you need
- Implementation Options — Decide how to implement ZineCore2
- Specification — Dive into the technical details
- Interactive Tools — Try the validator and JSON-LD playground