linkedin-agent

LinkedIn Agent - Project Structure Guide

πŸ—οΈ Clean Architecture Overview

This project has been reorganized for better maintainability and clarity. Here’s the new structure:

linkedin-agent/
β”œβ”€β”€ πŸ“ backend/                    # Core LinkedIn scraping engine
β”‚   β”œβ”€β”€ src/                      # Main Python source code
β”‚   β”œβ”€β”€ tests/                    # Backend tests
β”‚   β”œβ”€β”€ requirements.txt          # Python dependencies
β”‚   └── Dockerfile               # Backend container
β”œβ”€β”€ πŸ“ frontend/                  # React admin dashboard
β”‚   β”œβ”€β”€ src/                     # React components
β”‚   β”œβ”€β”€ package.json             # Frontend dependencies
β”‚   └── Dockerfile               # Frontend container
β”œβ”€β”€ πŸ“ infrastructure/            # Deployment & DevOps
β”‚   β”œβ”€β”€ docker/                  # Docker configurations
β”‚   β”œβ”€β”€ scripts/                 # Utility scripts
β”‚   └── monitoring/              # Monitoring configs
β”œβ”€β”€ πŸ“ docs/                      # Documentation
β”œβ”€β”€ πŸ“ examples/                  # Sample inputs & configs
└── πŸ“ storage/                   # Runtime data (gitignored)

πŸš€ Quick Start

Development

# Backend only
cd backend && make dev

# Full stack (backend + frontend)
make fullstack-dev

# Production
make deploy

Key Commands

make help              # Show all available commands
make status            # Check service status
make logs              # View logs
make backup            # Create backup

πŸ“ Directory Details

Backend (/backend)

The core LinkedIn scraping engine with multiple entry points:

Frontend (/frontend)

React-based admin dashboard for:

Infrastructure (/infrastructure)

All deployment and operational concerns:

Examples (/examples)

Sample configurations and inputs:

πŸ”„ Migration Guide

From Old Structure

If you’re coming from the old structure:

  1. Backend code: Moved from /src to /backend/src
  2. Docker files: Consolidated in /infrastructure/docker
  3. Scripts: Organized in /infrastructure/scripts
  4. Examples: Moved to /examples

Environment Setup

# Copy example environment
cp examples/env.example .env

# Set up development
make setup-dev

# Start services
make dev

🎯 Project Goals

This reorganization achieves:

  1. Separation of Concerns: Backend, frontend, and infrastructure are clearly separated
  2. Scalability: Easy to add new services or components
  3. Maintainability: Clear structure makes it easy to find and modify code
  4. Deployment: Infrastructure is isolated and reusable
  5. Documentation: Each component has its own documentation

πŸ“š Documentation Structure

πŸ”§ Development Workflow

  1. Backend Development: Work in /backend/src
  2. Frontend Development: Work in /frontend/src
  3. Infrastructure Changes: Modify /infrastructure
  4. Testing: Use make test in respective directories
  5. Deployment: Use make deploy for production

This structure makes the project much more manageable and professional!