PHPackages                             shahariarahmad/feedify - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. shahariarahmad/feedify

ActiveLibrary

shahariarahmad/feedify
======================

Generate product catalog feeds for Google Shopping, Meta/Facebook, Pinterest, and TikTok from any Laravel app. Ships with a built-in admin UI at /feedify, batch XML/CSV/TSV generation, scheduled refresh, attribute mapping, and a Fortify-style ProductRepository contract so you can plug in your own catalog — no custom frontend required.

v2.0.0(today)01↑2900%MITPHPPHP ^8.2

Since Jul 23Pushed todayCompare

[ Source](https://github.com/ShahariarAhmad/Feedify)[ Packagist](https://packagist.org/packages/shahariarahmad/feedify)[ Docs](https://github.com/ShahariarAhmad/feedify)[ RSS](/packages/shahariarahmad-feedify/feed)WikiDiscussions main Synced today

READMEChangelogDependencies (10)Versions (3)Used By (0)

Feedify
=======

[](#feedify)

 [![Latest Version on Packagist](https://camo.githubusercontent.com/f28d7ef4e2fa4e840a70684039a5093b3785ac2d46323bb92170b4974915e90f/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f7368616861726961722d61686d61642f666565646966792e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/shahariar-ahmad/feedify) [![Total Downloads](https://camo.githubusercontent.com/34166545cddaa966b23c866be3037d0ad3810c19e16f1c381b6256881d40ec83/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f7368616861726961722d61686d61642f666565646966792e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/shahariar-ahmad/feedify) [![License](https://camo.githubusercontent.com/1a8c21a0f287572c3a423c00eb8e9d70eff9c6f1601590cc1dcb09155cdd1eaa/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6963656e73652f53686168617269617241686d61642f666565646966792e7376673f7374796c653d666c61742d737175617265)](https://github.com/ShahariarAhmad/feedify/blob/main/LICENSE) [![GitHub Stars](https://camo.githubusercontent.com/71b4ec1ac91c32122124a4d0f4fb8f3d5ee1a7d643bbca280f4998dce570675a/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f73746172732f53686168617269617241686d61642f666565646966793f7374796c653d666c61742d737175617265)](https://github.com/ShahariarAhmad/feedify)

```
composer require shahariar-ahmad/feedify
```

What is Feedify?
----------------

[](#what-is-feedify)

Feedify is a **Laravel package** that generates **product catalog feeds** for advertising and shopping channels — **Google Shopping**, **Meta (Facebook / Instagram)**, **Pinterest**, **TikTok**, and custom merchants.

Install it into any Laravel project, open **`/feedify`**, create a feed, and get a public URL (XML/CSV/TSV/…) you can paste into Google Merchant Center, Meta Commerce Manager, or similar platforms.

It is designed like:

- **[opcodesio/log-viewer](https://github.com/opcodesio/log-viewer)** — ships its own admin UI at a package route (no UI to build per project)
- **[Laravel Fortify](https://laravel.com/docs/fortify)** — headless contracts (`ProductRepository`, `Feedify::auth()`) so you plug in *your* catalog and access rules

Works with Bagisto, Lunar, custom e‑commerce, or a simple product table via the repository contract.

### What you get

[](#what-you-get)

AreaDetails**Admin UI**Manage feeds, make feed, mappings, settings, status — at `/feedify`**API**JSON API under `/feedify/api/*` for generation and CRUD**Formats**XML (RSS/`g:` for Google &amp; Meta), CSV, TSV, TXT, JSON**Catalog**Default `feedify_products` table **or** your own `ProductRepository`**Scale**Batch generation + optional scheduled refresh via Laravel queue/scheduler**Compliance**Meta catalog field formats (`in stock`, `19.99 USD`, `g:` XML tags)### Who it’s for

[](#who-its-for)

- Laravel store owners who need Google Merchant Center / Meta catalog feeds
- Developers who want one reusable feed package across many Laravel projects
- Teams that need a publishable feed URL for shopping platforms

---

Features
--------

[](#features)

- **Built-in admin UI** at `/feedify` — Log Viewer style; publish assets once, use everywhere
- **No host-app frontend** — developers don’t rebuild feed UI per project
- **Fortify-style extension** — `Feedify::auth()` and `Feedify::useProductRepository()`
- **Works with any catalog** — implement `ProductRepository` + map to `ProductDto`
- **Multi-merchant templates** — Google, Facebook/Meta, Pinterest, TikTok, Custom
- **Multiple export formats** — XML, CSV, TSV, TXT, JSON (Meta: XML/CSV/TSV/TXT)
- **Batch + queue generation** — large catalogs via per-batch processing and `GenerateFeedJob`
- **Scheduled auto-refresh** — enable feed status; Laravel scheduler regenerates feeds
- **Mappings** — attribute, category, dynamic attributes, and option mappings
- **Public feed URLs** — `/feeds/{provider}/{type}/{filename}` for merchant platforms
- **Meta catalog compliant** — RSS + `g:` namespace, spaced availability, ISO price format
- **REST generation API** — save config → get product IDs → batch generate → save file
- **Events** — `FeedGenerating`, `FeedGenerated`, `FeedFailed` for hooks (CDN, notify, upload)
- **Laravel 10–12** — auto-discovered service provider

---

Requirements
------------

[](#requirements)

PHP8.2+Laravel10, 11, or 12DatabaseMySQL, PostgreSQL, SQLite, etc.---

Installation
------------

[](#installation)

```
composer require shahariar-ahmad/feedify
```

Publish config and assets, run migrations:

```
php artisan feedify:publish
php artisan migrate
```

Optional — seed sample products for testing:

```
php artisan feedify:seed-products
```

Open the admin UI:

```
https://your-app.test/feedify

```

> Laravel auto-discovers `FeedifyServiceProvider`. No manual registration needed.

---

Quick start
-----------

[](#quick-start)

### 1. Protect the admin UI (production)

[](#1-protect-the-admin-ui-production)

In `App\Providers\AppServiceProvider::boot`:

```
use Feedify\Facades\Feedify;

Feedify::auth(fn ($request) => $request->user()?->can('manage-feeds'));
```

### 2. Create a feed

[](#2-create-a-feed)

1. Visit `/feedify`
2. Go to **Make Feed**
3. Choose merchant (e.g. Google or Facebook)
4. Choose format (XML recommended)
5. Click **Save &amp; generate**

### 3. Use the feed URL

[](#3-use-the-feed-url)

Generated files are available at:

```
/feeds/{provider}/{type}/{filename}.{ext}

```

Example:

```
https://your-app.test/feeds/google/xml/google_feed.xml

```

Paste this URL into Google Merchant Center or Meta Commerce Manager.

---

Connect your product catalog
----------------------------

[](#connect-your-product-catalog)

By default Feedify uses the `feedify_products` table. For a real store, bind your own repository:

```
use Feedify\Facades\Feedify;

Feedify::useProductRepository(\App\Feedify\MyCatalogRepository::class);
```

Implement `Feedify\Contracts\ProductRepository` and map your models to `Feedify\DTO\ProductDto`.

→ Full guide: [docs/custom-catalog.md](docs/custom-catalog.md)

---

Configuration
-------------

[](#configuration)

Publish config:

```
php artisan vendor:publish --tag=feedify-config
```

Common environment variables:

VariableDefaultDescription`FEEDIFY_PATH``feedify`Admin UI + API base path`FEEDIFY_DISK``local`Storage disk for feed files`FEEDIFY_PER_BATCH``200`Products per generation batch`FEEDIFY_SCHEDULE_INTERVAL``86400`Auto-refresh interval (seconds)→ Full reference: [docs/configuration.md](docs/configuration.md)

---

Artisan commands
----------------

[](#artisan-commands)

CommandDescription`php artisan feedify:publish`Publish config + UI assets`php artisan feedify:seed-products`Insert sample products`php artisan feedify:generate`Generate all feeds`php artisan feedify:generate {slug} --sync`Generate one feed synchronously`php artisan feedify:generate --scheduled`Generate feeds with scheduling enabledEnsure Laravel scheduler is running in production:

```
* * * * * cd /path-to-app && php artisan schedule:run >> /dev/null 2>&1
```

---

Supported merchants
-------------------

[](#supported-merchants)

MerchantKeyFormatsGoogle Shopping`google`XML, CSV, TSV, TXT, JSONFacebook / Meta`facebook`XML, CSV, TSV, TXTPinterest`pinterest`XML, CSV, TSV, TXT, JSONTikTok`tiktok`XML, CSV, TSV, TXT, JSONCustom`custom`XML, CSV, TSV, TXT, JSON→ Field specs &amp; Meta notes: [docs/merchants.md](docs/merchants.md)

---

Events
------

[](#events)

Hook into feed lifecycle:

```
use Feedify\Events\FeedGenerated;
use Feedify\Events\FeedGenerating;
use Feedify\Events\FeedFailed;

Event::listen(FeedGenerated::class, function ($event) {
    // Notify, upload to CDN, etc.
});
```

EventFired when`FeedGenerating`Full generation starts`FeedGenerated`File written successfully`FeedFailed`Generation throws an exception---

Documentation
-------------

[](#documentation)

DocumentContents[Installation](docs/installation.md)Path repo, publish tags, production checklist[Configuration](docs/configuration.md)All config keys, env vars, publish tags[API reference](docs/api-reference.md)REST endpoints (`/feedify/api/*`)[Architecture](docs/architecture.md)Pipeline, database, package layout[Custom catalog](docs/custom-catalog.md)`ProductRepository` + `ProductDto`[Merchants](docs/merchants.md)Google, Meta, Pinterest, TikTok specs[Troubleshooting](docs/troubleshooting.md)Common errors and fixes[Changelog](CHANGELOG.md)Release history---

Testing
-------

[](#testing)

```
composer install
composer test
```

The test suite covers feed generation, API pipeline, Meta catalog compliance, auth, and repository filters.

---

License
-------

[](#license)

The MIT License (MIT). See [LICENSE](LICENSE).

###  Health Score

41

—

FairBetter than 87% of packages

Maintenance100

Actively maintained with recent releases

Popularity2

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity47

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~0 days

Total

2

Last Release

0d ago

Major Versions

v1.0.0 → v2.0.02026-07-23

### Community

Maintainers

![](https://www.gravatar.com/avatar/4d8f18c27ea6497c4e6556919cf57aac44d4cf87a697a171b5814c2b2df08a53?d=identicon)[ShahariarAhmad](/maintainers/ShahariarAhmad)

---

Top Contributors

[![ShahariarAhmad](https://avatars.githubusercontent.com/u/71463303?v=4)](https://github.com/ShahariarAhmad "ShahariarAhmad (6 commits)")

---

Tags

laravelheadlessecommerceproduct feedXML feedadmin-uirss-feedfacebook-catalogproduct-cataloggoogle-shoppinggoogle-merchant-centerMerchant Feedfeedifypinterest-catalogtiktok-catalogcsv-feedcatalog-feedmeta-commerceinstagram-shopping

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/shahariarahmad-feedify/health.svg)

```
[![Health](https://phpackages.com/badges/shahariarahmad-feedify/health.svg)](https://phpackages.com/packages/shahariarahmad-feedify)
```

###  Alternatives

[psalm/plugin-laravel

Psalm plugin for Laravel

3345.3M347](/packages/psalm-plugin-laravel)[roots/acorn

Framework for Roots WordPress projects built with Laravel components.

9762.4M133](/packages/roots-acorn)[laravel/pulse

Laravel Pulse is a real-time application performance monitoring tool and dashboard for your Laravel application.

1.7k15.1M136](/packages/laravel-pulse)[laravel/ai

The official AI SDK for Laravel.

1.0k3.2M245](/packages/laravel-ai)[laravel/cashier

Laravel Cashier provides an expressive, fluent interface to Stripe's subscription billing services.

2.5k30.2M151](/packages/laravel-cashier)[laravel/mcp

Rapidly build MCP servers for your Laravel applications.

77922.3M185](/packages/laravel-mcp)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
