OpenClassify is modular and most advanced open source classified platform build with Laravel 8.1 & PHP 8.2 Supported. Included Pyrocms
Go to file
2026-03-10 21:01:30 +03:00
.agents/skills Implement realtime listing chat 2026-03-08 21:49:26 +03:00
.ai/mcp Refactor ListingResource 2026-03-04 23:27:19 +03:00
.chatgpt beta 2026-03-03 12:49:08 +03:00
.codex Fix modal chat toggling issue 2026-03-08 22:29:11 +03:00
.devcontainer feat: Install FilamentPHP v5, add Admin/Partner modules, Docker support 2026-03-03 08:07:28 +00:00
.gemini Fix modal chat toggling issue 2026-03-08 22:29:11 +03:00
.github/skills Implement realtime listing chat 2026-03-08 21:49:26 +03:00
app Refactor home layout and seed data 2026-03-08 20:18:56 +03:00
bootstrap Implement realtime listing chat 2026-03-08 21:49:26 +03:00
config Fix module seeders PSR-4 namespaces 2026-03-10 21:01:30 +03:00
database Fix module seeders PSR-4 namespaces 2026-03-10 21:01:30 +03:00
docker feat: Install FilamentPHP v5, add Admin/Partner modules, Docker support 2026-03-03 08:07:28 +00:00
lang Düzelt konum ve ilan sayısı 2026-03-07 03:08:00 +03:00
Modules Fix module seeders PSR-4 namespaces 2026-03-10 21:01:30 +03:00
public Refactor modules for mobile UI 2026-03-09 00:08:58 +03:00
resources Fix duplicate listing images 2026-03-10 04:35:25 +03:00
routes Implement realtime listing chat 2026-03-08 21:49:26 +03:00
storage Add Turnstile protection demo 2026-03-10 04:12:59 +03:00
stubs/nwidart-stubs Rewrite as Laravel 12 classified ads site (OpenClassify) 2026-03-02 23:34:07 +00:00
.editorconfig Rewrite as Laravel 12 classified ads site (OpenClassify) 2026-03-02 23:34:07 +00:00
.env.example Add Turnstile protection demo 2026-03-10 04:12:59 +03:00
.gitattributes Rewrite as Laravel 12 classified ads site (OpenClassify) 2026-03-02 23:34:07 +00:00
.gitignore Add animations and fix publish 2026-03-08 16:11:09 +03:00
.styleci.yml Rewrite as Laravel 12 classified ads site (OpenClassify) 2026-03-02 23:34:07 +00:00
AGENTS.md Implement realtime listing chat 2026-03-08 21:49:26 +03:00
artisan Rewrite as Laravel 12 classified ads site (OpenClassify) 2026-03-02 23:34:07 +00:00
boost.json Implement realtime listing chat 2026-03-08 21:49:26 +03:00
composer.json Implement realtime listing chat 2026-03-08 21:49:26 +03:00
docker-compose.dev.yml feat: Install FilamentPHP v5, add Admin/Partner modules, Docker support 2026-03-03 08:07:28 +00:00
docker-compose.yml feat: Install FilamentPHP v5, add Admin/Partner modules, Docker support 2026-03-03 08:07:28 +00:00
Dockerfile feat: Install FilamentPHP v5, add Admin/Partner modules, Docker support 2026-03-03 08:07:28 +00:00
Dockerfile.dev feat: Install FilamentPHP v5, add Admin/Partner modules, Docker support 2026-03-03 08:07:28 +00:00
GEMINI.md Fix modal chat toggling issue 2026-03-08 22:29:11 +03:00
modules_statuses.json Improve partner panel UX 2026-03-07 20:19:00 +03:00
package.json Implement realtime listing chat 2026-03-08 21:49:26 +03:00
postcss.config.js Rewrite as Laravel 12 classified ads site (OpenClassify) 2026-03-02 23:34:07 +00:00
README.md Fix module seeders PSR-4 namespaces 2026-03-10 21:01:30 +03:00
tailwind.config.js Unify fonts and fix category seed 2026-03-06 02:15:13 +03:00
vite-module-loader.js Rewrite as Laravel 12 classified ads site (OpenClassify) 2026-03-02 23:34:07 +00:00
vite.config.js Rewrite as Laravel 12 classified ads site (OpenClassify) 2026-03-02 23:34:07 +00:00

OpenClassify

OpenClassify is a modular classifieds marketplace built with Laravel 12 and Filament v5.

Core Stack

  • Laravel 12
  • FilamentPHP v5
  • nwidart/laravel-modules
  • Blade + Tailwind + Vite
  • Spatie Permission
  • Laravel Reverb + Echo (realtime chat)

Modules

All business features live in Modules/* (routes, services, models, resources, views, seeders).

Create a new module:

php artisan module:make ModuleName

Enable it in modules_statuses.json.

Quick Start

Docker

cp .env.example .env
docker compose up -d

App URLs:

  • Frontend: http://localhost:8000
  • Admin: http://localhost:8000/admin
  • Panel: http://localhost:8000/panel

Local

Requirements: PHP 8.2+, Composer, Node 18+, database server.

composer install
npm install
cp .env.example .env
php artisan key:generate
php artisan migrate
php artisan db:seed
composer run dev

Seeded Accounts

Role Email Password
Admin a@a.com 236330
Member b@b.com 36330

Demo Mode

Demo mode provisions a temporary, per-visitor marketplace schema.

Requirements:

  • DB_CONNECTION=pgsql
  • DEMO=1

Minimal .env:

DEMO=1
DEMO_TTL_MINUTES=360
DEMO_SCHEMA_PREFIX=demo_
DEMO_COOKIE_NAME=oc2_demo
DEMO_LOGIN_EMAIL=a@a.com
DEMO_PUBLIC_SCHEMA=public

Commands:

php artisan demo:prepare
php artisan demo:cleanup

Notes:

  • First guest homepage shows only Prepare Demo.
  • Prepare Demo creates/reuses a private schema and logs in seeded admin.
  • Expired demos are cleaned up automatically (hourly schedule).

Realtime Chat (Reverb)

Set .env:

BROADCAST_CONNECTION=reverb
REVERB_APP_ID=app_id
REVERB_APP_KEY=app_key
REVERB_APP_SECRET=app_secret
REVERB_HOST=localhost
REVERB_PORT=8080
REVERB_SCHEME=http
REVERB_SERVER_HOST=0.0.0.0
REVERB_SERVER_PORT=8080
VITE_REVERB_APP_KEY="${REVERB_APP_KEY}"
VITE_REVERB_HOST="${REVERB_HOST}"
VITE_REVERB_PORT="${REVERB_PORT}"
VITE_REVERB_SCHEME="${REVERB_SCHEME}"

Start:

composer run dev

Channel strategy:

  • private channel: users.{id}.inbox
  • events: InboxMessageCreated, ConversationReadUpdated

Test and Build

php artisan test
php artisan optimize:clear
php artisan view:cache

Production Checklist

php artisan migrate --force
php artisan db:seed --force
php artisan storage:link
php artisan config:cache
php artisan route:cache
php artisan view:cache

Contributors