PayChain is a modern decentralized payment application with a beautiful Web3 UI. The application supports both Motoko (Internet Computer) and FastAPI (Python) backends, allowing flexible deployment options.
PayChain/
├── docker-compose.yml # Docker Compose file for running both services
├── src/
│ ├── PayChain_backend/ # Original Motoko backend
│ ├── PayChain_backend_python/ # New FastAPI backend
│ └── PayChain_frontend/ # React frontend with Material-UI
- User authentication and management
- Send and receive payments
- Transaction history and tracking
- Payment templates with conditional processing
- Beautiful, responsive UI with Web3 aesthetics
- Dockerized deployment for easy setup
The FastAPI backend provides a modern, high-performance API with:
- JWT authentication
- SQLAlchemy ORM for database operations
- Pydantic for data validation
- Comprehensive API documentation (Swagger UI)
- Easy testing and extensibility
The original Motoko backend provides:
- Blockchain-based authentication and storage
- Decentralized architecture
- Smart contracts for payment logic
- Native token support
- Clone the repository
- Run the application with Docker Compose:
docker-compose up
- Access the frontend at http://localhost:3000
- The API documentation is available at http://localhost:8001/docs
cd src/PayChain_backend_python
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
pip install -r requirements.txt
python initialize_db.py
python run.py
cd src/PayChain_frontend
npm install
npm start
The frontend is built with:
- React with TypeScript
- Material-UI for components
- Framer Motion for animations
- Zustand for state management
- FastAPI framework
- SQLAlchemy ORM
- JWT authentication
- Pydantic for validation
- Internet Computer SDK
- Motoko programming language
- Candid interface definition
MIT