- NOTE: LinkForge requires a LinkedIn Sales Navigator license to be used purposefully.
- NOTE: You can just use the demo link instead of installing it and running it locally: https://linkforge-alikeldev.netlify.app/dashboard
- NOTE: A Chrome extension is available to automate data capture from LinkedIn Sales Navigator. See installation instructions below.
LinkForge is a React-based automation tool designed to streamline the process of finding relevant professionals or specific individuals on LinkedIn, primarily using Sales Navigator. It allows for bulk generation of search URLs for companies or individuals, intelligent domain validation, role-specific search patterns, and AI-powered assistance.
Who is this for? Sales professionals, recruiters, and job seekers who need to efficiently find relevant contacts across multiple companies or locate specific known individuals in bulk.
- Multi-Role Support: Tailored workflows for Sales Teams, Recruiters, and Job Seekers.
- Bulk Company Link Generation: Generate targeted Sales Navigator searches for dozens of companies simultaneously.
- Bulk Person Name Search: Generate Sales Navigator searches for specific individuals by name, optionally filtering by a common company.
- Combined Person Search: Generate a single bulk search link using
ORlogic to find any of the entered individuals at once. - Chrome Extension: Automatic data capture from LinkedIn Sales Navigator searches.
- AI-Powered Assistant (Kei): Get domain validation help, strategy planning, company analysis, and outreach advice.
- Domain Checker Tool: Visual grid preview and list view for validating company domain variations.
- Company Size Buckets: Classify companies with customizable size thresholds and manage these buckets.
- Search History: Cross-session persistence for both company and name searches (stored locally).
- Export Capabilities: Export current results or search history to CSV.
- Rate-Limited Link Opening: Safely open multiple generated links with configurable delays.
LinkForge includes a Chrome extension that automatically extracts LinkedIn Sales Navigator search results and populates them directly into your LinkForge dashboard - eliminating manual data entry.
- Automatic Data Capture: Detects company name and developer count from Sales Navigator searches
- Real-Time Sync: Instantly forwards data to your open LinkForge tab
- Visual Feedback: Shows success notifications when data is captured
- Multi-Tab Support: Works across multiple LinkForge windows simultaneously
- Status Monitoring: Popup shows connection status for LinkedIn and LinkForge tabs
- Download linkforge-extension.zip
- Unzip the file
- Open Chrome and navigate to
chrome://extensions/ - Enable "Developer mode" (toggle in top right)
- Click "Load unpacked" and select the unzipped
linkforge-extensionfolder - The extension icon (🦊) should appear in your toolbar
- Open LinkForge
- Enter a company name in LinkForge (e.g., "Google")
- Click one of the generated Sales Navigator links
- Once the search results load on LinkedIn, the extension automatically:
- Extracts the company name from your search query
- Captures the exact result count from the page
- Sends the data back to your LinkForge tab
- The developer count appears instantly in LinkForge for that company
Note: The extension only activates on Sales Navigator search URLs and requires an active LinkForge tab to be open.
- Data not appearing? Ensure you have LinkForge open in another tab before clicking the Sales Navigator link
- Extension not detecting? Wait 2-3 seconds for the Sales Navigator page to fully load
- No success notification? Check the extension is enabled in
chrome://extensions/ - Multiple counts appearing? The extension captures data from the most recent search - older searches may be cached
As a tech sales professional:
- Input target companies in bulk (e.g., "Quadient, CyberAgent, QBurst").
- Select the "Sales Team" role.
- Optionally, use the Bucket Selector to classify companies by size.
- Click "Generate Links" to create targeted searches for relevant roles (Dev, Security, Finance, etc.).
- Use "Open All Security Links" (or other types) to launch searches sequentially.
- With the Chrome extension: The developer counts populate automatically as you visit each link.
- Ask Kei: "Analyze Quadient's security posture based on their likely tech stack."
- Get insights to tailor outreach.
As a technical recruiter:
- Input target companies known for engineering excellence.
- Select the "Recruiter" role.
- Generate links focused on engineering talent, tech leaders, or finance candidates.
- Use "Open All Tech Candidates Links" to build candidate pipelines.
- With the Chrome extension: Developer counts are captured automatically as you review each company.
- Export results for your ATS or recruitment team.
As a job seeker looking for opportunities:
- Input companies you're interested in working for.
- Select the "Job Seeker" role.
- Generate HR or Finance contact searches.
- Use Kei to analyze companies and suggest tailored application strategies.
- Build your targeted application list with relevant contacts.
- Switch to the "Name Search" mode on the dashboard.
- Input a list of names (one per line, e.g., "John Smith", "Alice Leiser").
- (Optional) Enter a common company name if you want to find these people specifically at that company.
- Click "Generate Name Search Links".
- Review the results:
- Use the individual "Open Link" buttons for each person.
- Use the "Open All Basic Search Links" or "Open All Targeted Search Links" buttons to check individuals sequentially.
- Use the "Open Bulk Search" link to see a combined view of results for any of the names entered.
- Useful for verifying contacts, finding specific stakeholders, or reconnecting with known individuals.
- Input unlimited company names at once.
- Role-specific search templates focus on relevant positions:
- Sales: Dev, Security, Finance, and Machine Identity decision-makers.
- Recruiter: Tech candidates, Tech leaders, Finance candidates.
- Job Seeker: HR contacts, Finance contacts.
- Automatic domain inference and selection via the Domain Checker.
- Export generated links and company data (including bucket) in CSV format.
Quickly validate potential domains for a company:
- Grid View: Live website previews in configurable layouts (2x2, 3x3, 4x4). Ideal for quick visual checks.
- List View: Detailed management of domain statuses.
- Status Tracking: Mark domains as "exists", "not exists", or leave as "unknown".
- Filtering: View domains based on their status.
- Export: Save findings (domain, status, URL) to CSV.
- New Window: Open the grid view in a separate browser window for easier comparison (requires pop-ups enabled).
- Click "Check Domains" on a generated company card.
- View variations across common TLDs (.com, .io, .fr, etc.).
- Toggle between grid and list views.
- Mark validity status for each domain.
- Export findings or simply close the modal (status is stored locally).
Kei is your integrated AI research assistant (powered by Gemini, configurable if run locally):
- Chat Interface: Engage in conversations about specific companies or general strategies.
- Multiple Personality Modes: Adjust Kei's tone (Professional, Balanced, Creative).
- Company Analysis: Get insights on market position, potential tech stack, organizational structure, etc.
- Domain Strategy: Get recommendations on priority TLDs and branding implications.
- Outreach Strategy: Get advice on targeting roles, messaging angles, and competitive positioning.
- Persistent History: Conversations are saved locally by company for easy reference via a dropdown.
- Contextual Awareness: Kei understands the company and domain you are asking about.
- Input a list of names (one per line).
- Optionally provide a common company name to narrow the search for both individual and combined links.
- Generates several types of links per batch:
- Individual Basic Search: A general LinkedIn search for each name entered.
- Individual Targeted Search: A LinkedIn search specifically looking for each name within the provided company context (only generated if a company is entered).
- Combined Bulk Search: A single search link using
ORlogic to find any of the entered names in one result set. Useful for quickly scanning for multiple contacts.
- Includes "Open All" buttons for individual basic and targeted searches.
- Provides "Open Bulk Search" and "Copy Link" buttons for the combined search.
- Maintains its own persistent search history (stored locally).
Classify companies based on estimated team sizes using fully customizable buckets:
- Default Buckets: Ranging from "Pre-Seed" to "Tech Giant" based on Dev & Security team sizes.
- Customization:
- Edit buckets: Modify names, thresholds, and colors.
- Add buckets: Create new categories.
- Delete buckets: Remove classifications.
- Reset buckets: Restore defaults.
- Helps tailor outreach based on company scale. Assigned bucket is included in CSV export.
- Rate-Limited Opening: Use the "Open All..." buttons with configurable delays (1-10 seconds) to open links sequentially without triggering LinkedIn's rate limits.
- Progress Tracking: Visual feedback when using the rate-limited opening feature.
- Individual Opening: Open any generated link directly.
- Copy-to-Clipboard: Quickly copy individual link URLs or descriptions.
LinkForge leverages modern web technologies:
- React 18.3: Core UI library utilizing Hooks and Context.
- Vite: Fast build tool and development server.
- Tailwind CSS: Utility-first CSS framework for styling.
- Framer Motion: Declarative animations and transitions.
- React Router: Client-side routing for navigation (
WelcomePage,HomePage).
- Manifest V3: Modern Chrome extension architecture.
- Content Scripts: Run on both LinkedIn Sales Navigator and LinkForge pages.
- Background Service Worker: Routes messages between content scripts.
- window.postMessage API: Secure communication between extension and React app.
- React Context API: Used for global state like the current user role (
RoleContext). - Local Storage: Persists user data across sessions, including:
- Company search history and generated links per role.
- Name search history and generated links.
- Kei AI chat conversations by company.
- Custom company bucket configurations.
- User preferences (like AI personality mode).
- Netlify Functions: Serverless backend (
ai-chat.js) acting as a proxy to the AI API. - Google Gemini API: Powers the Kei assistant (specifically Gemini Flash 2 by default in the Netlify function). Configurable if run locally.
- Context Awareness: The backend function receives company/domain context to tailor Kei's responses.
- Adapts to various screen sizes from mobile to desktop.
- Touch-friendly controls and mobile-optimized layouts.
(Unless you want to modify the way something works, using the deployed version is recommended: https://linkforge-alikeldev.netlify.app/dashboard)
- Node.js: Version recommended by the
.nvmrcfile (Requires Node.js 18+). Check withnode -v. - npm: Comes with Node.js. Check with
npm -v. - Git: For cloning the repository.
- (Optional) Gemini API Key: Required only if you intend to run the application locally and use the Kei AI assistant. Needed for the Netlify Function to work.
# Clone the repository
git clone https://github.com/AliKelDev/Alikel-Linkgen.git
cd Alikel-Linkgen
# Install recommended Node.js version (if you use nvm)
nvm use
# Install dependencies
npm install
# Set up environment variables for local development (only needed for AI)
cp .env.example .env
# Edit the .env file in the project root:
# Add your Google Gemini API key like this:
# GEMINI_API_KEY=your_api_key_here
# Start the development server (usually runs on http://localhost:3000)
npm run dev
# To build for production
npm run build.envfile (in project root):GEMINI_API_KEY: Your API key for Google Gemini. This allows theai-chat.jsNetlify function (or its local development equivalent) to communicate with the AI model. Note: Using the API may incur costs based on usage.
src/
├── App.jsx # Main application component
├── main.jsx # Application entry point
├── assets/ # Static assets like SVGs
├── components/
│ ├── common/ # Shared UI components (e.g., RoleSelector)
│ ├── features/ # Feature-specific components
│ │ ├── linkGenerator/ # Company search feature
│ │ └── nameGenerator/ # Person name search feature
│ ├── AnimatedBackground.jsx # Main layout, includes header, sidebar logic
│ └── exportDropdown.jsx # Export functionality UI
├── contexts/
│ └── RoleContext.jsx # Manages user role state
├── pages/
│ ├── HomePage.jsx # Main dashboard page
│ └── WelcomePage.jsx # Landing/introduction page
├── utils/
│ ├── linkUtils/ # URL generation logic for company search by role
│ │ ├── sales.js
│ │ ├── recruiter.js
│ │ └── jobseeker.js
│ └── nameSearchUtils.js # URL generation logic for individual and bulk name search
└── index.css # Tailwind base styles and custom CSS
linkforge-extension/ # Chrome extension
├── background.js # Service worker, message routing
├── linkedin_content_script.js # LinkedIn data extraction
├── linkforge_content_script.js # LinkForge app bridge
├── manifest.json # Extension configuration
└── popup.html # Extension popup UI
BulkLinkGenerator.jsx: Interface for company search.BulkNameSearch.jsx: Interface for person name search.GeneratedLinkCard.jsx: Displays results for a single company search.DomainCheckerModal.jsx: Modal for validating company domains.AIChatAssistant.jsx: Kei AI chat interface.BucketSelector.jsx: Component for selecting and managing company size buckets.RoleSelector.jsx: Allows switching between Sales, Recruiter, Job Seeker roles.AnimatedBackground.jsx: Wraps the application, handles layout, sidebar, header, and manages the floating AI chat bubble/window.HomePage.jsx: Orchestrates the main dashboard view, including metrics and switching between company/name search.
npm run dev: Start the local development server.npm run build: Create a production-ready build in thedist/folder.npm run lint: Run ESLint to check code quality.
- Add the new role key to
ROLESand its configuration toROLE_CONFIGSinsrc/contexts/RoleContext.jsx. - Create a corresponding link generation utility file in
src/utils/linkUtils/. - Update UI components (like
RoleSelector.jsx, potentiallyBulkLinkGenerator.jsx) to recognize and handle the new role. - Define the specific link types for the new role in
BulkLinkGenerator.jsx(insideROLE_LINK_TYPES).
- Add a new link generation function (e.g.,
generateNewTypeLink) in the relevant role file withinsrc/utils/linkUtils/. - Update the
generateLinksfunction in that same file to include the new type. - Add the new link type and label to the
ROLE_LINK_TYPESconstant inBulkLinkGenerator.jsx. - Ensure
GeneratedLinkCard.jsxcan display the new link type correctly (it should work automatically if the structure is consistent). - Add a corresponding "Open All..." button in
BulkLinkGenerator.jsx.
Use the Company Bucket Selector to estimate sizes for a list of companies, then export the results (which include the bucket classification) for market analysis or territory planning.
- Input companies attending an event into the Bulk Link Generator.
- Generate links for key roles (e.g., Sales Leaders, Tech Leaders).
- Use the Domain Checker to quickly find their main websites.
- Use Kei AI Assistant to get quick summaries or potential talking points for each company.
- Input competitors into the Bulk Link Generator.
- Use the Domain Checker (especially the grid view) to analyze their web presence and branding consistency across TLDs.
- Generate links for key departments (e.g., Sales, Engineering) to map their organizational structure.
- Ask Kei to compare their likely strategies or tech stacks based on available information.
- Input a large list of target companies in Bulk Link Generator.
- Click "Open All Dev Links" with 3-second delays.
- As each Sales Navigator page loads, the extension captures developer counts automatically.
- Review the populated data in LinkForge without manual entry.
- Export the complete dataset with all captured metrics.
Planned improvements include:
- Ability for Kei to remember user-specific information across sessions (like preferred prompts, user's role, company, etc.) similar to profile creation.
- Exploring more advanced AI capabilities for Kei, potentially analysis of broader market trends or more specific profile analysis (maybe image analysis via Moondream if feasible).
- Adding more specific search templates based on user needs.
- Potentially exploring more agentic functions for Kei to perform multi-step tasks.
- Chrome Web Store publication for easier extension distribution and auto-updates.
This project is licensed under the MIT License - see the LICENSE file for details.
- Developed by AliKelDev
- Built with React, Vite, Tailwind CSS, and Netlify Functions.
NOTE: I am Alice, it's an Alias. Alice Leiser = Alikel = AKD = Jordan.M, so when Alice Leiser commits something, it's me.