Metadata-Version: 2.4
Name: animica-node
Version: 4.0.1
Summary: Animica node — slim, no-GPU runtime: run a full node + JSON-RPC (native + Bitcoin- and Ethereum-compatible). Built for exchanges and infrastructure operators.
Project-URL: Homepage, https://animica.org
Project-URL: Repository, https://github.com/animicaorg/all
Project-URL: Documentation, https://animica.org/docs
Project-URL: Issues, https://github.com/animicaorg/all/issues
License: Apache-2.0
Keywords: animica,bitcoin-rpc,blockchain,evm-rpc,exchange,json-rpc,node,rpc
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Financial and Insurance Industry
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Office/Business :: Financial
Classifier: Topic :: Software Development :: Libraries
Requires-Python: >=3.10
Requires-Dist: alembic<2.0.0,>=1.17.0
Requires-Dist: cbor2>=5.6.0
Requires-Dist: eth-account<1.0.0,>=0.13.7
Requires-Dist: fastapi<0.116.0,>=0.115.0
Requires-Dist: httpx>=0.27.0
Requires-Dist: prometheus-client<1.0.0,>=0.20.0
Requires-Dist: psycopg[binary]<4.0.0,>=3.2.12
Requires-Dist: pydantic>=2.7.0
Requires-Dist: pyyaml>=6.0.1
Requires-Dist: requests>=2.31.0
Requires-Dist: rich>=13.7.0
Requires-Dist: sqlalchemy<3.0.0,>=2.0.44
Requires-Dist: typer>=0.12.3
Requires-Dist: uvicorn[standard]<1.0.0,>=0.30.0
Requires-Dist: web3<8.0.0,>=7.14.0
Description-Content-Type: text/markdown

# animica-node

**Slim, GPU-free Animica node.** Run a full node and JSON-RPC endpoint — native,
**Bitcoin-Core-compatible**, and **Ethereum-compatible** — with none of the
torch/transformers/CUDA footprint of the full `animica` client.

Built for **exchanges and infrastructure operators** who just need to sync the
chain and serve RPC for deposits, withdrawals, and balance queries.

## What's different from `animica`

| | `pip install animica` | `pip install animica-node` |
|---|---|---|
| Node + JSON-RPC | ✓ | ✓ |
| Bitcoin / Ethereum RPC compat | ✓ | ✓ |
| Wallet, contracts, CLI | ✓ | — (use RPC) |
| Mining, useful-work, Studio | ✓ | — |
| GPU/AI stack (torch, transformers, CUDA) | ✓ (bundled) | **none** |

`animica-node` ships the **same node runtime** as `animica` (same chain,
consensus, p2p, mempool, DA, VM, post-quantum crypto), just with the AI/GPU
dependencies removed. Install one or the other on a box, not both (they share the
same top-level runtime modules).

## Install & run

```bash
pip install animica-node
animica-node            # starts a mainnet node + RPC on 127.0.0.1:8545
```

Or the module form (identical): `python -m rpc`.

## Configure (environment variables)

```bash
ANIMICA_NETWORK=mainnet        # network to join
ANIMICA_DATA_DIR=/data         # data directory
ANIMICA_RPC_HOST=0.0.0.0       # bind host (0.0.0.0 to expose)
ANIMICA_RPC_PORT=8545          # bind port
ANIMICA_P2P_ENABLE=true        # join the p2p network
ANIMICA_LOG_LEVEL=INFO
```

## JSON-RPC endpoints

```
POST /rpc   native:   state.* chain.* tx.* mempool.* p2p.* node.*
POST /      Bitcoin:  getblockchaininfo, getrawtransaction, sendrawtransaction, …
POST /      Ethereum: eth_chainId, eth_blockNumber, eth_getBalance, …  (chain id 149)
```

```bash
# native — balance for an exchange deposit address
curl -s localhost:8545/rpc -d '{"jsonrpc":"2.0","id":1,"method":"state.getBalance","params":["anim1..."]}'
# Ethereum-compatible
curl -s localhost:8545/   -d '{"jsonrpc":"2.0","id":1,"method":"eth_chainId","params":[]}'
# Bitcoin-compatible
curl -s localhost:8545/   -d '{"jsonrpc":"2.0","id":1,"method":"getblockchaininfo","params":[]}'
```

## Docs

- Node & RPC: https://animica.org/docs
- Bitcoin RPC: https://animica.org/docs/bitcoin-rpc
- Ethereum/EVM RPC: https://animica.org/docs/evm-rpc

Apache-2.0 · https://github.com/animicaorg/all
