Available for agency backlogs and projects
L.
Freelance backlog partnerfor Swiss web and digital agencies

Web developer in Basel: WordPress websites and web apps built to fit.

I take work off your core team exactly where the day runs out of hours: fast WordPress, Elementor and CSS fixes, measurable local SEO (Google and AI search), and complete dashboards and web apps with React and Supabase.

− This ticket has been stuck in the agency backlog for three sprints.
BACKLOG TICKET #402
WordPress · Elementor · mobile bug

Mobile menu overlaps and the CTA sticks out past the screen

OPEN
LIVE PREVIEW (iPhone 16 · 390px)● Problem active (before)
KundenSeite.ch
StartAngebotKontakt
Request a quote now (overflow!)
elementor-mobile-patch.cssEstimated effort: 20 min.
- .mobile-nav-wrap { width: 120vw; overflow: visible; }- .hero-cta-btn { margin-right: -48px; white-space: nowrap; }  /* Click “Solve ticket” below to apply the patch */
// A simple way of working for agencies

No long onboarding. Just send the ticket across.

Overnight: tickets you send at 5 p.m. are often ready on staging by 8:30 the next morning.

  1. STEP 01Your time: 2 min.

    Send the backlog ticket or the task

    Send the page link, a short screenshot or a Loom video. A WordPress bug, a mobile layout, a RankMath setup or a feature request.

  2. STEP 02 · FREE TESTCHF 0 risk

    I solve the first small ticket (up to 30 min.) for free

    Instead of a long pitch, you see on the real code how cleanly and quickly I work in your existing WordPress or Git setup.

  3. STEP 03Hourly or fixed price

    Extra capacity when the team is full

    You book me when your team is at capacity. Single tickets at an hourly rate, clear fixed-price packages, or complete client websites and custom web apps.

// Real work, real systems

Two kinds of work. One person to call.

I use WordPress and local SEO as the fast lane for day-to-day client work. I also have the architecture experience to build complete web apps and internal tools with React and Supabase.

CASE 01 · WORDPRESS & LOCAL SEORole: freelance web developer & SEO (1 year of build and running it)
vakeup.ch (live site) ↗

VakeUp Basel: from a new build to the top 1–5 on Google, ChatGPT and Gemini

For this Basel catering and take-away business (100% vegetarian and vegan, focused on local ingredients) I built the whole WordPress presence, wired complex ordering and enquiry flows with Fluent Forms, and took on the local search marketing.

Rankings you can check (Basel area)Organic + AI search
🔍 “catering basel”
Top 1–3 on Google
🔍 “veganes catering basel”
Position 1 on Google
🔍 “vegetarisches catering” / “firmen catering”
Top 1–5 on Google
🤖 ChatGPT & Google Gemini recommendation
Top recommendation in Basel
  • WordPress
  • Elementor
  • RankMath SEO
  • Fluent Forms
  • Local SEO / GEO
  • Google Ads
  • Custom SVG animation
✦ LIVE CODE SAMPLE FROM VAKEUP.CHPlain SVG + CSS keyframes (0 KB of video)
VakeUp♥
💡 Lightweight inline SVG illustrations instead of heavy video. Better for PageSpeed and SEO.PageSpeed 95+
CASE 02 · INTERNES ERP & TEAM-DASHBOARDBuilt from scratch · Next.js 16 · React 19 · Supabase
Includes a companion app for smart fridges (under NDA)

A made-to-fit operations dashboard, in the spirit of Slack and Monday

Off-the-shelf tools rarely match a real kitchen and catering day. I built an operations cockpit from scratch that brings catering enquiries, HACCP logs, finance, inventory, the kitchen, staff, contracts and live team chat into one place.

  • Strict role visibility: An admin sees every module (including finance and contracts via signed Supabase Storage links), while kitchen or drivers only see their own areas.
  • Realtime team chat: A custom chat bubble with an unread counter on Supabase Realtime, with no per-seat licence.
  • Companion smart-fridge app (confidential): Alongside it, a specialised app for running intelligent fridges.
⚙️ SHOW THE TECHNICAL ARCHITECTURE (FOR TECH LEADS)

Frontend: TypeScript, React 19 (TSX), Next.js 16 (App Router), Tailwind CSS 4, drag-and-drop cockpit cards.

Backend (serverless): Supabase Postgres, Supabase Auth (username or email), Supabase Storage (signed links for finance and contract files), Supabase Realtime.

Build & QA: Static export (next build → out), strict ESLint and TypeScript check at build time.

INTERACTIVE ROLE PREVIEWTry the permission system:
Navigation
📋 Cockpit
🥗 Kitchen
🌡️ HACCP
📦 Inventory
💰 Finance
📄 Contracts
🧊 Fridge-App
CATERING & KITCHEN
Company event, Basel (85 people)

Status: prep underway · HACCP temperature checked ✓

🔒 VISIBLE TO ADMIN ONLY
Finance and signed documents

Month-end, supplier contracts and a margin overview.

Team chat (Supabase Realtime): “The 11:30 delivery is packed and ready.”
2 new
CASE 03 · MULTI-USER WEB-APP & KILive at linus-os.ch · Cloudflare Workers + Supabase RLS
Open linus-os.ch ↗

Linus OS: a modular life, finance and health system with an AI photo scanner

A full multi-user platform (German / CHF) where people manage appointments, projects, clients, finances, shopping lists, routines and food in one place. With Postgres row-level security (RLS) each account sees only its own data, and modules that are not needed disappear from the UI.

📸 OpenAI Vision meal scan

Photo of the plate → the AI estimates calories and macros before saving. Cost: under 1 centime per scan.

📲 Barcode and web push

A camera scanner connected to Open Food Facts, plus a service-worker web push for morning and evening reviews.

⚙️ SHOW THE ARCHITECTURE OF LINUS-OS.CH

UI & stack: TypeScript, React 19, Next.js 16 (App Router), Tailwind CSS 4, shadcn/ui, several colour palettes (light/dark), a configurable 6-slot mobile bottom bar.

Data & APIs: Supabase Postgres with row-level RLS, OpenAI Vision API, Open Food Facts API, ICS calendar import.

Hosting: Static export served by Cloudflare Workers on linus-os.ch.

INTERACTIVE PREVIEW: AI CALORIE ESTIMATE & MODULES< 0.01 CHF / API-Call
Buddha bowl with tofu and quinoa
Source: OpenAI photo analysis · editable before saving
CALORIES540 kcal
PROTEIN28 g
CARBS58 g
FAT19 g
MODULAR UI (shown or hidden per account):
✓ Today & calendar✓ Finance (CHF)✓ Health & AI scan✓ Business & clientsKnowledge / archive (hidden)
CASE 04 · KONTEXT-KI & EDGE FUNCTIONSLive at thip.linus-os.ch · Vite + React 19 + Supabase Edge Functions
Open thip.linus-os.ch ↗

thipthipTranslate: cultural context translation with API caching and a cost cockpit

In languages such as Thai, Lao or Vietnamese, sentence endings and pronouns depend on who is speaking, to whom (a partner, an elder, a stranger) and in what mood. Instead of a stiff word-for-word translation, this web app returns culturally accurate phrasing, including pronunciation, a reason, 3 alternatives and a live conversation mode (OpenAI Whisper plus speech output).

WHY THIS CASE MATTERS FOR AGENCY CLIENTS:

Many SMEs want AI features but fear uncontrolled OpenAI costs or leaked API keys. In thipthipTranslate the key sits protected as a secret in Supabase Edge Functions, a database cache absorbs duplicate requests for free, and an admin dashboard watches token cost in realtime.

INTERACTIVE CONTEXT TEST (EN → THAI / LAO)
Source sentence: “Have you eaten anything today?”
«Gin khao rue yang khrap?» (กินข้าวหรือยังครับ)

Why this choice: an affectionate, everyday question between partners or friends in Thailand (“have you eaten yet?”). A natural tone, without stiff distance.

🛡️ Admin dashboard: OpenAI API cache onModell-Routing: Lao (Pro) / DE-EN-TH (Mini)
// For Swiss agencies & SMEs

What you can book me for.

A clean handover, direct communication in German or English, and prices you can plan. Hourly, or a fixed price per ticket or milestone.

01 / DAY-TO-DAYAvailable now

WordPress & Elementor backlog support

I clear stalled tickets for your clients: mobile layout bugs, CSS glitches, complex Fluent Forms flows, new landing pages or custom SVG animations.

Learn more →
Billing:Fixed price per ticket / hourly
02 / VISIBILITYWhite-label possible

Local SEO (RankMath) and GEO

Technical and editorial optimisation for local searches in Switzerland, so the local ranking improves and the business is easier to find in ChatGPT and Gemini too.

Learn more →
Proof:Top 1–5 rankings in Basel
03 / CUSTOM WEB APPSAI-first speed

Custom dashboards, portals and AI tools

When WordPress runs out of room: with Cursor AI, React/Next.js and Supabase I build secure client portals, internal team dashboards and OpenAI integrations quickly.

Learn more →
Stack:Next.js · Supabase RLS · Cloudflare
// Pricing

Clear prices, without an agency markup.

A fair hourly rate for single tickets, or a fixed price when the scope is clear. All prices in CHF. The quote always comes first, with no commitment.

Hourly rate
CHF 45

per hour · billed in 15-minute increments · no minimum, no subscription

Backlog ticket

from CHF 45

A CSS, Elementor or plugin fix of up to 1 hour. The first ticket up to 30 min. is free.

Landing page

from CHF 690

One page in WordPress/Elementor, responsive, with a form, a basic RankMath setup and PageSpeed work.

SME website

from CHF 1,890

Up to 5 WordPress pages, design to your brand, contact form, legal-page structure, a local SEO base and a handover.

Local SEO setup

CHF 890

Keyword research, RankMath, schema, Google Business Profile and GEO. Rank Math Pro plus WP Rocket is worth having. The licence is about CHF 155.00 per year and the client pays it. Fixed price for WordPress sites. For another CMS or custom code, the price is on request after I have looked at the system.

Google Ads

CHF 390 + CHF 190 / month

Setup of one local search campaign. Care is one monthly check of that campaign. Google ad spend is extra. Anything beyond that is CHF 45/hour.

Maintenance & SEO support

from CHF 149 / month

Updates, backups, uptime monitoring, a monthly ranking report and 1 hour of support included. Cancel any month.

Web app / MVP

from CHF 3,900

A dashboard, client portal or AI tool with React, Next.js and Supabase, including login, roles (RLS) and hosting setup.

All prices in CHF. Fixed prices cover the scope in the quote; extra requests are billed transparently at the hourly rate.

<fixed/>★ SEO #1
Linus · web developer in Basel, working remotely
// About me and how I work

A practical builder, not agency filler.

Hello, I am Linus, a web developer in Basel. I combine two things rarely found in one person: I know the classic Swiss SME stack (WordPress, Elementor, local SEO and Google Ads) inside out, and I enjoy building complex web apps with React, TypeScript and Supabase.

For app work I use Cursor AI directly in the code, openly and on purpose. AI speeds up the typing. I still own the database architecture, the security model (row-level security, protected edge functions), API cost control and a clean build. For your agency that means agency-level quality in a fraction of the usual turnaround.

LANGUAGES
German / Swiss German, English
RESPONSE TIME
Within 4 business hours
START HERE
First test ticket (30 min) free
// Questions agencies ask

Test ticket, process, pricing. Short answers.

How does the free test ticket work?

You send a small, clearly scoped task from your backlog, for example a mobile bug, an Elementor issue or a RankMath setup. The first task of up to 30 minutes is free and without commitment. You see how I work, on the real code.

What does a web developer in Basel cost?

My rate is CHF 45 per hour, billed in 15-minute increments. Defined jobs have fixed prices: landing pages from CHF 690, SME websites from CHF 1,890, a local SEO setup for WordPress at CHF 890, Google Ads from CHF 390 to set up plus CHF 190 per month to run, and web apps from CHF 3,900. You always get a quote before any work starts.

Hourly rate or fixed price: which is better for our agency?

For single backlog tickets and maintenance, the hourly rate is the better fit because you only pay for the time used. For new websites, landing pages or web apps with a clear scope, I recommend a fixed price per milestone so the budget stays predictable for you and your client.

How does the work with agencies actually run?

You send the ticket by email, through your own ticket system, or as a Loom video. I work in your existing WordPress or Git setup, ideally on staging, document every change and hand it over for review. White-label is available. Your client does not have to know I am involved.

How fast do you reply, and when is a ticket done?

I reply within 4 business hours with an estimate. Small fixes sent late in the afternoon are often ready on staging the next morning.

Do you also do local SEO for businesses in Basel?

Yes. I optimise WordPress sites with RankMath, structured data (LocalBusiness schema), the Google Business Profile and copy aimed at local searches. That improves local rankings and the chance of showing up in AI answers from ChatGPT, Gemini and Perplexity. How far it climbs depends on the industry, the competition and the starting point. For VakeUp Basel, “catering basel” sits in positions 1–5.

When is a custom web app a better fit than WordPress?

As soon as you need logins with roles, internal workflows, realtime data or AI features, WordPress runs out of room. I then build tailored dashboards and portals with React, Next.js and Supabase, including row-level security so each user only sees their own data.

// BLOG & INSIGHTS

Practical notes from Basel: WordPress, SEO and web apps.

See all articles →
NO COMMITMENT

Send me your first small backlog ticket.

A stubborn CSS bug on mobile, an Elementor widget that sticks, or a question about a web app? Fill in the form. I reply within 4 business hours with a clear estimate.

  • ✓ First test ticket (up to 30 min.) free
  • ✓ No minimum, no subscription
  • ✓ Every change is documented
  • ✓ Data stays in Switzerland (Zurich)

By sending this form you accept the privacy policy. Spam protection by Cloudflare Turnstile.