MCVETool is a comprehensive visa evaluation platform that helps users assess their visa eligibility across multiple countries using AI-powered document analysis.
- optimizations on RAG/Lang-Graph Layer
- currenlty response getts hang on untill result comes in eventually i can implment SSE which will be user or file specific to inform that waht current process is going on in the frontend it self
- PineCone Sementic search can be implemtnted may be two layer of EMBEEDDINGDS stroing
- Paraller workflow for Live Search and Vector DB Exploration part
- ETC.......
Copy the environment example files and add your API keys:
cp apps/server/.env.example apps/server/.env
cp apps/web/.env.example apps/web/.envEdit the .env files and add your required API keys:
- Google Vertex AI API key
- Google Generative AI API key
- Pinecone API key
- MongoDB connection string
- Email service credentials
Install all dependencies:
bun installPush the database schema:
bun run db:pushStart the development servers:
bun run devThis will start both the backend API (port 3000) and web application (port 3001).
Alternatively, run them separately:
- Backend only:
bun run dev:server - Frontend only:
bun run dev:web
mcvetool/
├── apps/
│ ├── server/ # Backend API (Express + TypeScript)
│ │ ├── src/
│ │ │ ├── agent/ # AI workflow and LangGraph orchestration
│ │ │ │ ├── graph/ # Workflow state management
│ │ │ │ ├── nodes/ # Individual workflow steps
│ │ │ │ ├── client.ts # LLM client configuration
│ │ │ │ ├── tools/ # Document processing tools
│ │ │ │ └── pinecone/ # Vector database operations
│ │ │ ├── controllers/ # API route handlers
│ │ │ ├── routes/ # Express route definitions
│ │ │ ├── services/ # Business logic services
│ │ │ ├── embedding/ # Text embedding client
│ │ │ ├── vector/ # Vector database client
│ │ │ └── index.ts # Server entry point
│ │ └── .env.example # Environment variables template
│ └── web/ # Frontend (Next.js + React)
│ ├── src/
│ │ ├── app/ # Next.js app router
│ │ ├── components/ # React components
│ │ ├── hooks/ # Custom React hooks
│ │ └── lib/ # Utility functions
│ └── .env.example # Environment variables template
├── packages/
│ ├── axios/ # HTTP client package
│ ├── config/ # Shared configuration
│ ├── db/ # Database client and Prisma setup
│ └── types/ # Shared TypeScript types and Zod schemas
├── .ruler/ # Project configuration
├── .husky/ # Git hooks
└── turbo.json # Turborepo build configuration