Contractless/README.md

94 lines
5.7 KiB
Markdown
Raw Normal View History

2026-05-24 17:56:57 +00:00
# Contractless
2026-07-12 22:01:00 +00:00
Contractless is a new peer-to-peer blockchain built from the ground up around spendable digital money, native transaction types, and a consensus model called Fair Proof of Work.
2026-05-24 17:56:57 +00:00
2026-07-12 22:01:00 +00:00
Instead of rewarding specialized mining hardware with overwhelming advantage, Contractless limits mining attempts so ordinary hardware can participate on more equal footing. The chain includes native support for base-currency transfers, tokens, NFTs, swaps, loans, marketing records, and app-style data storage without requiring a smart-contract VM.
2026-05-24 17:56:57 +00:00
2026-07-12 22:01:00 +00:00
Contractless is currently in testnet. Node operators, developers, wallet testers, and application builders are encouraged to review the documentation, run testnet nodes, and help test the network.
2026-05-24 17:56:57 +00:00
2026-07-12 22:01:00 +00:00
For protocol design, mining rules, balance handling, orphan correction, and Fair Proof of Work details, read the [Contractless whitepaper](https://contractless.community/contractless_whitepaper.pdf).
2026-05-24 17:56:57 +00:00
## Development With Codex
Contractless is designed and developed by Bruce Bates. OpenAI Codex, including the GPT-5.6 SOL model, has been used as an AI-assisted development tool.
GPT-5.6 SOL assisted with:
- Reviewing and debugging peer connection, bootstrap, handshake, and automatic reconnection behavior.
- Tracing multi-node synchronization and orphan-correction failures across source code and node logs.
- Hardening network-map monitoring and connection-state handling.
- Implementing and reviewing on-chain data-storage transaction support.
- Integrating data storage, address data, NFTs, loans, assets, and transaction history into the GUI wallet.
- Improving [GUI wallet](https://contractless.dev/contractless/Contractless-GUI-Wallet) cache synchronization, cache deletion safety, and Windows file-access coordination.
- Reviewing Rust transaction validation, mempool handling, block saving, and chain-reorganization paths.
- Identifying behavioral inconsistencies between local wallet caches and RPC responses.
- Expanding and reorganizing user documentation for installation, wallets, transactions, validation tools, loans, swaps, NFTs, fees, and data storage.
- Assisting with testing, compilation checks, technical explanations, and project presentation materials.
Codex served as a development assistant. Project architecture, consensus rules, economic design, feature requirements, testing decisions, and final implementation direction remain human-controlled.
2026-07-12 22:01:00 +00:00
## System Requirements
Recommended node requirements:
- Dedicated Internet
2026-07-12 22:01:00 +00:00
- PC / Laptop / Hosted VPS or cloud hosting
2026-07-23 15:38:29 +00:00
- Minimum 4GB RAM (precompiled binaries)
2026-07-23 15:41:26 +00:00
- Minimum 16 - 24GB RAM (building from source)
- i5 or higher CPU (or AMD equivalent CPU)
2026-07-12 22:01:00 +00:00
- 64 bit processing OS
2026-07-12 22:01:00 +00:00
Contractless uses Falcon signatures and requires 64-bit processing support.
2026-05-24 17:56:57 +00:00
2026-07-12 22:01:00 +00:00
## Networking Requirements
2026-05-24 17:56:57 +00:00
2026-07-12 22:01:00 +00:00
A public Contractless node must be reachable by other peers.
2026-05-24 17:56:57 +00:00
2026-07-12 22:01:00 +00:00
- Dedicated Public IP address
- Open public RPC port
- Router or host firewall port forwarding when behind NAT
- Reliable system time using NTP or another time synchronization service A common default is `pool.ntp.org`.
- One mining node per public IP
2026-05-24 17:56:57 +00:00
2026-07-12 22:01:00 +00:00
## Download Source
2026-05-24 17:56:57 +00:00
2026-07-12 22:01:00 +00:00
Clone the repository:
2026-05-24 17:56:57 +00:00
```bash
2026-07-12 22:01:00 +00:00
git clone https://contractless.dev/contractless/Contractless.git
cd Contractless
2026-05-24 17:56:57 +00:00
```
2026-07-12 22:01:00 +00:00
## Precompiled Binaries
2026-05-24 17:56:57 +00:00
2026-07-12 22:01:00 +00:00
Precompiled releases are available here:
2026-05-24 17:56:57 +00:00
2026-07-12 22:01:00 +00:00
[https://contractless.dev/contractless/Contractless/releases](https://contractless.dev/contractless/Contractless/releases)
2026-05-24 17:56:57 +00:00
2026-07-12 22:01:00 +00:00
Use the release package that matches your operating system and follow the matching installation guide below.
2026-05-24 17:56:57 +00:00
2026-07-12 22:01:00 +00:00
## Documentation
2026-05-24 17:56:57 +00:00
2026-07-12 22:01:00 +00:00
| Guide | Description |
| --- | --- |
| [Linux Installation](src/branch/main/docs/LINUX_INSTALLATION.md) | Install, configure, and run a Contractless node on Linux. |
| [Windows Installation](src/branch/main/docs/WINDOWS_INSTALLATION.md) | Install, configure, and run a Contractless node on Windows. |
| [Manual Postgres Setup](src/branch/main/docs/POSTGRES.md) | Manually create the PostgreSQL database, user, permissions, and settings. |
| [Config Settings](src/branch/main/docs/SETTINGS.md) | Full `settings.ini` reference and runtime path behavior. |
| [Wallet Tools](src/branch/main/docs/WALLET_TOOLS.md) | Create, restore, register, validate, and manage wallets. |
| [Validation Tools](src/branch/main/docs/VALIDATION_TOOLS.md) | Validate addresses, messages, blocks, torrents, and chain data. |
| [NFT Transactions](src/branch/main/docs/NFT_TRANSACTIONS.md) | Create, transfer and understand NFTs and RWA metadata. |
| [Tokens and Swaps](src/branch/main/docs/TOKEN_SWAPS.md) | Create tokens, swaps, import swaps, and handle two-party swap signatures. |
| [Loan Transactions](src/branch/main/docs/LOAN_TRANSACTIONS.md) | Create loans, make payments, claim collateral, and understand loan rules. |
| [Marketing Transactions](src/branch/main/docs/MARKETING_TRANSACTIONS.md) | Record campaign data and query marketing activity. |
| [Blocks and Transactions](src/branch/main/docs/BLOCKS_AND_TRANSACTIONS.md) | Look up blocks and transactions, create remaining transaction types, and broadcast signed transactions. |
| [Mempool](src/branch/main/docs/MEMPOOL.md) | Inspect pending transactions and mempool state. |
| [Data Storage](src/branch/main/docs/DATA_STORAGE.md) | Create storage keys, write app data, and use paid storage lookups. |
| [Other Tools](src/branch/main/docs/OTHER_TOOLS.md) | Additional CLI tools and maintenance commands. |
| [Fees](src/branch/main/docs/FEES.md) | Base fees for every native transaction type. |
| [Developers](src/branch/main/docs/DEV.md) | Architecture notes, library structure, RPC behavior, and contribution guidance. |
2026-05-24 17:56:57 +00:00
2026-07-12 22:01:00 +00:00
## Current Status
2026-05-24 17:56:57 +00:00
2026-07-12 22:01:00 +00:00
Contractless is still under active testnet development. Interfaces, transaction tools, docs, and node behavior may continue to change while the chain is tested.