Skip to content

ayush9h/linkedin-post-automater

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

88 Commits
 
 
 
 
 
 
 
 

Repository files navigation

LinkedIn Post Automation

Overview

LinkedIn Post Automation is an application designed to automate the process of creating, and posting content on LinkedIn. Leveraging AI-powered tools for content generation, this project enables users to optimize their LinkedIn posts for maximum engagement and professionalism.

WhatsApp Image 2026-02-26 at 8 16 29 PM

Architecture

image

Features

  1. AI-Powered Content Generation: Automatically generate professional LinkedIn posts tailored to your input.
  2. Automated Posting: Schedule and post content directly to LinkedIn for multiple days.

Tech Stack

Frontend

  • Framework: NextJs
  • Styling: Tailwind CSS

Backend

  • Framework: FastAPI, Redis, Dramatiq
  • Languages: Python

Project Flow

The LinkedIn Post Automation system automates the entire process of content creation, and posting to LinkedIn. Here’s how it works:

1. User Input and Content Generation

  • Frontend: The user provides a LinkedIn post topic (text-based prompt) on the NextJs interface.
  • System Response:
    • The frontend sends a request to the backend to generate the LinkedIn post content and custom image.
    • The backend calls the AI model APIs (GROQ, Gemini) to generate the content based on the input topic.
    • Similarly, the backend generates a custom image using AI models.
    • The frontend receives the generated content (text) and image (as PNG).
image

2. Posting to LinkedIn

  • Backend Process:
    • The backend uses the LinkedIn API to upload the image and post the content.
    • The process includes two main steps:
      • Image Upload:
        • The backend uploads the image to LinkedIn using the POST /assets endpoint of the LinkedIn API. This creates a new image asset on LinkedIn.
        • The API responds with an asset ID (a unique identifier for the image).
      • Post Creation:
        • The backend then uses the LinkedIn API's "Share on LinkedIn" endpoint to create a post. The request includes the post content and the image asset ID.
        • The backend successfully creates the post and returns a confirmation message with the LinkedIn post details (URL, post ID).

WhatsApp Image 2026-02-26 at 8 20 22 PM

  • System Response: The frontend shows a success notification, confirming that the post has been successfully uploaded to LinkedIn.
image

Summary of Flow:

  1. Frontend: User inputs a post topic description → Sends request to backend.
  2. Backend:
    • Generates post content (AI-powered).
  3. Post Creation: Backend creates a LinkedIn post using the content asset ID → Post is uploaded to LinkedIn.

Setup Guide

Prerequisites

  • Node.js (>= 16.x)
  • Python (>= 3.8)
  • Redis Insights

Frontend

  1. Navigate to the client folder:
    cd client
  2. Install dependencies:
    npm install
  3. Start the development server:
    npm run dev

Backend

  1. Create a virtual environment and activate it:
    uv venv .venv
    .venv/Scripts/activate
  2. Install dependencies:
    uv pip install -r requirements.txt
  3. Create a .env file and add the following keys:
     ACCESS_TOKEN=<access_token>
     EMAIL=<email_id>
     GROQ_API_KEY=<groq_key>
     HUGGINGFACE_API_KEY=<huggingface_key>
     PASSWORD=<password>
     PERSON_URN_KEY=<urn_key>
     TAVILY_KEY=<tavily_key>
     REDIS_URL=<redis_url>
  4. Build the docker-compose:
    docker-compose build
  5. Run the docker-compose file:
    docker-compose up

Contribution

Feel free to contribute by:

  • Reporting issues
  • Suggesting features
  • Submitting pull requests

License

This project is licensed under the MIT License.

About

MVP tool that creates, schedules, and publishes LinkedIn posts using AI-generated text and images.

Topics

Resources

License

Stars

Watchers

Forks

Contributors