E-bharatisampat Atlas
← Back to tree

About

ebharatisampat.in ("ई-भारतीसम्पत्") is a digital Sanskrit library by Samskrita Bharati, started in 2017.

This unofficial “atlas” interface — not affiliated in any way — offers a better way to explore the contents of this vast and underestimated collection. It is an "atlas" in the sense that it not only charts the navigable waters — with more transparent browsing by category and author — but also plumbs their depths — with visibility into sizes, counts, and changes over time that the source collection doesn't surface on its own. It is not a mirror, as it hosts no text of its own; instead, every entry links back to ebharatisampat.in for the actual content.

For more perspective on this and sibling Atlas projects, see Sāgarasaṅgama.

code: on GitHub

Practical Intro to E-bharatisampat Structure

Two Overlapping Collections: Searchable Texts and PDFs

Ebharatisampat.in holds 11,066 distinct items as indicated by "serial" number. These items contain either searchable text ("Unicode Book"), a PDF ("E-Book"), or both.

Total Texts Total PDFs 5,557 9,421 1,645 text only 3,912 both 5,509 pdf only example: three distinct Manusmṛtis 2503 6384 6392

Metadata

Each item has a metadata page (URL readSearch.php), e.g., this कादम्बरी. These pages are the most basic representation of an item, containing all available metadata, plus some number of content links depending on available data type: "Read Unicode" or "Read Chapters" if it has searchable text (see Structured vs. Unstructured Texts below for the distinction), and/or "Read E-Book" if it has a PDF.

Items differ in which metadata fields they use:

  • Metadata field coverage
    field items coverage
    title11,066100.0%
    domain11,066100.0%
    language11,064100.0%
    sub_domain11,061100.0%
    pages9,40285.0%
    publish_year7,73969.9%
    author7,17864.9%
    printer6,99363.2%
    publisher6,26056.6%
    editor5,16446.7%
    books_contributor3,67933.2%
    primary_commentator2,38421.5%
    commentary_name1,68315.2%
    translator7867.1%
    second_editor5334.8%
    secondary_commentator4343.9%
    tertiary_commentator1101.0%

Structured vs. Unstructured Texts

Of the searchable e-texts, some (666) are furnished with chapter-by-chapter structure. On the source website, these are accessed via "Read Chapters" links, whose special interface (URL read_chapter.php) presents text with a clickable table of contents and unpaginated text (i.e., there's no "load more" behavior).

By contrast, the vast majority of searchable e-texts (4,891) are accessed via "Read Unicode" links, whose interface (URL readbook3.php) presents text that is the opposite: unstructured but paginated (sometimes requiring hundreds or thousands of additional loads to reach the end).

"Read Unicode"-type texts can be downloaded in full, as either plain text or a Word doc, if logged in as a registered user. "Read Chapters"-type texts can be downloaded in full even if not logged in.

Multiple Editions of One Work

The collection is a library of printed editions, not a canon of works, so repeated titles are expected rather than duplicates to be merged. There are some thirty काव्यप्रकाशः items here, twenty-five of हितोपदेशः, and so on.

Categories and Authors

With very few exceptions, every item is classified with both a top-level category (also "domain") and a subcategory ("subdomain"). Each subcategory belongs under exactly one category. That means that categories form a clear tree structure, and each item sits in exactly one place in that tree.

Approximately 65% of items have a non-empty author. This naturally divides by genre: Only 14% of items in उपनिषदः have an author. By contrast, 82% of साहित्यम् has author info.

Neither category nor author info is consistent. For example, the multiple versions of कादम्बरी, the prose romance by बाण and his son भूषणभट्ट, are spread across गद्यम् (prose — arguably most correct), पद्यम् (verse), and कथा (story). Similarly, the author name is recorded as "बाणः", "बाणभट्टः," and "बाणभट्टः भूषणभट्टः."

Search vs. Browse

The ebharatisampat.in website provides two ways to navigate: 1) a search bar, and 2) browsing with filters.

Search accepts one of six metadata fields: BookName, BookId, Author, Publisher, Printer, or Contributor. Results are displayed as thumbnail images along with a subset of metadata fields: serial number, title, (no author), category, and sub-category. The result list is flat and paginated, with a fixed ten items per page and no way to filter. The additional full-text search feature (Textual Search) is not discussed further here.

Note that metadata search uses substring matching, and it is apparently more forgiving if you use Devanāgarī. For example, searching for title "kādambarī" or "kadambari" (case-insensitive) turns up 13 items, while searching for "कादम्बरी" turns up 15, including one with the alternate spelling "Kadhambari". Similarly, "bāṇa" or "bana" gets 22 results, while "बाण" gets 25.

Browsing is accessed by clicking the large "E-Books" or "Unicode Books" icons on the main page, or, on small screens, by the burger-menu nav links "Books Categories" > "E-Books" (PDF) and "Proofread Books" (text).

Browsing results display as thumbnail images and titles only, but then users have the options to deselect checkboxes and thereby filter away unwanted values for all relevant metadata fields — categories, sub-categories, authors, publishers, contributors, and languages — and to download a metadata spreadsheet for however many results are currently displayed, again with limited fields: serial number, title, author, category, and publisher.

Note that "E-Books" and "Unicode Books" are two distinct browsing modes, focused on providing their own data type.

Hidden Searchable Texts

One would expect that both "E-Books" and "Unicode Books" would display all items which contain both data types (3,912 in number), but this is not the case. As it happens, about a third of the items containing both searchable text and a PDF (1,365) are displayed only when browsing "E-Books" (PDF). In that sense, users browsing "Unicode Books" are getting an undercount of the true amount of searchable text on the site.

In order to find these 1,365 searchable texts on the site, one must get lucky while clicking through search results or "E-Books" (PDF) browse results.

There is no clear distinction between those items with both data types that "Unicode Books" does return and those that it doesn't. Close inspection shows only that the omission happened in certain categories more than others (e.g., दर्शनानि) and in certain years more than others (e.g., 2021).

The full discrepancy is noted in Data Quality below.

Sanskrit vs. Other Languages

Most E-bharatisampat material is in Sanskrit, with or without material in other languages. Going by the metadata, roughly a quarter of items pair Sanskrit with another language, most often Hindi or English, e.g., for introduction or facing translation. Strictly non-Sanskrit items comprise 3% of the total by item count.

These percentage numbers are computed after normalizing metadata inconsistencies. For example, "English" is written in four different ways, and one entry has "संस्कृतम" without halant/virāma.

In any case, this Atlas makes no attempt to control for language.

Obtaining and Representing E-bharatisampat Data

Scraping Metadata

The individual metadata pages are the primary source of the most essential information: title, author, category and subcategory, serial number, and content links. The quickest way to get a complete listing of these metadata page links is to walk the top-level "E-Books" and "Unicode Books" browse results. After deduping the overlap, it's trivial to parse the relevant fields.

With polite scraping (2 seconds per request), this is done in about 22,000 seconds, or 6 hours. The vast majority of the Atlas is constructed on this basis.

Calculating Size Information

Fulltext content is also scraped for the purpose of calculating searchable text size; none is shared publicly, and PDFs were not fetched at all. Because of the frequently deep pagination of "Read Unicode" items — each load is another request — this scrape takes much longer: several weeks of persistently polite scraping.

Size calculation involves two steps:

  1. stripping content of markup and headers (30% by data volume), and
  2. transliterating from Devanāgarī to IAST.

IAST text takes up less space (approximately 50% of the Devanāgarī byte count) and is more common for cross-collection size comparisons.

Calculating Date Information

Item metadata contains no explicit time signals: no date added, no last-updated date. However, there are two implicit time signals: 1) serial numbers, and 2) a hidden timestamp in the filename of thumbnail images. On their own, neither of these could be conclusive. However, the fact that they strongly correlate with each other (Spearman ρ = 0.972) corroborates the value of both.

These correlated implicit signals allow us to do the following:

  1. Read serial number as relative order of addition.
  2. Take the vast majority of image file timestamps that monotonically increase with serial numbers as the specific date of addition.
  3. For the 207 timestamps that defy that order — 207 run more than a year ahead of their serial neighborhood, and 0 run more than a year behind — interpolate a synthetic date of likely addition from the serial neighborhood instead.

One natural reading of a late timestamp is that the item was changed then — that it is, in effect, a last-updated date. This is worth testing, because if true, we would have another time axis to work with.

There is exactly one way to test it from outside: a partial fulltext dump by Vishvas Vasuki, posted at sanskrit/raw_etexts and frozen at February 2025 (later commits are not consequential), holding 2,737 texts (24.7% of the catalogue). It lets the same books be read years apart.

The hypothetical last-updated interpretation does not survive scrutiny. Of the 3,318 items stamped after the 2025 dump was taken, 3,276 (98.7%) were simply not in it — new acquisitions, as a date-added reading predicts. Only 42 were present in 2025 and later restamped, and across 2,626 books present in both dumps, those restamped few are indistinguishable from the rest: 66.7% within ±2% of their 2025 length, against 70.4% of books whose timestamp never moved. Manual inspection suggests the only visible discrepancies boil down to global orthography normalization, likely by Vishvas himself.

So a late timestamp marks some later touch to the record, but nothing on the site says what, and the one external check finds no trace of anything meaningful in the text. This leaves us free to basically disregard out-of-order timestamps as noise.

In the Atlas, items are presented confidently with timestamps, and synthetically derived timestamps are marked as such with an asterisk and a tooltip explaining the estimate. In the growth graph below, where each bar aggregates many items, that tooltip gives the count of interpolated dates behind the bar rather than any single original datestamp.

Emphasis on Searchable Text over PDFs

This Atlas focuses on searchable text. That said, it does still have entries for items containing only PDFs on the source site. A "TXT only" toggle allows users to fully conceal these items from consideration if they wish. Note that PDFs are fully disregarded for the purpose of calculating collection size in megabytes.

For each item the Atlas displays, "PDF" and "text" tag links are provided as applicable.

Text items that have chapter-by-chapter structure also bear an inert tag "TOC" for "table of contents."

Browsing by Categories and Authors

The default view is a category tree. Within this, users can optionally choose to also group by author.

Alternatively, the tree can be inverted so that authors are primary and categories are secondary. No normalization is performed on author names, so the site's own divisions into e.g. कालिदासः and महाकविकालिदासः are retained here.

Category and author headers, under which individual items are displayed, link to the source site's two navigation methods: search and browse. Search applies to both, but its results do not distinguish items by contained data types (PDF or text), hence the link text "search txt+pdf."

For its part, browse is too awkward to apply to author because it works by exclusion, not inclusion, and the site cannot handle it. That is to say, browsing a single author requires excluding all other authors. If one tries to construct the necessary URL for such a request, the site errors instead of loading the page. For this reason, only categories get browse links. Specifically, the link goes to the "Unicode Books" browsing interface, hence the link text "browse txt" — but again, this browsing mode has a serious undercounting problem.

Sub-categories get no link at all; search cannot filter by sub-category, and browsing has yet another undercounting problem in this respect. For example, attempting to browse the sub-category आयुर्वेदः, which the browse interface's own sidebar estimates at 107 items, lands on a page showing just 32 items, with the label still reading 107 beside it. (The Atlas, which overcomes the "hidden texts" problem, reveals the real count as 187.) Similarly, the 4 sub-categories of उपवेदाः sum to 151 in the browse interface sidebar, while the pages they lead to total 48. (The true count is 236.)

Groupings the Atlas itself introduces ("unknown" author, "uncategorized") also get no link, because browse cannot express them — unknown author for the same author-related reason stated above, and uncategorized items because excluding every known category value returns nothing at all rather than the remainder that carries none of them.

Data Quality: Structural Errors

Opportunities for Correction

The Atlas codebase also includes an audit pipeline for detecting and concisely indicating problems that should be fixed on ebharatisampat.in.

Observations

Facts about the collection rather than faults in it: things a reader should know before drawing a conclusion from the counts.

Data Quantity: Historical Trends

Overall Growth over Time

measure period totals
text only text + PDF PDF only
Loading…

See Calculating Date Information above for assumptions.

Further caveat: ebharatisampat.in publishes no versioning or history, so these bands describe each item as it stands today, not as it arrived. An item counted here as "text + PDF" may well have gained the second format later; the reverse — a format added at upload and since deleted, leaving "text only" or "PDF only" — is possible but seems unlikely.

By Serial Number

Another way to interrogate how the collection has changed over time is to ask what happens across each block of five hundred serial numbers. As it happens, many serial numbers were not used (see below where the bar does not reach 500). Also displayed here is the relatively limited occurrence of structured text.

structured text unstructured text PDF only
Loading…

By Category

The charts above say how much arrived and in what format; they say nothing about the nature of the content. This chart plots category additions over time, with one line each for the largest categories, and the rest folded into a single "other" line. Click on legend icons to deselect.

period totals
Loading…