{"id":32861921,"url":"https://github.com/sudipbishwakarma/hackathon-infinite","last_synced_at":"2026-04-13T06:02:08.395Z","repository":{"id":322482399,"uuid":"1089652035","full_name":"SudipBishwakarma/hackathon-infinite","owner":"SudipBishwakarma","description":"Hackathon 2025 Infinite. RAG application for analyzing and optimizing PL/SQL scripts.","archived":false,"fork":false,"pushed_at":"2025-11-04T17:09:10.000Z","size":1279,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-11-04T19:05:21.487Z","etag":null,"topics":["azureopenai","fastapi","langchian","nextjs","nodejs","pinecone","python","sqlalchemy","sqlite"],"latest_commit_sha":null,"homepage":"","language":"Jupyter Notebook","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/SudipBishwakarma.png","metadata":{"files":{"readme":"README.md","changelog":null,"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,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-11-04T16:20:15.000Z","updated_at":"2025-11-04T17:14:57.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/SudipBishwakarma/hackathon-infinite","commit_stats":null,"previous_names":["sudipbishwakarma/hackathon-infinite"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/SudipBishwakarma/hackathon-infinite","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SudipBishwakarma%2Fhackathon-infinite","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SudipBishwakarma%2Fhackathon-infinite/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SudipBishwakarma%2Fhackathon-infinite/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SudipBishwakarma%2Fhackathon-infinite/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SudipBishwakarma","download_url":"https://codeload.github.com/SudipBishwakarma/hackathon-infinite/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SudipBishwakarma%2Fhackathon-infinite/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":283424652,"owners_count":26833720,"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-11-08T02:00:06.281Z","response_time":57,"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":["azureopenai","fastapi","langchian","nextjs","nodejs","pinecone","python","sqlalchemy","sqlite"],"created_at":"2025-11-08T22:01:01.790Z","updated_at":"2026-04-13T06:02:08.385Z","avatar_url":"https://github.com/SudipBishwakarma.png","language":"Jupyter Notebook","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Hackathon 2025 Infinite - PL/SQL Auditor Chatbot\n\nThis project is a full-stack application designed to audit and analyze PL/SQL scripts using AI. It leverages Retrieval-Augmented Generation (RAG) to compare PL/SQL logic against source and standard layout definitions, identifying mismatches, type issues, and missing mappings.\n\n## System Overview\n\n- **Knowledge Base**: Uses a vector store (Pinecone) to index data dictionaries and PL/SQL mapping scripts.\n- **RAG Architecture**: Combines hybrid search with LLMs (Azure OpenAI) to provide context-aware analysis.\n- **Auditor Capabilities**: \n  - Analyzes transformation logic and hardcoded values.\n  - Flags datatype mismatches and null-handling issues.\n  - Provides a chat interface for natural language Q\u0026A about the codebase and mappings.\n\n## Tech Stack\n\n- **Backend**: FastAPI (Python 3.9+)\n- **Frontend**: Next.js (TypeScript, React)\n- **AI/LLM**: Azure OpenAI, LangChain\n- **Knowledgebase/Vector Database**: Pinecone\n- **Conversation Memory**: SQLite (via SQLAlchemy)\n\n---\n\n## Getting Started\n\nSteps to set up and run the project locally.\n\n### Prerequisites\n\n- **Python**: 3.9 or higher\n- **Node.js**: 18.x or higher\n- **Package Manager**: `npm` (included with Node.js) or `pnpm`/`yarn`\n- **Pinecone**: Pinecone account and API keys\n- **Azure OpenAI**: Azure OpenAI account and API keys\n\n### Installation\n\n1. **Clone the repository**:\n   ```bash\n   git clone https://github.com/SudipBishwakarma/hackathon-infinite.git\n   cd hackathon-infinite\n   ```\n\n2. **Set up the Backend**:\n   - (Optional) Create a virtual environment:\n     ```bash\n     python -m venv venv\n     source venv/bin/activate  # On Windows: .\\venv\\Scripts\\activate\n     ```\n   - Install Python dependencies:\n     ```bash\n     pip install -r requirements.txt\n     ```\n\n3. **Set up the Frontend**:\n   - Navigate to the frontend directory and install packages:\n     ```bash\n     cd frontend\n     npm install\n     ```\n\n### Environment Configuration\n\n1. **Backend**: \n   - Copy the `.env.example` to `.env` in the root directory.\n   - Fill in your Azure OpenAI, Pinecone, and Database credentials.\n\n2. **Frontend**:\n   - Navigate to `frontend/` and copy `.env.local.sample` to `.env.local`.\n   - Replace the domain or ip with your API URL.\n\n---\n\n## Running the Servers\n\n### 1. Start the Backend (FastAPI)\n\nFrom the project root:\n```bash\ncd api\nuvicorn main:app\n```\nThe API will be available at `http://localhost:8000`. You can view the interactive documentation (Swagger UI) at `http://localhost:8000/docs`.\n\n### 2. Start the Frontend (Next.js)\n\nOpen a new terminal and navigate to the `frontend` directory:\n```bash\ncd frontend\nnpm run dev\n```\nThe application will be accessible at `http://localhost:3000`.\n\n---\n\n## Example Use Cases\n\n- **Logic Validation**: *\"Does this script map 'payer_id' correctly according to the standard layout?\"*\n- **Constraint Checking**: *\"Flag columns where null values are not handled but the target is NOT NULL.\"*\n- **Schema Discovery**: *\"Which source layouts map to version 3.2 of the standard format?\"*\n\n## Project Structure\n\n- `api/`: FastAPI backend implementation (controllers, RAG logic, utilities).\n- `data/`: Knowledgebase (sample sql scripts and data dictionaries).\n- `frontend/`: Next.js frontend application.\n- `src/`: Jupyter notebooks for prototyping and testing.\n- `requirements.txt`: Python dependencies.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsudipbishwakarma%2Fhackathon-infinite","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsudipbishwakarma%2Fhackathon-infinite","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsudipbishwakarma%2Fhackathon-infinite/lists"}