00 โ€” Overview

The Archive Pipeline

Our methodology spans six core phases: discovery, crawling, rendering, verification, storage, and access. Each phase employs specialized tools and quality controls.

Discovery
Seed Lists
โ†’
Crawling
WARC Capture
โ†’
Rendering
Authenticๅ†็Žฐ
โ†’
Verification
Hash Chains
โ†’
Archive
Redundant Store
๐Ÿ“Œ Guiding Principle

Every archived page is captured as a complete, immutable artifact โ€” including its original HTML source, associated stylesheets, embedded images, JavaScript, server response headers, and network timing data. Nothing is sanitized, nothing is modernized.

4.2M
Pages Archived
99.7%
Capture Success Rate
6
Redundant Replicas
30
Years of Coverage
01 โ€” Discovery

Seed Identification & Curation

Finding the right URLs to archive โ€” the foundation of a quality collection.

Seed List Curation

We begin with a manually curated seed list of over 12,000 URLs spanning the golden age of the web (1990โ€“2000). Our curators โ€” web historians, digital archaeologists, and longtime internet veterans โ€” identify sites across several critical categories:

๐Ÿ  Personal Homepages

GeoCities, Angelfire, Tripod, and free-hosting sites that defined personal web publishing.

๐Ÿข Early Commercial Sites

Pioneering businesses, dot-com era startups, and pre-social-media brand presences.

๐ŸŽฎ Niche Communities

Fan sites, web rings, hobby forums, and subcultural spaces from the pre-social-media era.

๐ŸŽ“ Academic & Institutional

University pages, government portals, and library sites from the early WWW era.

๐Ÿ’ฌ BBS & Usenet

Archive of Bulletin Board System mirrors and Usenet newsgroup archives linked from early web pages.

๐Ÿ”— Web Rings & Directories

WebRing gateways, Open Directory Project (DMOZ) links, and other directory services.

Discovery Tools & Sources

We supplement curated seeds with automated discovery across multiple archival sources:

discovery โ€” seed ingestion pipeline
# Phase 1: Ingest primary seed lists archive$ seed-manager --ingest /seeds/1990s-geocities.csv [โœ“] Loaded 4,201 GeoCities URLs archive$ seed-manager --ingest /seeds/angelfire-directories.tar.gz [โœ“] Loaded 2,847 Angelfire URLs archive$ seed-manager --cross-reference --sources warc-index,dmoz-mirror,usenet-archives [โœ“] Cross-referenced against 3 external sources [โœ“] Discovered 5,412 additional URLs via link graphs [โœ“] Total seed pool: 12,460 unique URLs
02 โ€” Crawling

Authentic Capture & WARC Generation

Capturing web content as it existed โ€” using vintage browsers and modern archival standards.

Browser-Based Capture

Unlike conventional crawlers that fetch only HTML, our capture engine uses a headless vintage browser rendered through a specialized Chromium-based engine configured to emulate Netscape Navigator 4.x and Internet Explorer 5.x behavior. This ensures:

WARC File Generation

Every capture produces a WARC (Web Archive File Format) file โ€” the ISO-standard format for web archiving (ISO 28500:2015). Each WARC contains:

WARC Record Type Purpose
responseHTTP response from the server (HTML, CSS, images, etc.)
requestThe exact HTTP request sent by the crawler
revisitRecord referencing an earlier capture of the same resource
conversionScreenshot render of the page as visually rendered
metadataContextual metadata (capture timestamp, crawler version, IP geolocation)
capture โ€” WARC capture pipeline
# Launch capture with vintage browser emulation archive$ harvest-droid \ --engine chromium-netscape-emu-v4.8 \ --format warc-1.1 \ --capture full-resource-tree \ --render screenshot@800x600 \ --headers capture-all \ --cookies capture-all \ --output /warc/1997/geocities/user~page001.warc.gz \ --digest sha-256,sha-1 [1/12,460] Capturing: http://geocities.com/SunsetStrip/Club/6819/ [โœ“] HTML: 14.2KB | CSS: 3.1KB | Images: 147 files | JS: 8 files [โœ“] WARC: 2.1MB (compressed) | SHA-256: a3f2...e9d1 [โœ“] Screenshot rendered @ 800x600 | Browser: Netscape 4.8 [โœ“] Server response: 200 OK | Content-Type: text/html [โœ“] Frame count: 3 | Plugin references: 2 (Flash 3, Java applet)
โš ๏ธ Challenge: Broken Links & Dead Servers

Over 60% of seed URLs are no longer live. Our crawler gracefully handles 404s, DNS failures, and TLS mismatches by falling back to previously cached snapshots from partner archives (Internet Archive, UK Web Archive) and generating detailed failure reports for curator review.

03 โ€” Rendering

Authentic Visual Reconstruction

Reproducing pages exactly as they appeared on original hardware and browsers.

Multi-Browser Rendering Engine

We render every captured page across a matrix of vintage browser profiles to ensure faithful visual reconstruction:

๐ŸŒ Netscape Navigator 3.0

The default browser of the mid-90s. Captures table layouts, tags, and Marquee elements authentically.

๐ŸชŸ Internet Explorer 4.0

Covers ActiveX dependencies, conditional CSS hacks, and IE-specific rendering behaviors.

๐ŸŽ Opera 3.6

Provides an alternative rendering baseline for cross-browser comparison and completeness.

๐Ÿ–ฅ๏ธ Mosaic 2.7

One of the earliest browsers. Used for pages designed for maximum compatibility.

Screenshot Pipeline

Each page is rendered to a 1200ร—900 PNG screenshot at 800ร—600 logical resolution with authentic pixel ratios. Screenshots are stored alongside the WARC files:

render โ€” screenshot generation
archive$ render-engine \ --warc /warc/1997/geocities/page001.warc.gz \ --profile netscape-3.0@win95 \ --resolution 800x600 \ --output-size 1200x900 \ --dpi 120 \ --font-fallback arial,helvetica,tmsr-ms-web \ --plugins flash-3,java-1.1,quicktime-3 \ --format png-24 \ --output /renders/1997/geocities/page001_netscape3.png [โœ“] Rendering to 12 browser profiles... [โœ“] Plugin resolution: 2/2 plugins loaded [โœ“] JavaScript execution: complete (with era-appropriate polyfills) [โœ“] Screenshot: 8.3MB PNG | SHA-256: b7e4...a1c9
04 โ€” Verification

Integrity Verification & Quality Assurance

Ensuring every capture is complete, authentic, and cryptographically verifiable.

Content Completeness Checks

After each capture, our QA pipeline runs automated checks to verify completeness:

Check Method Threshold
Resource completenessCompare HTML src/href tags against captured resourcesโ‰ฅ95% matched
Image integritySHA-256 hash verification of all .gif, .jpg, .png files100% match
JavaScript validityStatic analysis of JS for syntax errors in captured files0 errors
CSS completenessVerify all linked stylesheets are present and non-empty100% present
DOM structureValidate HTML structure against expected doctypeValid HTML 3.2/4.0
Screenshot fidelityPixel-diff against reference render of same page from IAโ‰ค3% difference
HTTP header captureVerify server response headers are fully captured in WARC100% complete

Cryptographic Hash Chains

Every archived resource receives dual cryptographic hashes. These form an immutable chain linking the original capture to the archived state:

verify โ€” integrity chain construction
# Generate dual hashes for integrity verification archive$ hash-chain --warc page001.warc.gz --algorithms sha-256,sha-1 resource: header.html sha-256: a3f2e8c1d4b7...e9d1f6a2 sha-1: 8d4a1b3c...f2e9d1 status: VERIFIED โœ“ resource: images/banner.gif sha-256: b7e4f2a9c3d1...a1c9e8f3 sha-1: 2c9f4a1d...b3e7f2 status: VERIFIED โœ“ resource: styles/main.css sha-256: c1d3e5a7b9f2...d4f6a8c0 sha-1: 5e8a2c4f...d1b3f7e9 status: VERIFIED โœ“ [โœ“] Chain complete: 147 resources | 100% verified [โœ“] WARC digest: 0f1a2b3c4d5e6f7a8b9c0d1e2f3a4b5c
๐Ÿ” Preservation Standard Compliance

Our verification pipeline is aligned with NASA's STP-IP (Standard for Technical Information Preservation) and ISO 28500:2015 (WARC format) standards. Each archive unit includes a manifest file compliant with OAIS (Open Archival Information System) reference model (ISO 14721).

05 โ€” Storage

Redundant, Distributed Archive Storage

Multi-replica storage across geographically distributed data centers with checksum-based integrity monitoring.

Storage Architecture

Every WARC file is stored on 6 independent replicas across 3 geographically dispersed data centers:

Primary Data Center (US-East)
WARC Store (RAID-6)
Screenshot Store
Index Database
Manifest Store
Replica Data Center (EU-West)
WARC Store (RAID-6)
Screenshot Store
Index Database
Manifest Store
Replica Data Center (APAC)
WARC Store (RAID-6)
Screenshot Store
Index Database
Manifest Store
Cold Storage (LTO-9 Tape)
Offsite WARC Tapes (x3)
Disaster Recovery Vault

Integrity Monitoring

Monthly checksum verification of every stored WARC file against its recorded digest:

verify โ€” monthly integrity audit
archive$ integrity-audit \ --scan /archive/warc/1990-1999/ \ --algorithm sha-256 \ --replicas 6 \ --report /reports/integrity/monthly_2024_12.json Scanning 4,200,000 WARC files across 6 replicas... [โœ“] Primary (US-East): 4,200,000/4,200,000 verified [โœ“] Replica (EU-West): 4,200,000/4,200,000 verified [โœ“] Replica (APAC): 4,200,000/4,200,000 verified [โœ“] Tape (Offsite): 4,200,000/4,200,000 verified [โœ“] All replicas consistent โ€” no bit rot detected [โœ“] Report generated: integrity_2024_12.json
06 โ€” Access

Search, Browsing & API Access

Making the archive discoverable and usable through multiple access channels.

Search Index Architecture

We maintain a full-text search index built on inverted indices of all captured content, with era-specific filtering:

Index Field Indexed Content Example Query
page_textFull HTML text content (stripped of tags)query: "welcome to my homepage"
capture_dateWARC timestamp of capturedate:[1995-01-01 TO 1999-12-31]
domainOriginal domain namedomain:geocities.com
technologyDetected tech (JavaScript, Flash, frames, tables)tech:frames AND tech:flash
content_typeHTTP content typetype:text/html
hosting_platformGeoCities, Angelfire, Tripod, personal server, etc.hosting:angelfire
geo_cities_sectionGeoCities Neighborhood (SunsetStrip, etc.)neighborhood:sunsetstrip
file_sizeTotal WARC file sizesize:[1KB TO 50KB]

Access Channels

๐ŸŒ Web Portal

Full-featured search interface with era filters, visual browsing, and side-by-side comparison of captures.

๐Ÿ”Œ REST API

Programmatic access for researchers. Query by date range, technology, domain, or content. Returns WARC URLs or direct file downloads.

๐Ÿ“ก Memento URI-R

Compatible with the Memento framework (RFC 7089), enabling integration with other archival systems and time travel queries.

๐Ÿ“ฆ Bulk Download

Academic and institutional partners can request bulk WARC downloads for offline analysis and preservation.

api โ€” example search query
# Search for Geocities pages from 1997 with Flash content archive$ curl "https://api.1990webarchive.org/v1/search" \ -d '{' "query": "welcome to my homepage", "filters": { "date_range": ["1997-01-01", "1997-12-31"], "domain": "geocities.com", "technology": ["flash", "frames"] }, "format": "warc-manifest", "limit": 100 '}' { "results": 47, "query_time_ms": 23, "warc_files": [ {"url": "http://geocities.com/SunsetStrip/Club/6819/", "warc_path": "/warc/1997/geocities/page001.warc.gz", "capture_date": "1997-03-15T14:22:01Z", "size": "2.1MB", "sha256": "a3f2e8c1d4b7...e9d1f6a2" }, ... ] }
07 โ€” Technology Stack

Tools & Infrastructure

The proprietary and open-source tools that power our archive pipeline.

๐Ÿ•ท๏ธ
Harvest-Droid
Custom Chromium-based crawler with vintage browser emulation
๐Ÿ“ฆ
WARC-Kit
Proprietary WARC generation and validation toolkit
๐Ÿ–ผ๏ธ
Render-Emu
Multi-browser rendering engine for screenshot generation
๐Ÿ”
Index-Engine
Full-text search with era-specific filtering
๐Ÿ—„๏ธ
Stor-Cluster
Distributed storage across 3 geographies + LTO tape
โœ…
Verify-Pipeline
Automated integrity verification and checksum monitoring
08 โ€” Ethics & Rights

Ethical Considerations & Rights Management

Preserving history while respecting the creators and the law.

Rights & Takedown Process

We operate under a respect-first policy. All content is archived with the understanding that copyright and privacy remain in effect:

  • All personal homepages are archived with explicit permission where contact information is available
  • DMCA takedown requests are honored within 24 hours of receipt โ€” content is immediately removed from search indexes and access endpoints
  • Content from deceased individuals is archived only with next-of-kin consent
  • Personal information (addresses, phone numbers) is redacted in publicly accessible versions while preserved in WARC for research use only
  • Academic researchers receive access to redacted-only datasets unless explicitly granted full access by rights holders
  • Regular outreach campaigns remind content creators of their ability to opt out at any time
โœ… Our Record

Since 1994, we have honored 100% of all takedown requests with a median response time of 4.2 hours. We have never been found non-compliant with DMCA, GDPR, or CCPA requirements. Our privacy board reviews every takedown request independently.

09 โ€” Summary

The 1990 Web Archive Methodology โ€” at a Glance

A summary of our end-to-end preservation approach.

๐Ÿ“‹ Methodology Summary

Our methodology is built on six pillars: (1) Curated discovery ensuring comprehensive coverage of the early web, (2) Browser-emulated crawling that captures content authentically, (3) Multi-browser rendering for visual fidelity, (4) Cryptographic verification for integrity assurance, (5) Redundant distributed storage for long-term preservation, and (6) Multiple access channels for public and academic use. Every step complies with international archival standards (ISO 28500, OAIS/ISO 14721, Memento/RFC 7089) and ethical best practices for digital preservation.

6
Core Phases
4.2M
Pages Preserved
100%
Takedown Compliance
3x
Standards Aligned
"}