Monsef Rachid
Home About Projects Contact

Craigslist Alerts

Web scraper with CMS to monitor Craigslist and notify users of new matching listings.

Project Overview

This project is a web application that allows users to create and manage alerts for new Craigslist posts based on specified criteria. Users can configure alerts by selecting a location, category, and page, as well as defining keyword filters, price ranges, and whether the post includes images.

The system consists of two main components:

  • Web Application - Built for users to manage alerts, update preferences, and receive email notifications.
  • Web Scraper - A Python-based scraper that periodically checks Craigslist for new posts matching user-defined criteria and triggers email notifications.

The project demonstrates full-stack development skills, including backend logic for scheduling and managing alerts, a user-friendly interface for configuration, and efficient web scraping techniques for data retrieval and automation.

Tools Used

Python PHP Laravel JavaScript Alpine.js MySQL HTML Tailwind CSS

Project Details

  • Developed the application using Laravel with Blade templates for server-side rendering.
  • Implemented user interactivity using Alpine.js for a dynamic and responsive experience.
  • Designed the front-end with Tailwind CSS for a clean and modern UI.
  • Built a backend CMS to manage user accounts, alert settings, and retrieved listings archive.
  • Designed and developed a Craigslist-specific web scraper in Python to fetch and process listings.
  • Created a REST API to allow integration with potential mobile applications.
  • Implemented unit, feature, and API endpoint tests to ensure application reliability.
  • Designed a scheduling system to periodically trigger web scraping and send alerts.
  • Integrated an email notification system to alert users of new matching listings.
  • Implemented data storage and indexing for efficient retrieval of historical search results.
  • Optimized the scraper for performance and rate-limiting compliance with Craigslist.
  • Ensured security best practices, including input validation and user authentication.
  • Deployed the application to a production environment with automated deployment workflows.