BLA
BLA는 오픈소스 Blue Defense MCP와 CLI로, 소프트웨어 자산을 자동 AI 리버스 엔지니어링으로부터 보호합니다
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기메이커가 쓴 소개는 위의 한 줄이 전부입니다. 더 자세한 내용은 저장소 README에서 읽을 수 있습니다. 저장소 README ↗
README 전체를 불러오는 중입니다.
README 전문 보기 ↗Frontend for making attestations related to the OMA3 App Registry. Built with Next.js, TypeScript, and Reown AppKit for seamless wallet integration.
Licensing Notice
This initial version (v1) is released under MIT to maximize transparency and adoption.
OMA3 may license future versions of this reference implementation under different terms (for example, the Business Source License, BSL) if forks or incompatible implementations threaten to fragment the ecosystem or undermine the sustainability of OMA3.
OMA3 standards (such as specifications and schemas) will always remain open and are governed by OMA3’s IPR Policy.
git clone https://github.com/oma3dao/rep-attestation-frontend.git
cd rep-attestation-frontend
npm install
cp .env.example .env.local
# Edit .env.local with your values (see Environment Variables below)
Deploying to Vercel? For environment variable values, domain configuration, and Vercel project setup, see the Deployment Guide (Section 5). This README covers local development workflow.
npm run dev
npm run build
Open http://localhost:3000 to view the application.
Create a .env.local file in the root directory with the following variable:
# ThirdWeb Configuration (required)
# Get from https://thirdweb.com/dashboard
NEXT_PUBLIC_THIRDWEB_CLIENT_ID=your_thirdweb_client_id
.env.local fileThe wallet integration provides:
ConnectButton with all login options in a modalsrc/
├── app/ # Next.js app router pages
│ ├── api/ # Server-side API routes
│ │ ├── controller-witness-proxy/ # CORS proxy for controller witness
│ │ └── eas/ # EAS delegated attestation + nonce endpoints
│ ├── attest/ # Attestation creation pages
│ ├── dashboard/ # User dashboard (subjects, keys, attestations)
│ ├── publish/ # Publish attestation pages (by type)
│ ├── account/ # Account management
│ └── client.ts # ThirdWeb client configuration
├── components/ # Reusable React components
│ ├── ui/ # shadcn/ui base components
│ ├── dashboard/ # Dashboard-specific components
│ ├── home/ # Landing page components
│ └── ... # Form inputs, DID inputs, auth, attestation views
├── config/ # Configuration files
│ ├── chains.ts # Chain definitions (OMAChain mainnet/testnet/devnet)
│ ├── schemas.ts # Attestation schema definitions (generated)
│ ├── publish-categories.ts # Publish workflow categories
│ ├── subsidized-schemas.ts # Schemas eligible for gas subsidy
│ └── ... # Wallets, social platforms, home workflows
├── lib/ # Utility functions and business logic
│ ├── server/ # Server-only code (EAS routes, delegate key)
│ ├── utils/caip10/ # CAIP-10 address parsing and validation
│ ├── blockchain.ts # Wallet hooks and chain management
│ ├── eas.ts # EAS attestation helpers
│ ├── omatrust-backend.ts # Backend API client
│ ├── service-urls.ts # Chain-prefixed service URL derivation
│ └── service.ts # High-level attestation service layer
└── app/globals.css # Global styles (Tailwind)
npm run dev - Start development servernpm run build - Build for productionnpm run start - Start production servernpm run lint - Run ESLintnpm run update-schemas - Update schemas from JSON filesThis project uses JSON schemas to generate TypeScript attestation forms. Schema definitions live in the rep-attestation-tools-evm-solidity repository under schemas-json/. For the full authoring guide — OMA3 extensions (x-oma3-*), best practices, and example structures — see that repo's schemas-json/README.md.
When schema definitions change in rep-attestation-tools-evm-solidity, you need to regenerate the frontend schemas:
# 1. Generate EAS objects (run from the tools repo)
cd ../rep-attestation-tools-evm-solidity
npx hardhat generate-eas-object --schema schemas-json/<schema-name>.schema.json --network omachainTestnet
# 2. Update this frontend's schemas.ts
cd ../rep-attestation-frontend
npm run update-schemas ../rep-attestation-tools-evm-solidity
# 3. Copy to app-registry-frontend (schemas.ts must stay in sync)
cp src/config/schemas.ts ../app-registry-frontend/src/config/schemas.ts
If you also deployed the schema on-chain, the deployment UIDs and block numbers are picked up automatically from the generated/*.deployed.*.json files. See the tools repo README for the full deployment workflow.
*.schema.json files from the tools repo's schemas-json/ directorygenerated/*.eas.json filesgenerated/*.deployed.*.json filesx-oma3-* extensionssrc/config/schemas.ts with field definitions, deployed UIDs, and metadataThe script processes x-oma3-* extension fields from the JSON schemas (e.g., x-oma3-skip-reason, x-oma3-subtype, x-oma3-default, x-oma3-render). For the full reference on all supported extensions, see schemas-json/README.md in the tools repository.
Please read CONTRIBUTING.md for details on our code of conduct and the process for submitting pull requests.
The application targets:
Network configuration is in src/config/chains.ts. The active chain is determined by the NEXT_PUBLIC_ACTIVE_CHAIN environment variable, not the user's wallet.
Currently integrated:
For delegate wallet addresses and signing configuration details, see the Deployment Guide (Sections 3 and 9).
For local dev, set a raw private key in .env.local:
# Private key for EAS delegate wallet (local dev only)
EAS_DELEGATE_PRIVATE_KEY=0x...
# Optional: max gas per transaction (default: 300000)
MAX_GAS_PER_TX=300000
To generate a throwaway dev key:
node -e "console.log('0x' + require('crypto').randomBytes(32).toString('hex'))" > ~/.ssh/eas-delegate-key
chmod 600 ~/.ssh/eas-delegate-key
NEXT_PUBLIC_THIRDWEB_CLIENT_ID in your .env.local file