Indexer SEO is a high-performance Shopify App designed to accelerate search engine indexing for your store's pages. By leveraging the Google Indexing API and Bing Webmaster Tools, it ensures that your product updates, new collections, and content changes are reflected in search results almost instantly.
This project is architected as a hybrid application consisting of a Shopify Remix Frontend for the merchant interface and a robust FastAPI Backend for handling heavy indexing jobs, background workers, and API integrations.
- Instant Indexing: Real-time submission of URLs to Google and Bing immediately after they are created or updated.
- Background Workers: Dedicated Python workers to handle bulk indexing requests without blocking the user interface.
- Automatic Sync: Listens to Shopify Webhooks (Products, Collections) to automatically trigger indexing updates.
- Status Monitoring: Track the status of your submissions and view API quotas directly.
- Dual-Stack Architecture: optimized for performance with a React-based Admin UI and a Python-based processing engine.
- Framework: Remix (React Router v7)
- Platform: Shopify App Bridge & Polaris UI
- Build Tool: Vite
- Database (App Support): Prisma with SQLite/PostgreSQL
- Language: TypeScript / JavaScript
- Framework: FastAPI (Python)
- Queue/Broker: Redis
- Database: PostgreSQL (local Docker or managed) via asyncpg/SQLAlchemy
- APIs: Google Indexing API, Bing Webmaster API
- Task Management: Asyncio Background Tasks
The project is divided into two main directories:
/app: Contains the Shopify App frontend code (Remix/React). This is where the merchant UI lives./backend: Contains the Python FastAPI service, worker scripts, and indexing logic.
Before you begin, ensure you have the following installed:
- Node.js (v20.19+ recommended)
- Python (v3.10+)
- Docker & Docker Compose (Optional, for easier backend execution)
- Shopify Partner Account: To create an app and get API credentials.
- Google Cloud Service Account: A JSON key file with permission to the Indexing API.
git clone <repository-url>
cd indexer-seoThe backend handles the actual API communication with search engines.
Ensure you have your Google credentials saved as backend/credentials.json.
cd backend
docker-compose up --build- Navigate to the backend directory:
cd backend - Create a virtual environment:
python -m venv .venv # Windows .venv\Scripts\activate # Mac/Linux source .venv/bin/activate
- Install dependencies:
pip install -r requirements.txt
- Configure Environment:
Create a
.envfile in/backend(see.env.exampleif available) and add your database/redis configs. - Important: Place your Google Service Account key file in
backend/credentials.json. - Run the server:
python server.py
- Navigate to the project root (if not already there):
cd .. - Install Node dependencies:
npm install
- Generate Prisma Client:
npm run setup
To start the Shopify App development server (which connects to your development store):
npm run dev- Press
pin the terminal to open your provider's preview URL. - Install the app on your Shopify Development Store.
- Go to the Google Cloud Console.
- Create a new project.
- Enable the Indexing API.
- Create a Service Account and download the JSON key.
- Rename this file to
credentials.jsonand place it in thebackend/folder. - Verify Ownership: Go to Google Search Console, add your property, and add the Service Account email (found in the JSON file) as an Owner or Full User in the Search Console settings.
This project is licensed for private use. Contact the author for distribution rights.