Liking cljdoc? Tell your friends :D

scicloj.zulipdata.anonymize

Anonymized projections of the corpus. Sender identities and subject lines are replaced by stable hash keys; message content is dropped. Suitable for sharing dataset views without exposing real names or message text.

The salt is committed in source: anonymization here is about not displaying real identities in published files, not about preventing re-identification by anyone with access to the original Zulip data.

Anonymized projections of the corpus. Sender identities and
subject lines are replaced by stable hash keys; message content
is dropped. Suitable for sharing dataset views without exposing
real names or message text.

The salt is committed in source: anonymization here is about not
displaying real identities in published files, not about
preventing re-identification by anyone with access to the original
Zulip data.
raw docstring

scicloj.zulipdata.client

Zulip REST client for the Clojurians instance, using HTTP basic auth with an account email + API key. Credentials are read from ZULIP_EMAIL / ZULIP_API_KEY env vars, or from ~/.zuliprc.

Zulip REST client for the Clojurians instance, using HTTP basic
auth with an account email + API key. Credentials are read from
`ZULIP_EMAIL` / `ZULIP_API_KEY` env vars, or from `~/.zuliprc`.
raw docstring

scicloj.zulipdata.core

Core namespace for zulipdata.

Core namespace for zulipdata.
raw docstring

No vars found in this namespace.

scicloj.zulipdata.emoji

Helpers for displaying Zulip reactions as actual glyphs or images.

A reaction's :reaction-type and :emoji-code (as carried in the views/reactions-long projection) determine what to render:

  • "unicode_emoji":emoji-code is a hyphen-separated sequence of unicode codepoints. "1f64f" is 🙏, "1f3f4-200d-2620-fe0f" is 🏴‍☠️.
  • "realm_emoji" / "zulip_extra_emoji":emoji-code is the workspace's custom-emoji id; the source URL lives in the /realm/emoji endpoint.
Helpers for displaying Zulip reactions as actual glyphs or images.

A reaction's `:reaction-type` and `:emoji-code` (as carried in the
`views/reactions-long` projection) determine what to render:

- `"unicode_emoji"` — `:emoji-code` is a hyphen-separated sequence
  of unicode codepoints. `"1f64f"` is 🙏,
  `"1f3f4-200d-2620-fe0f"` is 🏴‍☠️.
- `"realm_emoji"` / `"zulip_extra_emoji"` — `:emoji-code` is the
  workspace's custom-emoji id; the source URL lives in the
  `/realm/emoji` endpoint.
raw docstring

scicloj.zulipdata.graph

Graph-shaped views of the corpus, backed by JGraphT.

The two graphs we routinely care about:

  • channel co-membership — undirected weighted; nodes are channel names, edges weighted by number of shared users.
  • user co-presence — undirected weighted; nodes are anonymized user-keys, edges weighted by number of shared channels.

Plus utilities for community detection (Girvan-Newman, Label Propagation), betweenness centrality, and conversion to kind/cytoscape and kind/graphviz shapes.

Graph-shaped views of the corpus, backed by JGraphT.

The two graphs we routinely care about:

- **channel co-membership** — undirected weighted; nodes are
  channel names, edges weighted by number of shared users.
- **user co-presence** — undirected weighted; nodes are
  anonymized user-keys, edges weighted by number of shared
  channels.

Plus utilities for community detection (Girvan-Newman, Label
Propagation), betweenness centrality, and conversion to
`kind/cytoscape` and `kind/graphviz` shapes.
raw docstring

scicloj.zulipdata.narrative

Helpers for narrative-style analyses across the corpus: enriching timelines with date columns, summarising channel lifecycles, selecting channels by name or by shared user-base, and tracing newcomers' prior channels.

Operates on the anonymized timeline returned by scicloj.zulipdata.anonymize/anonymized-timeline.

Helpers for narrative-style analyses across the corpus: enriching
timelines with date columns, summarising channel lifecycles,
selecting channels by name or by shared user-base, and tracing
newcomers' prior channels.

Operates on the anonymized timeline returned by
`scicloj.zulipdata.anonymize/anonymized-timeline`.
raw docstring

scicloj.zulipdata.pull

Paginated, resumable pulls of Zulip channel history. Each forward window is keyed on (stream-name, anchor-id, batch-size) and cached on disk via pocket — so repeated runs and crash recovery are idempotent.

Cache directory: ZULIP_CACHE_DIR env var, or ~/.cache/zulipdata-clojurians/ by default.

Paginated, resumable pulls of Zulip channel history. Each forward
window is keyed on `(stream-name, anchor-id, batch-size)` and cached
on disk via pocket — so repeated runs and crash recovery are idempotent.

Cache directory: `ZULIP_CACHE_DIR` env var, or
`~/.cache/zulipdata-clojurians/` by default.
raw docstring

scicloj.zulipdata.views

Projections of raw Zulip messages into purpose-built tablecloth datasets. Raw messages are the source of truth; these views are built on demand.

Projections of raw Zulip messages into purpose-built tablecloth datasets.
Raw messages are the source of truth; these views are built on demand.
raw docstring

cljdoc builds & hosts documentation for Clojure/Script libraries

Keyboard shortcuts
Ctrl+kJump to recent docs
Move to previous article
Move to next article
Ctrl+/Jump to the search field
× close