Skip to content

DDjohnson21/OGC

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

19 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿš€ OGC - Out The Groupchat

Short Summary

OGC is a trustless group travel savings & governance app on Algorand โ€” trips go from text to takeoff with smart contract vaults.

โธป

๐Ÿ“– Full Description

Out The Group Chat (OGC) is a Web3-powered group travel savings and governance platform built on Algorand. It solves a common problem: most trip ideas die in the group chat because no one commits money early, coordination is messy, and trust breaks down.

With OGC, friends pool funds into on-chain vaults, contribute consistently, and unlock money only when group approvals are met. Funds are transparent, trustless, and governed directly in smart contracts.

๐Ÿ”‘ How It Works 1. Create a Trip Pool (e.g., Italy 2025 with a $3,000 goal). 2. Invite Friends โ€“ connect Algorand wallets or join via link. 3. Set Contributions โ€“ weekly fixed amounts until the trip date. 4. Funds Locked On-Chain โ€“ escrow in Algorand USDCa (ASA). 5. Group Approvals โ€“ 75% quorum required to release/refund. 6. Exit Rules โ€“ members can leave only with full group consent. 7. Book When Ready โ€“ release funds to wallets or trigger booking flows.

This makes OGC the first trustless, social, and automated group travel savings app.

Demo video

Frontend Demo

CANVA LINK

โš™๏ธ Technical Description

OGC leverages Algorandโ€™s unique AVM (Algorand Virtual Machine) and low-fee design to make group savings practical and scalable: โ€ข Smart Contracts: Written in PyTeal/Beaker, deployed on TestNet. โ€ข ASA Integration: OGC Token (1B supply) + USDCa for stable-value escrow. โ€ข Wallet Support: Pera & Defly via WalletConnect. โ€ข Transaction Costs: ~0.001 ALGO โ€” effectively free. โ€ข SDKs: py-algorand-sdk, beaker-pyteal, algokit. โ€ข Indexing: Algorand Indexer tracks contributions and approvals.

Algorand Features that Enable OGC: โ€ข โœ… Atomic Transfers for grouped payments + app calls. โ€ข โœ… Stateful Smart Contracts for quorum governance and vault rules. โ€ข โœ… Algorand Standard Assets (ASA) for USDCa and custom tokens. โ€ข โœ… Deterministic Fees (~$0.0003) allow micro-contributions.

โธป

โœจ OGC Smart Contract Ecosystem โ€ข ๐Ÿช™ OGC Token โ€“ Custom ASA (1B supply, 6 decimals). โ€ข ๐Ÿฆ Advanced Vault โ€“ Goal-based crowdfunding w/ deadlines. โ€ข ๐Ÿ“ค Sender Contract โ€“ Distribute ALGO from vault โ†’ wallets. โ€ข ๐Ÿ”„ Echo Contract โ€“ Risk-free testing, auto bounce-back. โ€ข ๐Ÿ’ณ Multi-Wallet Support โ€“ 3 wallets configured for TestNet demos. โ€ข ๐ŸŽญ Interactive Demos โ€“ Choose-your-own-adventure testing CLI.

๐Ÿš€ Quick Start

1. Environment Setup

# Navigate to project
cd ~/OGC

# Activate virtual environment
source ogc-contracts/projects/ogc-contracts/venv/bin/activate

# Install dependencies (if needed)
pip install -r requirements.txt

2. Fund TestNet Wallets

# Check wallet balances
python check_any_balance.py
# Choose option 5: Check all wallets

# Get TestNet ALGO from dispenser:
# https://testnet.algoexplorer.io/dispenser
# Fund these addresses with 5+ ALGO each:
# - 63W3II7K5X2OYPMX4DSMNOK4HY33UFJRI2MQ2OFDUHF47LFLUNIUJTDN4U
# - SXIEIE2D7FOKUNQXUFUZIRYKE75RYD5KBN5BOYZFXLIL7LOTFX4VK3U7CE
# - TR5YH6EHNKNE24OSMCOXK7B4DKL6DYBGIZAYZUORAOL2C5ILR2ASVOYAPQ

3. Interactive Demo

# Run interactive demo
python ogc_demo.py
# Choose option 5: Full Ecosystem Demo

๐Ÿงช Testing Commands

Deploy All Contracts

python create_ogc_token.py          # Create OGC token
python advanced_vault.py            # Deploy vault (goal: 2 ALGO, 24 hours)
python sender_contract.py           # Deploy sender (fund with 5 ALGO)
python echo_contract.py             # Deploy echo (fund with 3 ALGO)

Test Individual Features

# Token testing
python token_interact.py            # Opt-in, transfer tokens

# Vault testing  
python vault_interact.py            # Contribute, check status, release

# Sender testing
python sender_interact.py           # Send ALGO from contract

# Echo testing
python echo_interact.py             # Test bounce-back (send 1 ALGO, get 0.999 back)

# Simple contract testing
python simple_deploy_multi.py       # Deploy simple
python simple_deposit.py optin      # Opt-in
python simple_deposit.py deposit 2  # Trigger refund

Status & Balance Checks

python check_any_balance.py         # Check all balances
python ogc_demo.py                  # Choose option 7: Deployment status
python full_demo.py                 # Automated demo of all features

๐Ÿ“ Project Structure

OGC/
โ”œโ”€โ”€ README.md                       # This file
โ”œโ”€โ”€ TESTING_GUIDE.md               # Comprehensive testing docs
โ”œโ”€โ”€ wallets.json                   # TestNet wallet configurations
โ”œโ”€โ”€ create_ogc_token.py            # OGC token creation
โ”œโ”€โ”€ advanced_vault.py              # Crowdfunding vault
โ”œโ”€โ”€ sender_contract.py             # ALGO sender contract
โ”œโ”€โ”€ echo_contract.py               # Auto bounce-back contract
โ”œโ”€โ”€ ogc_demo.py                    # Interactive demo
โ”œโ”€โ”€ full_demo.py                   # Automated ecosystem demo
โ”œโ”€โ”€ check_any_balance.py           # Balance utilities
โ””โ”€โ”€ *_interact.py                  # Contract interaction scripts

๐ŸŽฏ Smart Contracts

OGC Token (ASA)

  • Supply: 1,000,000,000 OGC
  • Decimals: 6
  • Features: Standard Algorand asset with opt-in required

Advanced Vault

  • Purpose: Goal-based crowdfunding
  • Features: Deadline enforcement, automatic release
  • Usage: Set goal + deadline, contributors fund, auto-release when conditions met

Sender Contract

  • Purpose: Send ALGO from contract to any wallet
  • Features: Owner-controlled, tracks total sent
  • Usage: Fund contract, then send to any address

Echo Contract

  • Purpose: Risk-free testing and demos
  • Features: Automatically bounces ALGO back (minus 0.001 fee)
  • Usage: Send ALGO, get it back immediately

Simple Contract

  • Purpose: Basic deposit/refund mechanism
  • Features: Auto-refund at 2 ALGO threshold
  • Usage: Opt-in, deposit, automatic refund

๐Ÿ›  Technical Stack

  • Blockchain: Algorand TestNet
  • SDK: py-algorand-sdk 2.6.0
  • Smart Contracts: PyTeal/TEAL
  • Language: Python 3.7+
  • Network: TestNet via Algonode API

๐ŸŽฌ Demo Scenarios

Scenario 1: Complete Ecosystem

python full_demo.py
# Showcases all features in sequence

Scenario 2: Individual Testing

python ogc_demo.py
# Choose specific features to test

Scenario 3: Custom Demo

python ogc_demo.py
# Choose option 6: Custom Demo
# Select multiple features: 1,2,4

๐Ÿ”— TestNet Links

๐Ÿ“Š Success Indicators

When everything works correctly:

  • โœ… All contracts deploy successfully
  • โœ… Tokens transfer between wallets
  • โœ… Vault accepts contributions and releases funds
  • โœ… Echo contract bounces ALGO back
  • โœ… Sender contract sends to any address
  • โœ… Demo shows "Success Rate: 100%"

๐Ÿšจ Troubleshooting

Common Issues

  • "Insufficient Balance": Fund wallets with TestNet ALGO
  • "Contract Not Found": Deploy contracts first
  • "Opt-in Required": Run opt-in commands before interactions

Screenshots

image

Quick Fixes

# Check what's deployed
python ogc_demo.py โ†’ option 7

# Check wallet balances
python check_any_balance.py โ†’ option 5

# Get help
python ogc_demo.py โ†’ follow menu options

๐ŸŽฏ Getting Started

  1. Setup environment (activate venv, install deps)
  2. Fund wallets (get TestNet ALGO)
  3. Run demo (python ogc_demo.py)
  4. Deploy contracts (follow prompts)
  5. Test features (use interaction scripts)

Ready to explore the OGC ecosystem! ๐Ÿš€โœจ


Built for Algorand Hackathon - Complete DeFi ecosystem on TestNet

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages