0.4.0 • Published 12 months ago

maria2 v0.4.0

Weekly downloads
-
License
MIT
Repository
github
Last release
12 months ago

maria2

Modern & Simple RPC Library for aria2.

Introduce

maria2 can control aria2c by its RPC interface.

Features

  • Simple and Light (Just 4.12KB after minified)
  • Better TypeScript IDE Support.
  • Browser and Node.js Support.

Getting Started

  • If you are using Deno, just import it.
import { aria2, open, system } from 'https://deno.land/x/maria2/index.ts'
import { createHTTP, createWebSocket } from 'https://deno.land/x/maria2/transport.ts'
  • If you are using Node.js, install this package.
pnpm i maria2

# For Node.js *
pnpm i ws
pnpm i -D @types/ws # TypeScript Support

# For Node.js <v15.6.0, <v14.17.0
pnpm i uuid
  • Run aria2c with RPC options, for example
aria2c --enable-rpc=true --rpc-listen-all=true --rpc-allow-origin-all=true --rpc-listen-port=6800
  • Connect by WebSocket
import { aria2, open } from 'maria2'

const conn = await open(
  new WebSocket('ws://localhost:6800/jsonrpc')

  // import { createWebSocket } from 'maria2/transport'
  // createWebSocket('ws://localhost:6800/jsonrpc')
)

const version = await aria2.getVersion(conn)
  • Connect by HTTP
import { aria2, open } from 'maria2'
import { createHTTP } from 'maria2/transport'

const conn = await open(
  createHTTP('http://localhost:6800/jsonrpc')
)

const version = await aria2.getVersion(conn)
  • Multicall
import { open, system } from 'maria2'

const conn = await open(
  new WebSocket('ws://localhost:6800/jsonrpc')
)

const [result0, result1] = await system.multicall({
  methodName: 'aria2.getVersion',
  params: []
}, {
  methodName: 'aria2.getGlobalStat',
  params: []
})

Credits

License

MIT License © 2023 Hydration

0.4.0

12 months ago

0.3.4

2 years ago

0.3.3

2 years ago

0.3.2

3 years ago

0.3.1

3 years ago

0.3.0

3 years ago

0.3.0-beta.20

3 years ago

0.3.0-beta.18

3 years ago

0.3.0-beta.17

3 years ago

0.3.0-beta.16

3 years ago

0.3.0-beta.14

3 years ago

0.3.0-beta.13

3 years ago

0.3.0-beta.11

3 years ago

0.3.0-beta.10

3 years ago

0.3.0-beta.9

3 years ago

0.3.0-beta.8

3 years ago

0.3.0-beta.7

3 years ago

0.3.0-beta.6

3 years ago

0.3.0-beta.4

3 years ago

0.3.0-beta.3

3 years ago

0.3.0-beta.2

3 years ago

0.3.0-beta.1

3 years ago

0.3.0-beta.0

3 years ago

0.2.8-beta.2

3 years ago

0.2.8-beta.1

3 years ago

0.2.8-beta.0

3 years ago

0.2.7

3 years ago

0.2.6

3 years ago

0.2.4

3 years ago

0.2.3

3 years ago

0.2.2

3 years ago

0.2.1

3 years ago

0.2.0

3 years ago

0.1.5

3 years ago

0.1.4

3 years ago

0.1.3

3 years ago

0.1.2

3 years ago

0.1.1

3 years ago

0.1.1-beta.1

3 years ago

0.1.0

3 years ago

0.0.0

3 years ago