{"id":30232373,"url":"https://github.com/kevin5621/origin-stamp-icp","last_synced_at":"2025-08-14T23:57:55.514Z","repository":{"id":304274967,"uuid":"1017862007","full_name":"Kevin5621/origin-stamp-icp","owner":"Kevin5621","description":"Proof of Human Process\" protocol built on the Internet Computer (ICP). OriginStamp allows creators to generate immutable on-chain certificates of origin for their work, fighting digital forgery and proving authenticity in the age of AI","archived":false,"fork":false,"pushed_at":"2025-08-14T15:57:02.000Z","size":13921,"stargazers_count":3,"open_issues_count":0,"forks_count":2,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-08-14T17:36:43.521Z","etag":null,"topics":["art","authenticity","blockchain","crypto","daaps","digital-identity","hackathon","icp","nft","proof-of-process","provenance","react","rust","rwa","scss","typescript","web3"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Kevin5621.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-07-11T08:05:15.000Z","updated_at":"2025-08-14T15:57:06.000Z","dependencies_parsed_at":"2025-08-14T17:34:10.640Z","dependency_job_id":null,"html_url":"https://github.com/Kevin5621/origin-stamp-icp","commit_stats":null,"previous_names":["kevin5621/origin-stamp-icp"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Kevin5621/origin-stamp-icp","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Kevin5621%2Forigin-stamp-icp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Kevin5621%2Forigin-stamp-icp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Kevin5621%2Forigin-stamp-icp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Kevin5621%2Forigin-stamp-icp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Kevin5621","download_url":"https://codeload.github.com/Kevin5621/origin-stamp-icp/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Kevin5621%2Forigin-stamp-icp/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":270500676,"owners_count":24595163,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-14T02:00:10.309Z","response_time":75,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["art","authenticity","blockchain","crypto","daaps","digital-identity","hackathon","icp","nft","proof-of-process","provenance","react","rust","rwa","scss","typescript","web3"],"created_at":"2025-08-14T23:57:18.255Z","updated_at":"2025-08-14T23:57:55.503Z","avatar_url":"https://github.com/Kevin5621.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# OriginStamp: Verifying Creation, Elevating Value\n\n\u003e Building the foundational trust layer for the new creative economy. As generative AI blurs the line between human and machine, OriginStamp provides a \"Proof-of-Process\" protocol, allowing creators to generate unforgeable on-chain histories for their work.\n\n## 🎯 Project Overview\n\nOriginStamp is a revolutionary decentralized protocol that addresses the fundamental crisis of trust in the digital creative economy. In an age where AI-generated content blurs the line between human and machine creation, OriginStamp provides a \"Proof-of-Process\" protocol that allows creators to generate unforgeable, on-chain histories for their work.\n\n## 🚨 The Problem: The Digital Authenticity Crisis\n\nIn the age of advanced generative AI, the digital world faces a fundamental crisis of trust:\n\n- **Indistinguishable Content**: It's becoming increasingly difficult to distinguish authentic, human-created work from AI-generated content\n- **Devalued Human Creativity**: The flood of AI content devalues the skill, time, and creativity of human artists, writers, and developers\n- **Provenance Issues**: Significant challenges for copyright, digital commerce, and intellectual property protection\n- **Lack of Standards**: No reliable standard for verifying the true origin and effort behind digital assets\n\n## 💡 Our Solution: A Paradigm Shift\n\nOriginStamp is **not** an AI detection tool. Instead, we offer a more fundamental and proactive solution: a decentralized protocol for **Proof of Human Process**.\n\nWe provide creators with tools to generate an unforgeable, on-chain certificate of origin for any digital or physical work. This certificate doesn't just point to the final file; it contains the entire, immutable history of its creation process.\n\n## 🔧 How It Works: The Three Pillars of Trust\n\n### 1. Verified Identity \u0026 Session Initiation\n\nA creator begins by authenticating using **Internet Identity**, linking their secure, hardware-based identity to a new project. They initiate a \"Creation Session\" within the OriginStamp dApp, which creates a dedicated, secure on-chain log for their work.\n\n### 2. Immutable Process Logging\n\nThrough a simple plugin in their native creative software (e.g., Photoshop, VS Code, Ableton), key creative actions are automatically and periodically recorded to the project's on-chain log. These records can include metadata like \"New layer created,\" \"Brush tool used,\" periodic file hashes, or code commit hashes, each with an immutable timestamp.\n\n### 3. The Certificate NFT\n\nUpon completion, the creator finalizes the session. This action mints a final **Certificate NFT**. This NFT is a container holding the final asset's hash and, most importantly, a cryptographic link to the entire, unchangeable on-chain log of its creation process.\n\n## 🔍 The Verification Experience\n\nAnyone can verify an OriginStamp asset. By scanning a QR code or visiting a public verification page, a user is presented with a clear, interactive dashboard. This dashboard displays the full creation timeline, allowing a potential buyer or collector to see the entire history and compare the on-chain process data with the final work, providing unparalleled confidence in its authenticity.\n\n## 🌐 Why Internet Computer (ICP)?\n\nThis project is uniquely suited for the Internet Computer ecosystem for several critical reasons:\n\n- **Reverse Gas Model**: This is essential. It allows the platform to cover the small, frequent transaction costs of logging, providing a frictionless experience for creators. They can focus on creating, not on paying for every recorded action.\n- **On-Chain Data Storage**: ICP's architecture allows for the efficient and affordable storage of the extensive log data directly on-chain, ensuring the provenance record is truly permanent and decentralized.\n- **Internet Identity**: Provides a built-in, secure, and user-friendly authentication system without the need for traditional seed phrases, which is crucial for linking a work to a real identity.\n- **Performance**: ICP's speed and fast finality are necessary to handle the real-time logging of creative actions without interrupting the creator's flow.\n\n## 🎯 Hackathon Goal (MVP)\n\nOur goal for the WCHL 2025 hackathon is to build a functional Minimum Viable Product that includes:\n\n- The core canisters for project initiation and immutable logging.\n- A proof-of-concept plugin for a web-based text editor.\n- The public-facing verification dashboard to display the on-chain process history.\n\n## 🚀 Technology Stack\n\nThis project is built with:\n\n- 🦀 **Rust-based Canister** backend\n- ⚛️ **React + TypeScript** frontend with modular architecture\n- 🎨 **Neumorphic Design System** for modern UI/UX\n- 🔐 **Internet Identity** authentication\n- 🧪 **Full Test Suite**: Vitest + PocketIC for backend and frontend\n- 🔁 **CI/CD** with GitHub Actions for automated tests and code quality\n- 📚 **Comprehensive Documentation** for all components\n\n---\n\n## 📜 Table of Contents\n\n- [🚀 Getting Started](#-getting-started)\n- [📁 Project Structure](#-project-structure)\n- [✅ Testing Patterns](#-testing-patterns)\n- [🔄 CI/CD Workflow](#-cicd-workflow)\n- [🔗 Resources \u0026 Documentation](#-learning-resources)\n\n---\n\n## 🚀 Getting Started\n\n### 🧑‍💻 1. Development Environment Setup\n\nA **devcontainer** is preconfigured for you to start coding instantly!\n\n- Click on \"Use this Template\" → \"Create a new repository\".\n- Click \"Code → Open with Codespaces\"\n- Change machine type to 4-core 16GB RAM • 32GB\n- Once the codespace is created, you can open it in VS Code Local\n- Everything is pre-installed and ready for you to run the following commands\n\n### 2. Install Dependencies\n\n```bash\nnpm install\n```\n\n### 3. Start Local Development\n\n#### Option A: Quick Development (Recommended)\n\n```bash\n# Start everything for development (DFX + Backend + Frontend)\nnpm run dev\n```\n\n#### Option B: Full Deployment (Production-like)\n\n```bash\n# Deploy everything (backend + frontend)\nnpm run deploy\n```\n\n#### Option C: Step-by-Step Deployment\n\n```bash\n# Start DFX local network\ndfx start --clean\n\n# In another terminal, deploy backend canisters\nnpm run deploy:backend\n\n# Deploy frontend\nnpm run deploy:frontend\n```\n\n### 4. Development Workflow\n\n```bash\n# For daily development (starts DFX, deploys backend, starts frontend)\nnpm run dev\n\n# For frontend development only (if backend is already running)\nnpm start\n```\n\n### 5. Run Tests\n\n```bash\n# Run all tests\nnpm test\n\n# Run specific test suites\nnpm run test:frontend    # Frontend tests only\nnpm run test:backend     # Backend tests only\n```\n\n## 📚 Documentation\n\nComprehensive documentation is available in the `docs/` folder:\n\n- [📖 Project Overview](./docs/project-overview.md) - High-level project description\n- [🎨 UI Components](./docs/frontend/ui-components.md) - Design system and components\n- [🛠️ Development Setup](./docs/development/development-setup.md) - Development environment guide\n\n---\n\n## 📁 Project Structure\n\n```\nOriginStamp/\n├── .devcontainer/devcontainer.json       # Container config for development\n├── .github/workflows/                    # GitHub CI/CD pipelines\n├── docs/                                 # 📚 Comprehensive documentation\n│   ├── project-overview.md              # Project description and goals\n│   ├── frontend/                        # Frontend component documentation\n│   ├── backend/                         # Backend architecture docs\n│   ├── testing/                         # Testing strategies and guides\n│   ├── development/                     # Development setup and processes\n│   └── api/                             # API documentation\n├── src/\n│   ├── backend/                         # 🦀 Rust backend canister\n│   │   ├── src/\n│   │   │   └── lib.rs                   # Main Rust file\n│   │   └── Cargo.toml                   # Rust dependencies\n│   ├── frontend/                        # ⚛️ React + TypeScript frontend\n│   │   ├── src/\n│   │   │   ├── App.tsx                  # Main App component\n│   │   │   ├── pages/                   # 📄 Page components (modular)\n│   │   │   │   ├── landing/            # Landing page\n│   │   │   │   ├── auth/               # Authentication pages\n│   │   │   │   └── dashboard/          # Dashboard pages\n│   │   │   ├── components/             # 🧩 Reusable UI components\n│   │   │   │   ├── login/              # Authentication components\n│   │   │   │   ├── profile/            # User profile components\n│   │   │   │   ├── common/             # Common UI elements\n│   │   │   │   └── ui/                 # UI components\n│   │   │   ├── contexts/               # React contexts\n│   │   │   ├── hooks/                  # Custom React hooks\n│   │   │   ├── services/               # API service layers\n│   │   │   ├── types/                  # TypeScript type definitions\n│   │   │   ├── utils/                  # Utility functions\n│   │   │   └── css/                    # 🎨 ITCSS styling architecture\n│   │   ├── assets/                     # Static assets (images, icons)\n│   │   ├── tests/                      # Frontend unit tests\n│   │   ├── index.html                  # Frontend entry point\n│   │   ├── main.tsx                    # React main file\n│   │   ├── package.json                # Frontend dependencies\n│   │   ├── tsconfig.json               # TypeScript configuration\n│   │   ├── vite.config.ts              # Vite build configuration\n│   │   └── vite-env.d.ts               # Vite type definitions\n│   └── declarations/                   # Auto-generated canister interfaces\n├── tests/\n│   ├── src/                            # Backend test files\n│   ├── backend-test-setup.ts           # PocketIC instance\n│   └── vitest.config.ts                # Vitest configuration\n├── scripts/\n│   ├── start.sh                        # 🚀 Full deployment script\n│   ├── dev-container-setup.sh          # Development environment setup\n│   └── generate-candid.sh              # Candid generation script\n├── dfx.json                            # ICP configuration\n├── Cargo.toml                          # Root Rust workspace config\n├── package.json                        # Project dependencies and scripts\n└── CHANGELOG.md                        # Project changelog\n```\n\n---\n\n## 🔄 CI/CD Workflow\n\nLocated under `.github/workflows/`, this includes:\n\n- 🧪 Automated end-2-end test runs\n- 🔍 Code quality checks\n- 🚀 Automated deployment\n\n## 🧪 Testing Strategy\n\n### Frontend Testing\n\n- **Component Testing**: Individual component tests with React Testing Library\n- **Integration Testing**: User flow and interaction tests\n- **E2E Testing**: Complete user journey testing\n\n### Backend Testing\n\n- **Unit Testing**: Individual function and method tests\n- **Integration Testing**: Canister interaction tests\n- **PocketIC Testing**: Local blockchain simulation\n\n## 🎨 Design System\n\n### Neumorphic Design\n\n- **Soft UI**: Subtle shadows and highlights\n- **Consistent Spacing**: 8px grid system\n- **Color Palette**: Light/dark theme support\n- **Typography**: Clear hierarchy and readability\n\n### Component Library\n\n- **Reusable Components**: Button, Card, Modal, Toast\n- **Form Elements**: Input, Select, Checkbox\n- **Navigation**: Header, Sidebar, Breadcrumbs\n- **Feedback**: Loading, Error, Success states\n\n## 🚀 Deployment\n\n### Local Development\n\n```bash\n# Full deployment\nnpm run deploy\n\n# Step-by-step\nnpm run deploy:backend\nnpm run deploy:frontend\n```\n\n### Production Deployment\n\n- **Internet Computer**: Mainnet deployment\n- **Environment Variables**: Secure configuration\n- **Monitoring**: Performance and error tracking\n\n## 📚 Learning Resources\n\n- [ICP Dev Docs](https://internetcomputer.org/docs)\n- [Rust CDK](https://internetcomputer.org/docs/current/developer-docs/backend/rust/)\n- [React Documentation](https://react.dev/)\n- [TypeScript Handbook](https://www.typescriptlang.org/docs/)\n- [Vite Build Tool](https://vitejs.dev/)\n- [Vitest Testing Framework](https://vitest.dev/)\n\n## 🙏 Acknowledgments\n\n- **Internet Computer Foundation** for the amazing blockchain platform\n- **React Team** for the incredible frontend framework\n- **Rust Community** for the robust backend language\n- **Open Source Contributors** who make this possible\n\n---\n\n**Build the future of digital authenticity with OriginStamp! 🚀✨**\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkevin5621%2Forigin-stamp-icp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkevin5621%2Forigin-stamp-icp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkevin5621%2Forigin-stamp-icp/lists"}