Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 4 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -53,14 +53,14 @@ The section below is **auto-generated from [`registry.json`](./registry.json)**.
<!-- REGISTRY:START -->
<!-- Auto-generated by scripts/update-readme.mjs from registry.json. Do not edit by hand. -->

**Total:** 70 entries
• **22** kits (full apps)
**Total:** 71 entries
• **23** kits (full apps)
• **6** bundles (multi-flow pipelines)
• **42** templates (single flows)

---

#### 🚀 Kits (22)
#### 🚀 Kits (23)

| Name | Description | Author | Live Demo | Path |
|---|---|---|---|---|
Expand All @@ -83,6 +83,7 @@ The section below is **auto-generated from [`registry.json`](./registry.json)**.
| **Medical Assistant** | An AI-powered medical assistant chatbot that provides general medical information, symptom checks, and health guidance through a conversational interface built with Lamatic.ai. | Lamatic AI | — | [`/kits/medical-assistant`](./kits/medical-assistant) |
| **PageIndex NotebookLM — Vectorless Tree-Structured RAG** | Upload any PDF and chat with it using vectorless, tree-structured RAG powered entirely by Lamatic AI flows. No vector database, no external Python server, no chunking — just a hierarchical document index built from the table of contents. | Saurabh Tiwari | [![Live Demo](https://img.shields.io/badge/Live%20Demo-black?style=for-the-badge)](https://pageindex-notebooklm.vercel.app/) | [`/kits/pageindex-notebooklm`](./kits/pageindex-notebooklm) |
| **Poster Generation** | — | Naitik Kapadia | — | [`/kits/poster-generator`](./kits/poster-generator) |
| **ProjectPilot AI** | AI-powered final year project mentor guiding engineering students from project ideation through completion, including project recommendations, tech stack and architecture blueprints, and development roadmaps with documentation and viva/resume preparation. | Kishan C | — | [`/kits/projectpilot-ai`](./kits/projectpilot-ai) |
| **Reddit Scout** | Search Reddit for real product reviews and opinions. Get structured summaries of what real users are saying about any product or topic. | Reddit Scout | [![Live Demo](https://img.shields.io/badge/Live%20Demo-black?style=for-the-badge)](https://reddit-scout-tawny.vercel.app/) | [`/kits/reddit-scout`](./kits/reddit-scout) |
| **Stock Analysis Kit** | — | Naitik Kapadia | — | [`/kits/stock-analysis`](./kits/stock-analysis) |
| **System Design Analyzer** | AI-powered system design analyzer that identifies architectural issues and provides recommendations for scalable, resilient systems. | Lamatic.ai | — | [`/kits/system-design-analyzer`](./kits/system-design-analyzer) |
Expand Down
6 changes: 6 additions & 0 deletions kits/projectpilot-ai/.env.example
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
DISCOVERY_FLOW_ID="Your discovery-flow Flow ID"
BLUEPRINT_FLOW_ID="Your blueprint-flow Flow ID"
EXECUTION_FLOW_ID="Your execution-flow Flow ID"
LAMATIC_API_URL="Your Lamatic Project API URL"
LAMATIC_PROJECT_ID="Your Lamatic Project ID"
LAMATIC_API_KEY="Your Lamatic API Key"
141 changes: 141 additions & 0 deletions kits/projectpilot-ai/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,141 @@
# ProjectPilot AI — Final Year Project Mentor

ProjectPilot AI guides engineering students from picking a final year project through to being ready to build, document, and defend it. Give it your branch, interest, skill level, timeline, and team type, and it walks you through three grounded stages: project discovery, technical blueprinting, and execution planning.

> ProjectPilot AI is a planning aid. It does not write your code, guarantee project approval, or replace guidance from your actual project supervisor.

## What it solves

Choosing a final year project is often the hardest part — students either pick something too ambitious, too generic, or with no clear execution path. ProjectPilot AI turns a handful of inputs into a specific, buildable project idea with a concrete tech stack, a week-by-week roadmap, and interview/viva prep material — all grounded in the exact idea and stack chosen, not generic filler.

## Capabilities

- Generates 5-8 project ideas ranked by difficulty, industry relevance, and innovation score, based on branch, interest, skill level, duration, and team type.
- Recommends a specific frontend, backend, database, AI/ML framework, and deployment platform for a chosen idea, with an architecture explanation and relevant datasets/APIs.
- Produces a week-by-week development roadmap, a ~150-word abstract, five viva questions (beginner to advanced), and three ATS-friendly resume bullet points — all explicitly grounded in the chosen project and its actual tech stack, never generic filler.

## Architecture

```text
Browser
→ Next.js form (branch, interest, skill level, duration, team type)
→ Lamatic SDK
→ discovery-flow (API Request → Generate JSON → API Response)
→ user selects an idea
→ Lamatic SDK
→ blueprint-flow (API Request → Generate JSON → API Response)
→ user confirms
→ Lamatic SDK
→ execution-flow (API Request → Generate JSON → API Response)
→ final results screen (roadmap, abstract, viva questions, resume bullets)
```

Three independent, sequentially-chained Lamatic flows, each with its own trigger, structured-output LLM node, and response mapping.

### Flow inputs

**discovery-flow**

| Input | Type | Description |
|---|---|---|
| `branch` | string | Engineering branch (e.g. CSE, AIML, ECE, IT) |
| `interest` | string | Area of interest (e.g. AI/ML, Web Development, IoT) |
| `skillLevel` | string | Beginner, Intermediate, or Advanced |
| `duration` | string | 1 month, 3 months, or 6 months |
| `teamType` | string | Individual or Team |

**blueprint-flow**

| Input | Type | Description |
|---|---|---|
| `selectedIdea` | string | Title of the chosen project idea |
| `skillLevel` | string | Beginner, Intermediate, or Advanced |

**execution-flow**

| Input | Type | Description |
|---|---|---|
| `selectedIdea` | string | Title of the chosen project idea |
| `blueprint` | string | JSON-stringified blueprint from blueprint-flow |
| `duration` | string | Project timeline |

## Repository structure

```text
projectpilot-ai/
├── apps/ # Next.js application
├── constitutions/ # Agent-level behavioral guardrails
├── flows/ # discovery-flow.ts, blueprint-flow.ts, execution-flow.ts
├── model-configs/ # Generate JSON model configuration per flow
├── prompts/ # Externalized system and user prompts per flow
├── agent.md # Agent identity and operations reference
└── lamatic.config.ts # AgentKit metadata and flow setup
```

## Prerequisites

- Node.js 18 or later
- npm 9 or later
- A Lamatic account and deployed copies of `discovery-flow`, `blueprint-flow`, and `execution-flow`
- A configured structured-generation model credential in Lamatic (this kit uses Groq's `llama-3.3-70b-versatile`)

## Lamatic setup

1. Import or recreate the three flows in `flows/` in Lamatic Studio.
2. Configure each flow's Generate JSON node with a supported model credential.
3. Test each flow with sample input matching the schemas above.
4. Deploy all three flows.
5. Copy each Flow ID, plus the Project ID, project API endpoint, and a Lamatic API key.

Provider credentials (e.g. Groq keys) stay inside Lamatic. They are not application environment variables.

## Application setup

```bash
cd kits/projectpilot-ai/apps
cp .env.example .env.local
npm install --legacy-peer-deps
npm run dev
```

Fill in `apps/.env.local`:

```env
DISCOVERY_FLOW_ID=your_discovery_flow_id
BLUEPRINT_FLOW_ID=your_blueprint_flow_id
EXECUTION_FLOW_ID=your_execution_flow_id
LAMATIC_API_URL=your_lamatic_project_api_url
LAMATIC_PROJECT_ID=your_lamatic_project_id
LAMATIC_API_KEY=your_lamatic_api_key
```

Open `http://localhost:3000`. Real credentials belong only in `.env.local` and deployment secrets; never commit them.

## Validation

From `apps/`:

```bash
npm run build
```

Recommended acceptance tests:

1. Submit the form with a specific branch/interest combination and confirm the returned ideas are plausible and varied, not repeated templates.
2. Select an idea and confirm the blueprint explicitly names that idea and recommends a coherent stack for it.
3. Generate the execution plan and confirm the abstract, roadmap, viva questions, and resume bullets all reference the specific project name and its actual tech stack — not generic machine-learning boilerplate.
4. Run the form twice with different inputs and confirm the two runs produce meaningfully different, appropriately grounded output.

## Known limitations

- Project ideas, tech stack recommendations, and roadmaps are AI-generated suggestions and should be reviewed by a project supervisor before formal submission.
- Duration estimates are approximate and may not account for institution-specific milestones.
- The tool does not verify real-world dataset availability or licensing terms for suggested datasets.

## Deployment

Deploy `kits/projectpilot-ai/apps` as the Vercel root directory and configure the six application environment variables listed above.

## Responsible use

Use ProjectPilot AI to accelerate project selection and planning, then validate the chosen idea and roadmap with your actual project supervisor or mentor before committing to it.
110 changes: 110 additions & 0 deletions kits/projectpilot-ai/agent.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,110 @@
# ProjectPilot AI Agent

## Overview

ProjectPilot AI is a three-stage agentic mentor for engineering students planning their final year project. It moves a student from raw preferences (branch, interest, skill level, duration, team type) to a specific project idea, a grounded technical blueprint, and a complete execution plan — with every stage explicitly conditioned on the student's actual choices, not generic templates.

## Purpose

Final year project planning tools often stop at idea generation and leave the student to figure out the stack, timeline, and defense prep alone. ProjectPilot AI chains three purpose-built agents so each stage builds on the confirmed output of the last, while enforcing that every output stays grounded in the specific project and technologies chosen — a deliberate guardrail added after early testing showed generic LLM output ignoring the actual selected project.

## Flow 1: Discovery

### Trigger
The synchronous API Request accepts `branch`, `interest`, `skillLevel`, `duration`, and `teamType`.

### Processing
The Generate JSON node produces 5-8 ranked project ideas, each with a difficulty rating, industry relevance, and an innovation score out of 10, tailored to the student's inputs.

### Response
The API Response exposes `ideas` — an array of `{ title, difficulty, industryRelevance, innovationScore }`.

### When to use
Use at the start of final year project planning, once a student knows their branch and rough area of interest but hasn't committed to a specific idea.

### Dependencies
- Lamatic synchronous API runtime
- A structured-output-capable generative model (this kit uses Groq `llama-3.3-70b-versatile`)

## Flow 2: Blueprint

### Trigger
The synchronous API Request accepts `selectedIdea` and `skillLevel`.

### Processing
The Generate JSON node recommends a frontend, backend, database, AI/ML framework, and deployment platform specific to the chosen idea, along with a short architecture explanation and 2-3 relevant datasets or APIs.

### Response
The API Response exposes `frontend`, `backend`, `database`, `aiFrameworks`, `deployment`, `architectureExplanation`, and `datasets`.

### When to use
Use immediately after a student selects one idea from the Discovery stage.

### Dependencies
- Lamatic synchronous API runtime
- The same structured-output-capable generative model as Discovery

## Flow 3: Execution

### Trigger
The synchronous API Request accepts `selectedIdea`, `blueprint` (JSON-stringified output from Blueprint), and `duration`.

### Processing
The Generate JSON node produces a week-by-week roadmap, a ~150-word abstract, five viva questions (beginner to advanced), and three ATS-friendly resume bullet points — all required to explicitly reference the specific project and its actual technology stack rather than a generic or unrelated project template.

### Response
The API Response exposes `roadmap` (array of `{ week, task }`), `abstract`, `vivaQuestions`, and `resumeBullets`.

### When to use
Use once the student has confirmed the technical blueprint and is ready to plan execution and defense prep.

### Dependencies
- Lamatic synchronous API runtime
- The same structured-output-capable generative model as the other two flows

## Guardrails

- Never generate a generic or unrelated project — every output across all three flows must explicitly reference the specific project idea and, where applicable, the confirmed technology stack.
- Never fabricate an idea, stack recommendation, or roadmap step that ignores the student's stated branch, interest, skill level, or duration.
- Treat the student's inputs as the sole source of truth for grounding; do not default to common training-data patterns (e.g. generic "machine learning project" templates) when specific input is provided.
- Recommendations are suggestions for a student and their supervisor to evaluate — never present output as a guarantee of project approval or academic success.
- Avoid recommending datasets, APIs, or tools that require paid licenses without noting the cost.

## Integration reference

| Service | Purpose | Credential |
|---|---|---|
| Lamatic API | Executes the three deployed flows | `LAMATIC_API_KEY` |
| Lamatic project | Selects the project runtime | `LAMATIC_PROJECT_ID`, `LAMATIC_API_URL` |
| Deployed flows | Selects each stage's workflow | `DISCOVERY_FLOW_ID`, `BLUEPRINT_FLOW_ID`, `EXECUTION_FLOW_ID` |
| Model provider | Produces schema-constrained output | Stored in Lamatic (Groq), never in the app |

## Environment setup

| Variable | Required | Source | Purpose |
|---|:---:|---|---|
| `LAMATIC_API_KEY` | Yes | Lamatic Settings → API Keys | Authenticates server-side flow execution. |
| `LAMATIC_PROJECT_ID` | Yes | Lamatic project settings/API Docs | Identifies the deployed project. |
| `LAMATIC_API_URL` | Yes | Lamatic API Docs | Base endpoint for the project runtime. |
| `DISCOVERY_FLOW_ID` | Yes | Flow menu → Copy Flow ID | Identifies the discovery-flow deployment. |
| `BLUEPRINT_FLOW_ID` | Yes | Flow menu → Copy Flow ID | Identifies the blueprint-flow deployment. |
| `EXECUTION_FLOW_ID` | Yes | Flow menu → Copy Flow ID | Identifies the execution-flow deployment. |

## Quickstart

1. Deploy all three Lamatic flows and configure their shared model credential.
2. Copy `apps/.env.example` to `apps/.env.local`.
3. Fill the six required Lamatic values.
4. Run `npm install --legacy-peer-deps` from `apps/`.
5. Run `npm run dev` and open the local URL.
6. Fill the form, generate ideas, select one, review the blueprint, then generate the execution plan.

## Common failure modes

| Symptom | Likely cause | Fix |
|---|---|---|
| Blueprint or execution fields render empty | Wrong Flow ID in `.env.local`, or the API Response node's output mapping is missing a field | Verify each `*_FLOW_ID` matches the correct flow in Studio; check Output Variables mapping on the API Response node. |
| Roadmap/abstract reference a generic or unrelated project | Prompt isn't strongly grounding output in the specific input | Strengthen the system/user prompt to explicitly forbid generic output, as done in this kit's `execution-flow` prompt. |
| "Missing environment variable" error | One or more application environment variables are missing | Compare `.env.local` with `.env.example` and restart the dev server. |
| Deploy fails with a generic Edge deployment error | Transient Lamatic platform issue, or the flow's Active toggle is off | Confirm the flow is toggled Active before deploying; retry; check status.lamatic.ai. |
| Model returns invalid JSON | Prompt is too long/complex for the model to follow reliably | Simplify the prompt while keeping the core grounding instruction. |
6 changes: 6 additions & 0 deletions kits/projectpilot-ai/apps/.env.example
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
DISCOVERY_FLOW_ID="Your discovery-flow Flow ID"
BLUEPRINT_FLOW_ID="Your blueprint-flow Flow ID"
EXECUTION_FLOW_ID="Your execution-flow Flow ID"
LAMATIC_API_URL="Your Lamatic Project API URL"
LAMATIC_PROJECT_ID="Your Lamatic Project ID"
LAMATIC_API_KEY="Your Lamatic API Key"
28 changes: 28 additions & 0 deletions kits/projectpilot-ai/apps/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.

# dependencies
/node_modules

# next.js
/.next/
/out/

# production
/build

# debug
npm-debug.log*
yarn-debug.log*
yarn-error.log*
.pnpm-debug.log*

# env files
.env*
!.env.example

# vercel
.vercel

# typescript
*.tsbuildinfo
next-env.d.ts
Loading
Loading