Freelance UI Designers in KarachiFreelance UI Designers in Karachi
Product Designer & Developer
$10k+
Earned
12x
Hired
5.0
Rating
222
Followers
Product Designer & Developer
Cover image for Not every project is as
Not every project is as easy as it looks. About a month ago, I got hired through Upwork by Jack, the owner of Alderwood Estate Agents in the UK, to redesign their website from top to bottom. At first, I thought it would mainly be a website redesign. Then we started adding more features and I realized this was going to be one of the most challenging projects I've worked on. The biggest challenge was connecting the website with Street CRM so every property would automatically appear on the website with the correct information. Properties for sale, to let, and sold. All had to stay synced with the CRM without any manual work. The website was built with WordPress and Elementor using a premium template. That meant I had to customize a lot of the template while making sure I didn't break anything else. Honestly, every time I fixed one thing, something else stopped working. 😅 There were many days where I was just searching, testing and trying different solutions until everything finally worked the way we wanted. One thing I'm really thankful for is Jack. He was patient, professional and trusted me throughout the whole process. Working with clients like him makes difficult projects much easier. The project took almost a month to complete, but I learned so much from it. Looking back, I'm really proud of what we built together. Here are some mockups from the final design. Also, I'd love to hear your stories. Have you ever worked on a project that looked simple at first but turned into something much bigger? Or maybe a bug that kept you awake for days? 😅 Share your experience in the comments. And if you like the work, a like or a comment would honestly mean a lot. It keeps me motivated to keep learning and building better things. ❤️
2
12
979
UI/UX Designer | Framer & Video Editing
$1k+
Earned
3x
Hired
5.0
Rating
35
Followers
UI/UX Designer | Framer & Video Editing
Senior Full-Stack & Web3 Engineer | Technical Lead
$1k+
Earned
1x
Hired
5.0
Rating
20
Followers
Senior Full-Stack & Web3 Engineer | Technical Lead
UI/UX Designer crafting digital experiences
1x
Hired
5.0
Rating
38
Followers
UI/UX Designer crafting digital experiences
3D Isometric & UI Motion Designer for SaaS Explainer Videos
$1k+
Earned
1x
Hired
6
Followers
3D Isometric & UI Motion Designer for SaaS Explainer Videos
Production-ready AI agents and SaaS built to scale reliably.
$25k+
Earned
2x
Hired
108
Followers
Production-ready AI agents and SaaS built to scale reliably.
Cover image for Multi-Tenant CMS and Website Platform
Multi-Tenant CMS and Website Platform for Multi-Brand Organizations Description: A production-ready multi-site CMS that lets one team run many branded websites from a single admin. It includes tenant isolation, a block-based page builder, automated WordPress migration, AI-assisted page building, and AWS infrastructure. The challenge: The client needed to manage many separate websites from one CMS. Each site had its own domain, theme, content and users. The platform had to do four things at once: • keep tenants fully isolated from each other • give editors reusable building blocks instead of one-off pages • make moving existing WordPress sites in fast instead of a manual rebuild • run reliably in production, not just work as a prototype What I built: 1. Multi-tenant Payload CMS. Tenant isolation, per-tenant domains and themes, and role-based access control, so every brand stays separate within one admin. 2. Block-based page builder. Reusable content blocks, plus blog and form support, so editors build pages without a developer. 3. WordPress migration automation. Existing sites are imported automatically, and content import and export runs through structured workflows. 4. AI-assisted page and component generation. Claude turns screenshots and layouts into ready-to-use pages and components, which speeds up new-site setup. 5. Performance and SEO. Static site generation with Next.js, semantic HTML, and Tailwind CSS for fast, search-friendly pages. 6. Production AWS infrastructure. Defined in CloudFormation with RDS (PostgreSQL), S3, CloudFront, ACM, SES, Lambda and WAF, with separate staging and production environments. 7. Production-readiness work. Improvements to admin UX, data workflows, environments and infrastructure security, plus Playwright in the tooling. The outcome: The product went from concept to a production-ready multi-site platform. One team can now launch and run many branded websites from one place. Each site is isolated, fast and SEO-friendly. Migrations and new builds take a fraction of the manual effort. Key takeaway: A white-label CMS only scales when flexible content tooling comes with real production engineering: isolation, migrations, infrastructure and security. Good fit for: agencies, franchises, multi-brand organizations, and SaaS teams managing many websites from one platform. Skills and tools used: Next.js · Payload CMS · PostgreSQL · Tailwind CSS · AWS · CloudFormation · CloudFront · RDS · S3 · Lambda · SES · WAF · Playwright · Claude API · Multi-Tenant SaaS · Headless CMS · WordPress Migration · SEO
1
11
Cover image for From Instinct to Infrastructure: How
From Instinct to Infrastructure: How Athliq Went From Trainer's Notebook to Production Performance Platform ────────────────────────────────────────── The Person Who Understood the Problem Before Anyone Else Did Marcus had been a strength and conditioning coach for eleven years. He'd worked with professional football squads, Olympic track athletes, and NCAA programs. He knew exactly what was wrong with how performance data was managed, not because someone told him, but because he'd lived inside the problem every day. Every morning, he'd open four browser tabs, a spreadsheet, and a WhatsApp thread just to answer one question: Is this athlete safe to train today? HRV from one app. Sleep data from another. Yesterday's load from a Google Sheet. Wellness check-ins in a form nobody filled out consistently. Injury notes in a physio's personal folder. The picture was always incomplete, not because the data didn't exist, but because no system was designed to assemble it. He wasn't guessing the problem. He was the problem's daily victim. So he built something. ────────────────────────────────────────── The First Version Had Real Value What Marcus and a developer friend put together in six weeks was genuinely useful. A React frontend. Static JSON files simulating the data feeds he wished he had. A morning readiness dashboard showing each athlete's status: green, amber, red. ACWR calculations. A training plan view. A return-to-play protocol tracker. It looked like a real platform. It felt like one. When he demoed it to his performance director, the response was immediate: "This is what we've been trying to build for two years." The prototype surfaced something important. The problem wasn't that nobody had the data. The problem was nobody had designed the right lens to look at it through. Marcus had. His system organized information around the questions coaches actually ask, not the questions software vendors assume they ask. The initial build worked. For one squad. In static conditions. With fake data. And that was exactly the point where it started to matter, and exactly the point where its limitations became unavoidable. ────────────────────────────────────────── What Started Breaking The prototype had no backend. Data was hardcoded. Every "insight" was pre-written. The readiness scores didn't calculate; they were authored. When a second sport scientist saw the demo and said, "Can we plug in our GPS data?" there was no honest answer that didn't involve a complete rebuild. More specifically: The data layer was decorative. The JSON files looked real but required manual authoring for every scenario. There was no pipeline, no ingestion, no validation. Any live deployment would mean the dashboard showed stale or fabricated numbers, which in a performance context is worse than showing nothing at all. The AI insights were static strings. Every "AI-generated" recommendation was hardcoded text. In the prototype, this was fine. It demonstrated the concept. In production, it would mean the same insight appearing for every athlete regardless of their actual state, silently eroding clinician trust. The system had no concept of time. Training load calculations, ACWR ratios, wellness trends, all of these are temporal by definition. The prototype rendered them as snapshots. A real system needed rolling windows, historical comparison, and the ability to detect change over time. There was no role isolation. The role switcher in the UI was cosmetic. A physio and a performance director seeing the same underlying data with a CSS class change was not access control, it was theater. Nothing would survive a real integration. Real wearables return messy, incomplete, delayed data. The system had no error handling, no retry logic, no fallback states. The first real data feed would have broken the UI in ways that were invisible until they were catastrophic. The system was not wrong. It was early. ────────────────────────────────────────── Why They Didn't Just Fix It Themselves Marcus understood sport science. His developer understood React. Neither of them had built a production data system before, and that gap is not a skills deficiency, it is a domain specialization. What they needed was not someone to rewrite their frontend. The frontend was actually good. The visual hierarchy was sharp, the domain terminology was accurate, the workflows reflected how coaches genuinely think. That institutional knowledge was irreplaceable and not to be discarded. What they needed was: • A real-time data layer that could ingest from multiple sources reliably • A calculation engine that could run ACWR, load zone distributions, and readiness scoring against live data • A structured API contract between the front and back end • Authentication and role-based data scoping that actually enforced access boundaries • Observability, so when something silently broke, someone would know The prototype had proven the concept. The job now was to make the concept dependable. ────────────────────────────────────────── What We Actually Did We kept the frontend. Almost entirely. The visual design, the component architecture, the domain-accurate terminology, all of it stayed. We refactored the data layer, not the UI layer. The prototype's greatest strength was its UX fidelity to how coaches actually work, and we had no interest in rebuilding that from scratch. We built a real data ingestion pipeline. Rather than static JSON, we designed a service layer that could ingest from GPS units, HRV monitors, and wellness form submissions. Each source had its own adapter with validation, normalization, and error handling. Partial data was acceptable; silently wrong data was not. We replaced static calculations with a live computation engine. ACWR calculations now ran against a rolling 28-day window of actual load data. Readiness scoring pulled from real HRV baselines, not fixed numbers, and recalibrated as an athlete's personal baseline shifted over a training block. We replaced pre-written AI insights with a rules-based inference layer. Every insight shown in the platform now corresponded to a condition that was evaluated against live data. If Lena Vasquez's ACWR crossed 1.3 and her HRV dropped more than 15% from her 7-day baseline, the injury risk flag was triggered, not because it was hardcoded, but because those conditions were true. We implemented real role-based access control. A physio sees medical data, injury history, and RTP protocols. A sport scientist sees load analytics and benchmarks. A performance director sees the squad-level overview. A head coach sees readiness and today's session. The frontend already had role-switching built in, we gave it actual enforcement. We added observability throughout. Every data ingestion event was logged. Every calculation that produced an out-of-range result generated an alert. If a data source stopped sending, the system surfaced a staleness warning rather than silently displaying old numbers as current. ────────────────────────────────────────── Tech Stack React 19 + Vite, Tailwind CSS v3, Recharts, React Router v7, Node.js + Fastify, PostgreSQL + TimescaleDB, Redis, GPS/HRV/sleep data adapters (Catapult, Polar, Garmin), Google Forms/Typeform ingestion, Auth0, row-level security, Sentry, Datadog, Railway/Render, Vercel, Supabase Storage What Changed The morning workflow Marcus had been running across four tabs and a spreadsheet now ran in a single view that was populated automatically before he arrived at the training ground. The difference wasn't just convenience. It was confidence. When the dashboard flagged an athlete as high-risk, the coaching staff could interrogate why and trust the answer. When a return-to-play progression showed 80% completion, that number reflected actual criteria met against measured data, not a manually updated percentage. The platform was no longer a demo tool. It was a clinical decision-support system. For the squads using it, the shift was measurable: fewer reactive injury responses, more consistent load monitoring, and perhaps most importantly, a shared language between coaching staff, physios, and sport scientists built around the same data rather than competing interpretations of separate sources. ────────────────────────────────────────── The Part That Rarely Gets Said Most platforms built in this space start from the software side. Someone builds a data collection tool, adds a dashboard, and then tries to reverse-engineer what coaches actually care about. Athliq started from the other direction. A domain expert who understood the problem at a professional level built the frame first, and built it correctly. The pain points were real, the workflows were accurate, the terminology was precise. The engineering work didn't fix a bad idea. It made a good idea survivable. That distinction matters more than most technical case studies acknowledge. The hardest part of building a platform like this is not the infrastructure. It's knowing which questions to answer. That knowledge was already there. Our job was to make sure the system could keep answering them reliably, at scale, over time. ────────────────────────────────────────── Athliq is now in active deployment across two professional squads and one university performance program. The morning readiness dashboard processes real-time data from four integrated sources and serves role-scoped views to performance directors, sport scientists, physiotherapists, and athletes.
1
3
2K