2title = "Analytics Script"
6grant_category = ["App Dev"]
9description = "Write a generator that exports chat data into a CSV."
11assignee = "~hosted-fornet"
13work_request_link = "https://airtable.com/shr4qt9t9kz7RaOIa?prefill_Grant+ID=B0015&prefill_Grant+Name=Analytics%20Script"
18In order to understand the growth of the network, it's important that we be able to measure the amount of activity within groups at any given point. Your task is to build an open-source script (a [generator](https://urbit.org/docs/tutorials/hoon/hoon-school/generators/)) that exports group activity into a format that can be analyzed.
22The generator will read data from `graph-store` (and other requisite agents) and extract it into a CSV file.
26The output of the generator is a CSV file with the following format: `timestamp,ship,group,channel,channel-type,content`. Each row of data represents a single post of some type; either a chat message, notebook post, or collection post.
28The result of running the CSV should output the clay path to the file.
32The generator should accept a few parameters:
34- `path` (required): path to write the CSV to.
35- `from` (required): absolute date (`@da`) from which data should be pulled.
36- `to` (optional): absolute date (`@da`) up until which point data should be pulled. Default is the current time.
37- `groups` (optional): list of groups to read data from. Default is to pull data from all groups that the running ship is a member of.
38- `content` (optional): boolean of whether or not to include content in the CSV. Defaults to `false`.
40## Requirements & Resources
42- The Urbit Foundation will connect you with Tlon engineers for 1:1 support, should you need it
43- Code should be submitted as a pull request against https://github.com/urbit/urbit
44- The generator shall be called `crunch` (we're open to better ideas)
51The generator is submitted as a pull request to the Urbit repository, reviewed, and merged.
keysesc to close
- j k
- move down, up
- enter
- open
- esc
- back, or up a level
- 1 2 3 4
- readme, files, commits, refs
- /
- filter
- y
- copy the clone command
- c
- compare the chosen commit with another (or shift-click both)
- ?
- show or hide this list