Skip to content

shivam0110/SalesSync

Repository files navigation

SalesSync

SalesSync is a comprehensive sales automation and lead management platform built with Next.js. It helps sales professionals streamline their workflow by integrating with LinkedIn, providing AI-powered chat capabilities, and managing prospect data efficiently.

🚀 Features

🔗 LinkedIn Integration

  • LinkedIn Messaging: View and manage LinkedIn conversations directly within the platform
  • Prospect Management: Store and analyze LinkedIn profiles and company data
  • Message Tracking: Track conversation history and engagement metrics

🤖 AI-Powered Chat

  • Intelligent Chatbot: AI-powered assistant to help with sales strategies and prospect insights
  • Conversation Context: Maintains context about prospects including their role, company, and conversation history
  • Personalized Responses: Generate tailored responses based on prospect data

📊 Data Management

  • Prospect Profiles: Comprehensive storage of prospect information and LinkedIn data
  • Company Database: Track company information and relationships
  • Analytics: Monitor conversation metrics and engagement patterns

🔄 External Integrations

  • Google Calendar: Integration for scheduling and calendar management
  • Talk Trails: Meeting journey summarizer for post-meeting insights

🛠️ Tech Stack

  • Frontend: Next.js 15, React 19, TypeScript
  • Styling: Tailwind CSS 4
  • Database: PostgreSQL with Prisma ORM
  • AI Integration: OpenAI API
  • UI Components: Headless UI

📁 Project Structure

src/
├── app/                    # Next.js app router
│   ├── api/               # API routes
│   │   ├── chat/          # AI chat endpoints
│   │   ├── linkedin/      # LinkedIn integration APIs
│   │   ├── profile/       # Profile management APIs
│   │   └── source/        # Data source APIs
│   ├── components/        # UI components
│   ├── crustdata-copilot/ # Data copilot features
│   ├── profile/           # Profile pages
│   └── source/            # Source management pages
├── components/            # Shared React components
│   ├── ChatBot.tsx        # AI chat interface
│   ├── LinkedInMessages.tsx # LinkedIn messaging UI
│   └── Alert.tsx          # Alert component
└── lib/                   # Utility libraries

🚀 Getting Started

Prerequisites

  • Node.js 18+
  • PostgreSQL database
  • OpenAI API key
  • LinkedIn API credentials (for full LinkedIn integration)

Installation

  1. Clone the repository

    git clone https://github.com/shivam0110/SalesSync.git
    cd SalesSync
  2. Install dependencies

    npm install
    # or
    pnpm install
  3. Set up environment variables Create a .env.local file in the root directory:

    DATABASE_URL="postgresql://username:password@localhost:5432/salessync"
    OPENAI_API_KEY="your-openai-api-key"
    NEXTAUTH_SECRET="your-nextauth-secret"
    # Add other environment variables as needed
  4. Set up the database

    npx prisma migrate dev
    npx prisma generate
  5. Run the development server

    npm run dev
    # or
    pnpm dev
  6. Open your browser Navigate to http://localhost:3000

🗄️ Database Schema

The application uses the following main data models:

  • Person: Stores prospect information and LinkedIn profiles
  • Company: Company data and LinkedIn information
  • Chat: AI chat conversation history
  • LinkedinMessage: LinkedIn messaging data and conversation tracking

📖 API Routes

Chat API

  • POST /api/chat - Send messages to AI chatbot
  • GET /api/chat/history - Retrieve chat history

LinkedIn API

  • GET /api/linkedin/messages/chats - Get LinkedIn conversations
  • GET /api/linkedin/messages/[chatId] - Get specific chat messages
  • POST /api/linkedin/messages/send - Send LinkedIn messages

Profile API

  • GET /api/profile/[linkedinUrl] - Get prospect profile data
  • POST /api/profile - Create or update prospect profiles

🔧 Scripts

  • npm run dev - Start development server with Turbopack
  • npm run build - Build for production
  • npm run start - Start production server
  • npm run lint - Run ESLint

🤝 Contributing

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

📝 License

This project is licensed under the MIT License - see the LICENSE file for details.

🆘 Support

For support, email [your-email@example.com] or create an issue on GitHub.

🔗 Links


Built with ❤️ by Shivam

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages