feat: add parapharmacy API with MongoDB and N8N setup

- Create parapharmacy-api microservice with Express + Swagger + MongoDB
- Add product model with full-text search and deduplication
- Add CRUD endpoints and bulk upsert for scrapers
- Update docker-compose.yml with MongoDB, N8N, and parapharmacy-api services
- Add proxy endpoints in FarmaFinder backend for parapharmacy
- Update frontend services to use parapharmacy API
- Add Swagger documentation at /api/docs
This commit is contained in:
Antoni Nuñez Romeu
2026-07-16 12:26:54 +02:00
parent 837f2cd4f3
commit b34657c78f
15 changed files with 1129 additions and 27 deletions
+22
View File
@@ -0,0 +1,22 @@
export const config = {
port: process.env.PORT || 3002,
mongodb: {
uri: process.env.MONGODB_URI || 'mongodb://localhost:27017/parapharmacy',
},
cors: {
origin: process.env.CORS_ORIGIN || 'http://localhost:3000',
credentials: true,
},
rateLimit: {
windowMs: 60 * 1000, // 1 minute
max: 100, // limit each IP to 100 requests per windowMs
},
sources: [
{ id: 'promofarma', name: 'Promofarma', url: 'https://www.promofarma.com' },
{ id: 'pharmarket', name: 'Pharmarket', url: 'https://www.pharmarket.es' },
{ id: 'docmorris', name: 'DocMorris', url: 'https://www.docmorris.es' },
{ id: '1001farma', name: '1001Farma', url: 'https://www.1001farma.net' },
{ id: 'primor', name: 'Primor', url: 'https://www.primor.eu' },
{ id: 'mifarma', name: 'MiFarma', url: 'https://www.mifarma.es' },
],
};