Go to file
2023-02-15 19:09:52 +07:00
.github/workflows BREAKING CHANGE: Fix get_contact, clarify connect and is_connected docs (#27) 2022-08-26 10:07:08 +03:00
.gitignore Add gitlab pipeline 2021-04-29 17:26:11 +03:00
binary.aqua feat: add and, or and not (#31) 2022-11-18 16:42:48 +04:00
builtin.aqua feat!(builtins): srv.info, dist.get_blueprint (#34) 2023-02-15 19:07:33 +07:00
LICENSE Initial version 2021-04-29 15:22:39 +03:00
math.aqua Add math.aqua (#21) 2022-03-01 03:40:42 +07:00
package-lock.json Improve Script.add signature and docs (#24) 2022-04-25 17:07:22 +04:00
package.json chore: bump version to 0.3.0 2023-02-15 19:09:52 +07:00
readme.md replace aqua-dht link with aqua-lib link 2022-02-28 05:14:22 -06:00

Aqua

Aqua is a new-gen language for distributed systems.

Aqua programs are executed on many peers, sequentially or in parallel, forming a single-use coordination network.

Aqua's runtime is heterogeneous: it includes browsers, servers, devices, all involved in solving a single task. Therefore, Aqua scripts are compiled into several targets at once, with AIR and Typescript as a default.

aqua-lib

API of the protocol-level functions in the Fluence Network.

This API is available on all peers powered by Fluence nodes, and a part of the API is available on JS/TS-based (browsers, NodeJS) peers.

Documentation

See Aqua Book.

How to use it in Aqua

Add @fluencelabs/aqua-lib to your package.json dependencies, and then in your Aqua script, import and use it:

import "@fluencelabs/aqua-lib/builtin.aqua"

-- gather Peer.identify from all nodes in the neighbourhood
func getPeersInfo() -> []Info:
    infos: *Info
    nodes <- Kademlia.neighborhood(%init_peer_id%, nil, nil)
    for node in nodes:
        on node:
            infos <- Peer.identify()
    <- infos