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
4 changes: 4 additions & 0 deletions kits/assistant/ai-career-copilot/.env.example
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
LAMATIC_API_KEY=YOUR_API_KEY
LAMATIC_PROJECT_ID=YOUR_PROJECT_ID
LAMATIC_API_URL=https://your-project.lamatic.dev/graphql
LAMATIC_FLOW_ID=YOUR_FLOW_ID
41 changes: 41 additions & 0 deletions kits/assistant/ai-career-copilot/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
# dependencies
/node_modules
/.pnp
.pnp.js
.yarn/install-state.gz

# testing
/coverage

# next.js
/.next/
/out/

# production
/build

# misc
.DS_Store
*.pem

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

# local env files
.env*.local
.env

# vercel
.vercel

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

.env
.env.local
node_modules
.vscode
.next
165 changes: 165 additions & 0 deletions kits/assistant/ai-career-copilot/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,165 @@
# πŸš€ AI Career Copilot

An AI-powered career assistant that analyzes resumes and provides personalized career guidance including skill analysis, job recommendations, learning roadmaps, project suggestions, and interview preparation.

---

## ✨ Features

* 🎯 **Skill Analysis** – Extract and analyze skills from resumes
* πŸ“Š **Readiness Score** – Evaluate how job-ready you are
* πŸ’Ό **Role Suggestions** – Get suitable job roles
* πŸ—ΊοΈ **Learning Roadmap** – Step-by-step improvement plan
* πŸš€ **Project Ideas** – Build real-world portfolio projects
* πŸ’¬ **Interview Questions** – Practice with tailored questions

---

## πŸ›  Tech Stack

* **Frontend:** Next.js, React, Tailwind CSS
* **Backend:** Lamatic AI Flow (GraphQL API)
* **API Communication:** Axios

---

## πŸ“¦ Prerequisites

* Node.js 18+
* npm
* Lamatic Account
* Deployed Lamatic Flow

---

## βš™οΈ Installation

1. **Clone the repository**

```bash
git clone https://github.com/Lamatic/AgentKit.git
cd AgentKit/kits/assistant/ai-career-copilot
```

2. **Install dependencies**

```bash
npm install
```

3. **Setup environment variables**

```bash
cp .env.example .env
```

4. **Add your Lamatic credentials in `.env`**

```env
LAMATIC_API_KEY=YOUR_API_KEY
LAMATIC_PROJECT_ID=YOUR_PROJECT_ID
LAMATIC_API_URL=YOUR_API_URL
AGENTIC_GENERATE_CONTENT=YOUR_FLOW_ID
```

5. **Run the project**

```bash
npm run dev
```

---

## πŸ§ͺ Usage

1. Enter your **resume text**
2. Select your **target domain** (e.g., Web Development)
3. Click **Analyze**
4. Get:

* Skills
* Missing skills
* Roles
* Roadmap
* Projects
* Interview questions

---

## πŸ“‚ Project Structure

```
ai-career-copilot/
β”œβ”€β”€ app/ # Next.js pages
β”œβ”€β”€ components/ # UI components
β”œβ”€β”€ actions/ # Server actions
β”œβ”€β”€ lib/ # Lamatic API client
β”œβ”€β”€ flows/ # Exported Lamatic flow
β”œβ”€β”€ .env.example # Environment template
β”œβ”€β”€ config.json # Kit configuration
└── README.md
```

---

## πŸ”— Lamatic Flow

* **Flow ID:** `66c98d92-70da-4eec-82b0-af4f01be9cd5`
* **Type:** Synchronous GraphQL Workflow

---

## 🌐 Deployment

You can deploy using Vercel:

* Set root directory:

```
kits/assistant/ai-career-copilot
```

* Add environment variables in Vercel dashboard

---

## πŸ“Œ Example Input

**Resume:**

```
I know JavaScript, React, and basic Node.js
```

**Domain:**

```
Web Development
```

---

## πŸ“ˆ Output Includes

* Skills & Missing Skills
* Career Roles
* Readiness Score
* Learning Roadmap
* Suggested Projects
* Interview Questions

---

## 🀝 Contribution

This project is built as part of a Lamatic AgentKit contribution.

---

## πŸ‘¨β€πŸ’» Author

**Durvankur Joshi**

---

## ⭐ If you like this project, give it a star!
43 changes: 43 additions & 0 deletions kits/assistant/ai-career-copilot/actions/orchestrate.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
'use server';

import { executeCareerAnalysis } from '@/lib/lamatic-client';
import { CareerAnalysisInput, ApiResponse, CareerAnalysisOutput } from '@/types';

export async function analyzeCareer(
input: CareerAnalysisInput
): Promise<ApiResponse> {
try {
console.log('πŸš€ Analyzing career with input:', {
resumeLength: input.resume_text?.length,
domain: input.domain,
});

// βœ… Validation
if (!input.resume_text?.trim()) {
return { success: false, error: 'Resume text is required' };
}

if (!input.domain?.trim()) {
return { success: false, error: 'Target domain is required' };
}

const result = await executeCareerAnalysis(input);

return {
success: true,
data: result as CareerAnalysisOutput, // βœ… Now matches type
timestamp: new Date().toISOString(),
};

} catch (error) {
console.error('❌ Career analysis error:', error);

return {
success: false,
error:
error instanceof Error
? error.message
: 'Failed to analyze career data.',
};
}
}
50 changes: 50 additions & 0 deletions kits/assistant/ai-career-copilot/app/globals.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
@import "tailwindcss";

@layer base {
body {
@apply bg-gray-50 text-gray-900;
}
}

@layer components {
.btn-primary {
@apply bg-blue-600 text-white px-6 py-2 rounded-lg hover:bg-blue-700 transition-colors duration-200 font-medium;
}

.btn-secondary {
@apply bg-gray-200 text-gray-800 px-6 py-2 rounded-lg hover:bg-gray-300 transition-colors duration-200 font-medium;
}

.card {
@apply bg-white rounded-xl shadow-md p-6 border border-gray-100;
}

.input-field {
@apply w-full px-4 py-2 border border-gray-300 rounded-lg focus:ring-2 focus:ring-blue-500 focus:border-transparent outline-none transition;
}
}
@keyframes slideDown {
from {
height: 0;
}
to {
height: var(--radix-accordion-content-height);
}
}

@keyframes slideUp {
from {
height: var(--radix-accordion-content-height);
}
to {
height: 0;
}
}

.animate-slideDown {
animation: slideDown 300ms cubic-bezier(0.87, 0, 0.13, 1);
}

.animate-slideUp {
animation: slideUp 300ms cubic-bezier(0.87, 0, 0.13, 1);
}
29 changes: 29 additions & 0 deletions kits/assistant/ai-career-copilot/app/layout.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
import type { Metadata } from 'next';
import { Inter } from 'next/font/google';
import './globals.css';

const inter = Inter({ subsets: ['latin'] });

export const metadata: Metadata = {
title: 'AI Career Copilot | Your Personal Career Assistant',
description: 'AI-powered career analysis tool that helps you identify skills, find suitable roles, and create personalized learning paths.',
keywords: 'career, AI, resume analysis, job recommendations, skill development, career planning',
authors: [{ name: 'Durvankur Joshi ' }],
openGraph: {
title: 'AI Career Copilot',
description: 'Your personal AI career assistant',
type: 'website',
},
};

export default function RootLayout({
children,
}: {
children: React.ReactNode;
}) {
return (
<html lang="en">
<body className={inter.className}>{children}</body>
</html>
);
}
Loading
Loading