43 Commits

Author SHA1 Message Date
48785992d2 update documentation and .gitignore 2026-02-18 09:29:50 +01:00
6c75fe55d0 feat(ssl): move certificate generation to runtime with persistent volume
Self-signed SSL certificates are now generated at first startup instead
of being baked into the Docker image. Certificates persist in ./certs/
and are reused on subsequent runs. Users can provide their own certs
2026-02-17 08:58:44 +01:00
742b0662a7 feat(dashboard): require basic auth for external clients only
- Allow direct access from localhost and private RFC1918 networks
- Enforce HTTP Basic Auth for non-private/external source IPs
- Read dashboard credentials from compose env vars
- Add .env.example entries for DASHBOARD_AUTH_USERNAME/PASSWORD
- Update README and DASHBOARD docs
2026-02-16 09:41:44 +01:00
ae91163168 harden: restrict RPC/ZMQ exposure and remove unsafe RPC override
- Bind RPC to localhost only (127.0.0.1:2332)
- Bind ZMQ 28332/28334/28335 to localhost for host-only debugging
- Remove -rpcallowip=0.0.0.0/0 from palladiumd
- Remove redundant -rpcbind flag from compose (handled in palladium.conf)
2026-02-16 09:23:14 +01:00
525d1bc9e0 chore(gitignore): ignore Qt GUI binary 2026-02-15 16:36:04 +01:00
26b69c6b55 feat(dashboard): filter ElectrumX peers by genesis hash and disable API caching
Ensure only peers belonging to the same network (matching genesis_hash)
are shown in the dashboard. Add no-cache headers to all /api/ responses
to prevent stale data from browser or proxy caches
2026-02-15 01:13:42 +01:00
8e0aaecaa9 Improve ElectrumX discovery consistency and reachability checks
Unify dashboard and servers page data source to keep active server counts synchronized.

Remove hardcoded port fallbacks and derive TCP/SSL ports from advertised services.

Harden TCP/SSL probing (self-signed SSL support, better timeouts, peer-port-aware checks).

Simplify Discovery Summary UI to show only total active servers.
2026-02-13 14:22:07 +01:00
ed5a34438a update README.md and .gitignore 2026-02-13 13:41:58 +01:00
39dc6c5d26 chore(gitignore): ignore daemon binaries 2026-02-13 13:30:53 +01:00
cc2f493eb2 Update default palladium.conf
- replace specific docker subnets with universal private ranges

- allow RPC from 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16

- improve portability across different Docker/network setups
2026-02-13 13:30:53 +01:00
3ca12b2ec0 style(dashboard): remove card header icons from dashboard templates 2026-02-13 11:18:55 +01:00
48354b7041 Update .gitignore 2026-02-13 11:14:09 +01:00
10ad8dc680 feat(dashboard): add Electrum active servers page and optimize ElectrumX card/perf 2026-02-13 11:12:29 +01:00
4f528f8a1e Auto-detect public IP for ElectrumX peer announcement 2026-02-13 09:33:58 +01:00
f631edfc4d Add daemon binaries setup documentation 2026-02-13 08:56:06 +01:00
2ed5c746a9 Add Palladium seed peers and enable peer discovery 2026-02-13 08:49:31 +01:00
9cb7922ac1 Add server donation address 2026-02-13 08:36:18 +01:00
3ce18c9860 Fix PEER_DEFAULT_PORTS to match actual ElectrumX service ports 2026-02-13 00:56:17 +01:00
5cc3dcacc8 Use coins_plm.py as single source of truth for ElectrumX patch
- Remove inline Palladium coin definition from Dockerfile.electrumx
  and COPY coins_plm.py instead, reducing duplication
- Add TX_COUNT/TX_COUNT_HEIGHT/TX_PER_BLOCK to coins_plm.py with
  real chain data (457478 txs at height 382404)
- Update entrypoint.sh to fetch live TX stats from palladiumd at
  container startup, keeping sync estimates accurate automatically
2026-02-13 00:50:41 +01:00
8131d7048e rename palladium-node-data to .palladium to follow Unix standards
Rename the data directory from palladium-node-data/ to .palladium/
to align with Unix convention for application data directories.
This change makes the directory hidden by default and follows the
standard naming pattern used by blockchain nodes
2026-02-11 12:29:16 +01:00
b27f0b5778 Add dashboard for node and server statistics 2026-02-09 11:41:46 +01:00
20fd299905 Add palladium bin (arm for test on raspberry) 2026-02-09 10:12:01 +01:00
72d95f1a48 Add integrated Palladium node and automate RPC credentials
- Integrate Palladium node (palladiumd) in separate Docker container
- Add automatic RPC credential detection from palladium.conf
- Eliminate manual credential synchronization between files
2026-02-09 00:22:15 +01:00
064f8a79d1 Update README.md 2026-01-22 13:14:02 +01:00
0347078a52 Update README.md 2026-01-22 10:54:42 +01:00
ca7b83d1b9 Feat: automate Docker image build with docker-compos 2026-01-22 09:20:12 +01:00
7c3a8712b1 Add Linux configuration instructions for Docker connectivity to Palladium node 2025-11-28 19:24:09 +01:00
5b550f3245 Clear inherited checkpoints and update to mainnet config
Remove inherited Bitcoin checkpoints from Palladium coin definition to prevent
validation issues.
2025-11-28 13:49:04 +01:00
9000278f17 feat: add complete Palladium testnet support to ElectrumX
This commit implements full support for both Palladium mainnet and testnet
networks in ElectrumX, allowing users to switch between them via configuration.

Changes:
- Dockerfile: Fixed coin class registration by adding Palladium classes
  directly to coins.py instead of using external imports (avoids circular
  dependency). Both /usr/local/lib and /electrumx/src files are patched.
  Added required TX_COUNT, TX_COUNT_HEIGHT, TX_PER_BLOCK attributes.

- README.md: Updated with comprehensive network support documentation
  including network comparison table, step-by-step switching instructions,
  testnet-specific information, and corrected COIN/NET usage.

- docker-compose.yml: Configured for testnet with proper COIN and NET
  environment variables. Added clear comments for mainnet/testnet switching.

Network Configuration:
- Mainnet: COIN="Palladium" NET="mainnet" port 2332
- Testnet: COIN="Palladium" NET="testnet" port 12332
  (Note: COIN value is always "Palladium" for both networks)

Tested successfully with Palladium testnet node - synced 6,576 blocks
and serving on TCP:50001 and SSL:50002.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-28 13:24:42 +01:00
61ffb0729c Update coin configuration and imports
- Remove redundant NET setting as it's automatically determined by COIN
- Update Dockerfile to handle both Palladium and PalladiumTestnet imports
- Register both coin types in COIN_CLASSES
2025-11-28 12:49:04 +01:00
54b434d33f Add testnet support for palladium electrumx server
Add PalladiumTestnet class with testnet-specific configurations including ports, address prefixes, and genesis hash. Update docker-compose.yml with clear network configuration comments and documentation in README.md explaining how to switch between mainnet and testnet.
2025-11-28 12:32:12 +01:00
4231aafb1e build: add .dockerignore file
Add Docker ignore file to exclude unnecessary files from build context:
- Git files and documentation
- Docker configuration files
- Runtime data and logs
- Python cache and test files
- IDE/editor files
- Environment and temporary files

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-28 12:29:58 +01:00
21cab9492e docs: update README with new repository link and docker instructions
Update the Palladium Full Node repository link and improve Docker Compose configuration details.
Add note about host.docker.internal usage and clarify exposed ports for ElectrumX.
2025-10-15 14:07:11 +02:00
ddfab1582f (docker): update electrumx-plm container networking and config
- Replace host networking with explicit port mapping and host gateway
- Update DAEMON_URL to use host.docker.internal
- Remove redundant healthcheck configuration
2025-10-15 14:05:27 +02:00
ac17788837 build: add .gitignore file with common exclusions
Add standard .gitignore entries to exclude development environment files,
OS-generated files, temporary files, and other common patterns from version control
2025-10-15 14:01:28 +02:00
036762aa98 docs: add system architecture requirement to README 2025-10-05 18:16:52 +02:00
0ba260d0e7 docs: update docker compose commands in README
The commands were updated to use the newer 'docker compose' syntax instead of the deprecated 'docker-compose' form.
2025-10-05 18:13:53 +02:00
7c45f8e887 Add test-server.py to verify Electrum server connectivity 2025-09-26 16:22:53 +02:00
ca50eb44a2 Add ElectrumX patch with Palladium coin clas 2025-09-26 16:18:12 +02:00
463f4a3aa4 Introduce Dockerfile with Palladium coin class 2025-09-26 16:16:34 +02:00
ee54f4b545 Add docker-compose.yml for container setup 2025-09-26 16:13:01 +02:00
1015bbe433 update README.md 2025-09-26 16:07:30 +02:00
948ede6a75 Initial commit 2025-09-26 13:43:12 +02:00