Full stack · Industrial · General Future
GF Recycling CRM
GF Recycling turns e-waste into raw material: its Petőfibánya plant recovers copper at around 98% purity, and a 33,000 m² processing centre is being built in Heréd. Every tonne starts with buying scrap from suppliers across Hungary, and I built the procurement CRM and site ERP behind that end to end: it finds and scores suppliers, prices material against the LME, and plans the sales team's day in the field.

- Role
- Full-Stack Engineer
- Users
- Procurement reps and sales managers
- Platform
- Web app + installable PWA
- Languages
- Hungarian, English
The Problem
What Needed Solving
The procurement team needed one place to work out which companies are worth a visit, what to offer for their material as metal prices move, and who is visiting whom today.
Reps spend their days on the road, often on weak mobile signal, so the tool had to work well on a phone in the field as well as on a manager's desktop.
What I Did
Key Decisions
Lead Scoring With GPT-4o
Each prospect gets a 0–100 score combining deal value and company data with a GPT-4o estimate of how likely they are to convert. Scoring runs as batch jobs, with progress streamed to the browser over Server-Sent Events and a stop control for long runs.
Prices That Follow the Market
LME metal prices sync into the app and combine with per-product settings and smelter contracts. A generator turns them into the weekly price list, with a configurable margin for beating competitors' offers.
Built for the Road
The CRM installs as a PWA, with location sharing, GPS check-ins, a map of prospects and a planned route for the day. Fonts load without blocking the first paint, so the app appears quickly even on a poor connection.
Search That Copes With Messy Notes
BM25 full-text search covers company records and reps' voice memos, so a half-remembered detail from a site visit is enough to find the right supplier.
Commission Everyone Can Check
Commission rates per rep and per product, logistics costs and forecasts sit in the app, so reps can see what a deal is worth to them before they make it.
- Node.js
- Express
- JavaScript
- OpenAI API
- Leaflet
- PWA
- nginx
How It Works
Architecture
- Desktop AppManagersPWAField reps
- nginx
- Express APINode.js
- OpenAIGPT-4o scoringLME PricesMarket syncData StoreCompanies · pipeline
One Express API serves the desktop app and the field PWA.
Screens
Inside the Product
- crm.generalfuture.com

Today view: scored hot leads, pipeline KPIs and the team's to-do list
Outcome
Results
- 1Engineer, from API to field app
- 0–100AI lead score on every prospect
- 2Languages, Hungarian and English
- GF Recycling's procurement team runs its day on the CRM, from the office dashboard to the field app on reps' phones.
- The weekly price list now comes straight from synced LME prices and smelter contracts, instead of being put together by hand.
- Reps start each morning with their best leads ranked and a route planned, and managers see the whole pipeline and every overdue task in one place.


Let's Build Something Together
Hiring for a front-end or full-stack role, or need a product built? Email is the quickest way to reach me.