A Next.js + FastAPI application for generating and managing ERC7730 descriptors.
api/
└── index.py # FastAPI backend
contracts/ # Smart contract files
graph/ # Subgraph for contract events
llm/ # LLM integration
public/ # Static assets
src/ # Next.js frontend
├── app/ # Next.js App Router
├── components/ # React components
└── ...
- Frontend: Next.js, React, TypeScript, Tailwind CSS
- Backend: FastAPI (Python), Go API
- Smart Contracts: Foundry, Solidity
- Deployment: Vercel (frontend), Railway (backend)
- Node.js (v18 or higher)
- Python 3.12
- npm or yarn
-
Clone the repository:
git clone https://github.com/yourusername/Kai-Sign.git cd Kai-Sign -
Install dependencies:
npm install
-
Set up Python environment:
npm run setup-venv
-
Set up environment variables:
- Copy the
.env.examplefile to.env - Update the values in
.envwith your own configuration
- Copy the
Start the development server:
npm run devVisit http://localhost:3000 in your browser.
- Push your code to a GitHub repository
- Connect your repository to Vercel
- Configure environment variables in the Vercel dashboard
- Deploy from the Vercel dashboard or use the Vercel CLI
- Connect your repository to Railway
- Configure environment variables in the Railway dashboard
- Deploy from the Railway dashboard or use the Railway CLI
For detailed deployment instructions, see DEPLOYMENT.md.
POST /api/py/generateERC7730: Generate ERC7730 descriptorGET /api/healthcheck: Health check endpoint
- Fork the repository
- Create your feature branch:
git checkout -b feature/your-feature - Commit your changes:
git commit -m 'Add your feature' - Push to the branch:
git push origin feature/your-feature - Submit a pull request