Skip to content

crispaulcastaneda/govchaind

Β 
Β 

Repository files navigation

OpenGovChain Blockchain

A tokenless, public good blockchain for government data transparency and accountability.

🎯 Mission

OpenGovChain is a decentralized blockchain network designed to store and manage government datasets with complete transparency. Our mission is to create an open, accessible platform where government data can be stored immutably and accessed by all citizens.

🌟 Key Features

Tokenless Architecture

  • No Economic Barriers: Anyone can participate without purchasing tokens
  • Volunteer-Operated: Community-driven validator network
  • Public Good Focus: Designed for transparency, not profit

Government Data Management

  • Immutable Records: Government datasets stored permanently on blockchain
  • IPFS Integration: Efficient file storage with content addressing
  • Rich Metadata: Comprehensive dataset information and categorization
  • Query Capabilities: Search by agency, category, and file type

Decentralized Network

  • Cosmos SDK: Built on proven blockchain technology
  • Validator Network: Volunteer nodes secure the network
  • Consensus Driven: Community governance model
  • Open Source: Fully transparent and auditable code

πŸ—οΈ Architecture

Blockchain Components

  • Datasets Module: Custom Cosmos SDK module for data management
  • Entry Storage: Structured metadata for government files
  • Query Engine: Efficient data retrieval and filtering
  • Validator Network: Decentralized consensus mechanism

Data Flow

  1. Upload: Government agencies upload datasets to IPFS
  2. Metadata: Blockchain stores immutable metadata and references
  3. Validation: Network validates data integrity and authenticity
  4. Access: Public can query and download datasets freely

πŸš€ Getting Started

For Node Operators

See GETTING_STARTED.md for detailed setup instructions.

Quick Setup (Local development only)

# Setup blockchain environment
./setup-env.sh

# Build the chain binary
ignite chain build

# Start the blockchain
ignite chain serve

For Volunteer Validators

# Join the network
./join-as-volunteer.sh <node-name> <genesis-url>

# Start your validator node
govchaind start

# Configure your node
nano ~/.govchain/config/config.toml

Configure Volunteer Node

# Persistent peers (seed nodes)
persistent_peers = "node1@ip1:26656,node2@ip2:26656"

# External address (your public IP)
external_address = "tcp://YOUR_PUBLIC_IP:26656"

# Prometheus metrics
prometheus = true

Systemd Service

sudo tee /etc/systemd/system/govchaind.service > /dev/null <<EOF
[Unit]
Description=OpenGovChain Node
After=network-online.target

[Service]
User=$USER
ExecStart=$(which govchaind) start
Restart=on-failure
RestartSec=3
LimitNOFILE=4096

[Install]
WantedBy=multi-user.target
EOF

# Enable and start service
sudo systemctl daemon-reload
sudo systemctl enable govchaind
sudo systemctl start govchaind

Verify Node is Running

# Check status
sudo systemctl status govchaind

# View logs
sudo journalctl -u govchaind -f

# Check sync status
govchaind status | jq .SyncInfo

πŸ“Š Network Statistics

  • Consensus: Tendermint BFT
  • Block Time: ~5 seconds
  • Validators: Community volunteers
  • Storage: IPFS for files, blockchain for metadata
  • Governance: Validator consensus + community input

πŸ›‘οΈ Security

Data Integrity

  • Cryptographic Hashing: SHA-256 checksums for all files
  • IPFS Content Addressing: Immutable content identification
  • Blockchain Immutability: Tamper-proof metadata storage

Network Security

  • Byzantine Fault Tolerance: Tendermint consensus mechanism
  • Validator Diversity: Geographically distributed volunteer nodes
  • Open Source Auditing: Transparent codebase for security review

🌍 Public Impact

Transparency Benefits

  • Open Government: All datasets publicly accessible
  • Accountability: Immutable record of government data
  • Citizen Empowerment: Direct access to government information
  • Research Support: Reliable data for academic and policy research

Community Building

  • Volunteer Network: Engaged community of node operators
  • Collaborative Governance: Democratic decision-making process
  • Educational Resources: Learning opportunities in blockchain technology
  • Global Model: Template for transparent government worldwide

πŸ“ˆ Future Roadmap

Phase 1: Foundation (Current)

  • βœ… Basic blockchain infrastructure
  • βœ… IPFS integration
  • βœ… Government dataset support
  • βœ… Volunteer validator network

Phase 2: Enhancement

  • πŸ”„ Authentication
  • πŸ”„ DPoS support
  • πŸ”„ Advanced query capabilities
  • πŸ”„ Multi-agency coordination
  • πŸ”„ Data validation workflows
  • πŸ”„ Performance optimization

Phase 3: Expansion

  • πŸ“‹ Cross-chain interoperability
  • πŸ“‹ Enhanced governance features
  • πŸ“‹ International deployment
  • πŸ“‹ Advanced analytics

🀝 Contributing

We welcome contributions from:

  • Government Agencies: Data providers and validators
  • Node Operators: Volunteer validators and infrastructure
  • Developers: Code contributors and reviewers
  • Citizens: Feedback and usage insights

How to Contribute

  1. Run a Node: Join as a volunteer validator
  2. Submit Data: Help agencies upload datasets
  3. Develop Features: Contribute to the codebase
  4. Spread Awareness: Share the mission with others

πŸ“ž Support

  • Documentation: See technical guides in this directory
  • Community: Join our validator network discussions
  • Issues: Report bugs and request features
  • Training: Volunteer node operator guides available

πŸ“œ License

This project is open source and available under the MIT License. See LICENSE file for details.


OpenGovChain by BetterGov.ph: Empowering transparency through decentralized government data.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Go 82.3%
  • Shell 16.1%
  • Makefile 1.6%