Skip to content

ScaffoldRust/CrowdFunding-Integration

Repository files navigation

CrowdFunding-Integration

A modern, full-stack template for building decentralized crowdfunding applications with Stellar blockchain integration and smart contracts.

🚀 Overview

This template provides a complete foundation for creating crowdfunding platforms that leverage the Stellar blockchain for secure, transparent, and efficient fundraising campaigns. Built with Next.js, TypeScript, and modern web technologies, it offers a robust starting point for developers looking to build DeFi crowdfunding solutions.

✨ Features

  • Stellar Smart Contract Integration: Seamless integration with Stellar blockchain for secure transactions
  • Modern Web Stack: Built with Next.js 15, React 19, and TypeScript
  • Responsive Design: Mobile-first approach with Tailwind CSS
  • Monorepo Structure: Organized workspace for scalable development
  • Type Safety: Full TypeScript support throughout the application
  • Developer Experience: ESLint, Biome, and Husky for code quality
  • Fast Development: Turbopack for lightning-fast development builds

🛠️ Tech Stack

Frontend

  • Next.js 15 - React framework with App Router
  • React 19 - Latest React with concurrent features
  • TypeScript - Type-safe development
  • Tailwind CSS - Utility-first CSS framework

Development Tools

  • Bun - Fast JavaScript runtime and package manager
  • Biome - Fast formatter and linter
  • Husky - Git hooks for code quality
  • Commitlint - Conventional commit enforcement

Blockchain Integration

  • Stellar SDK - For blockchain interactions (to be added)
  • Smart Contracts - Stellar smart contracts for campaign logic (to be implemented)

🚀 Getting Started

Prerequisites

  • Bun (v1.1.0 or higher)
  • Node.js (v18 or higher)
  • Git

Installation

  1. Clone the repository

    git clone <repository-url>
    cd CrowdFunding-Integration
  2. Install dependencies

    bun install
  3. Start the development server

    bun run dev:web
  4. Open your browser Navigate to http://localhost:3000

📝 Available Scripts

Command Description
bun run dev:web Start the web app in development mode
bun run build:web Build the web app for production
bun run lint Run linting across the entire project
bun run format Format code using Biome
bun run format-and-lint:fix Format and fix linting issues

🎯 Crowdfunding Features (To Be Implemented)

Core Functionality

  • Campaign Creation: Create and manage crowdfunding campaigns
  • Smart Contract Integration: Automated escrow and release mechanisms
  • Stellar Payments: Native XLM and token support
  • Campaign Management: Dashboard for campaign creators
  • Backer Interface: User-friendly contribution system

Smart Contract Features

  • Escrow Management: Secure fund holding during campaigns
  • Automatic Refunds: Failed campaign refund mechanisms
  • Milestone Tracking: Progressive fund release based on milestones
  • Dispute Resolution: Built-in arbitration system

User Experience

  • Real-time Updates: Live campaign progress tracking
  • Mobile Responsive: Optimized for all device sizes
  • Wallet Integration: Seamless Stellar wallet connections
  • Transaction History: Complete audit trail

🔧 Configuration

Environment Variables

Create a .env.local file in the apps/web directory:

# Stellar Network Configuration
STELLAR_NETWORK=testnet  # or mainnet
STELLAR_HORIZON_URL=https://horizon-testnet.stellar.org

# Smart Contract Configuration
SMART_CONTRACT_ID=your_contract_id_here

# Application Configuration
NEXT_PUBLIC_APP_NAME=CrowdFunding App
NEXT_PUBLIC_APP_URL=http://localhost:3000

🧪 Testing

# Run tests (to be implemented)
bun test

# Run tests in watch mode
bun test --watch

📦 Deployment

Vercel (Recommended)

  1. Push your code to GitHub
  2. Connect your repository to Vercel
  3. Deploy automatically on every push

Manual Deployment

# Build the application
bun run build:web

# Start production server
bun run start:web

🤝 Contributing

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

🆘 Support

🔗 Related Links

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 5