Skip to content

zkitter/zkitter-js

Folders and files

NameName
Last commit message
Last commit date

Latest commit

d162cdf · Apr 25, 2023

History

61 Commits
Mar 7, 2023
Apr 25, 2023
Mar 7, 2023
Mar 22, 2023
Mar 7, 2023
Apr 13, 2023
Jan 30, 2023
Mar 22, 2023
Mar 7, 2023
Mar 7, 2023
Mar 7, 2023
Apr 13, 2023
Apr 25, 2023
Mar 22, 2023
Mar 7, 2023
Mar 22, 2023
Mar 7, 2023
Mar 22, 2023
Mar 7, 2023
Mar 6, 2023
Mar 22, 2023
Mar 22, 2023
Mar 7, 2023

Repository files navigation

ZkitterJS

Javascript implementation of a standalone Zkitter node

CLI Usage

To install CLI:

npm i -g zkitter-js

To sync:

# either https or wss provider will work
zkitter init -a wss://arb-mainnet.g.alchemy.com/v2/[api-key]
zkitter sync
zkitter timeline --limit=5

CLI options:

Options:
  -V, --version       output the version number
  -h, --help          display help for command

Commands:
  init [options]      initialize zkitter
  status              display status
  timeline [options]  display timeline
  sync [options]      sync with arbitrum and group
  fetch [options]     fetch historical data (30 days max) from waku
  whois <address>     sync with arbitrum and group
  up                  start zkitter and subscribe to all global events
  write [options]     publish a post
  list [options]      list all groups or users
  help [command]      display help for command

NPM Usage

import { Zkitter } from 'zkitter-js';
const zkitter = await Zkitter.initialize({
  arbitrumHttpProvider: 'https://...',
});

// Sync with arbitrum registrar
await zkitter.syncUsers();

// Sync with zk groups on zkitter
await zkitter.syncGroup();

// Get all historical messages (30 days) from Waku store
await zkitter.queryAll();

// Subscribe to all future messages from everyone
await zkitter.subscribe();

Development

# node v16
npm install

# build a dev cli to build/cli.js
npm run dev