FitSearch Pro is a comprehensive vehicle fitment search solution for Shopify stores selling auto parts and accessories. This app enables customers to find parts that fit their specific vehicle by selecting their vehicle's make, model, year, and submodel.
- Vehicle Search Widget: Multi-step dropdown search for vehicles
- Comprehensive Fitment Database: Store and manage complex vehicle-product relationships
- Admin Dashboard: Import, export, and manage fitment data
- Compatible Products Display: Show customers which products fit their vehicle
- Analytics & Reporting: Track search activity and conversion metrics
- Theme Integration: Seamless integration with Shopify themes
- App Extensions: Enhanced product management and listing experience
FitSearch Pro is built using the Remix Shopify App template and follows a modular architecture:
- Database & API Layer (Core Backend)
- Search Widget Frontend (Customer-facing interface)
- Fitment Tables & Compatibility Widget (Product display components)
- Admin Dashboard (Merchant control panel)
- Theme Integration & App Extensions (Shopify store integration)
- Analytics & Reporting (Data insights)
- Import/Export System (Data management)
- Frontend: React, Shopify Polaris, Tailwind CSS
- Backend: Node.js, Remix, Prisma ORM
- Database: PostgreSQL
- API: GraphQL, REST
- Authentication: Shopify App Bridge Auth
- Deployment: Shopify App Hosting
- Node.js (v16+)
- npm or yarn
- PostgreSQL database
- Shopify Partner account
- Shopify Development store
-
Clone the repository
git clone https://github.com/yourusername/fitsearch-pro.git cd fitsearch-pro
-
Install dependencies
npm install
-
Set up environment variables
cp .env.example .env
Edit the
.env
file with your Shopify API credentials and database connection string. -
Set up the database
npm run setup
-
Start the development server
npm run dev
- Create a new app in your Shopify Partner Dashboard
- Configure the app URL to point to your development server
- Set up the necessary app scopes
- Install the app on your development store
npm run prisma:generate # Generate Prisma client
npm run prisma:migrate # Run migrations
npm run prisma:studio # Open Prisma Studio
npm run test # Run all tests
npm run test:unit # Run unit tests
npm run test:integration # Run integration tests
npm run build
prisma/
: Database schema and migrationsapp/models/
: Database access methodsapp/graphql/
: GraphQL schema and resolversapp/routes/api/
: REST API endpoints
app/components/search-widget/
: Component source codeapp/routes/search/
: Frontend routes
app/components/FitmentTable/
: Fitment table component for displaying all compatible vehiclesapp/components/CompatibilityWidget/
: Widget for checking if a product is compatible with a specific vehicleapp/routes/app.fitment.jsx
: Demo page showcasing both componentsapp/routes/api.products.$productId.fitments.js
: API endpoint for retrieving fitment data
app/routes/app/
: Admin interface routesapp/components/admin/
: Admin components
extensions/
: Shopify theme extensionstheme-components/
: Theme component examples
app/routes/app/analytics/
: Analytics dashboardapp/models/analytics.server.js
: Analytics data access
app/routes/app/import/
: Import interfaceapp/routes/app/export/
: Export interfaceapp/models/import.server.js
: Import processing
docs/
: Technical documentationdocs/api/
: API documentationdocs/db/
: Database schema documentationdocs/deployment/
: Deployment guides
Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.
This project is licensed under the MIT License - see the LICENSE file for details.
For support, please contact support@fitsearchpro.com.