# ARLing > ARLing s. r. o. builds small, free, browser-only developer tools for problems developers keep hitting: no account, no upload, no tracking of what you type. ## What it does ARLing is a one-person software company in Bratislava, Slovakia that publishes small, free, single-purpose developer tools. Each tool is a static, client-side web page: the diagnostic or check it performs runs entirely in your browser, with no backend processing your input. This page is the hub that lists all of them. ## Who it is for Developers looking for a fast, free, no-signup tool to diagnose a specific, well-scoped problem: Supabase Auth OAuth/magic-link redirect misconfiguration, across Expo, web (Next.js/Vite/SvelteKit), and Flutter: and anyone evaluating whether to trust or link to ARLing's tools. ## How to use Open the hub page, pick a tool from the list, and use it directly: no account, no install, no payment. Each tool links out to its own page and its own GitHub repository. ## Tools - **Redirect Doctor: Expo + Supabase OAuth**: https://arling.sk/expo-supabase-auth-doctor/ Paste your Expo scheme, runtime, Supabase project URL / Site URL / redirect allow-list, and OAuth provider redirect URIs. Get the expected redirect URL for every Expo runtime (Expo Go, dev build, standalone, web), the exact mismatches with severity, copy-paste fixes, and a checklist. Free, client-side, nothing uploaded. llms.txt: https://arling.sk/expo-supabase-auth-doctor/llms.txt llms-full.txt: https://arling.sk/expo-supabase-auth-doctor/llms-full.txt GitHub: https://github.com/AndryRoby/expo-supabase-auth-doctor - **Supabase Auth Redirect Doctor: web apps**: https://arling.sk/supabase-redirect-doctor/ For Next.js, Vite and SvelteKit apps where Supabase OAuth redirects to localhost or fails in production. Enter your Site URL, redirect allow-list, callback route and provider settings and get the exact mismatch and the fix. Free, client-side, nothing uploaded. llms.txt: https://arling.sk/supabase-redirect-doctor/llms.txt llms-full.txt: https://arling.sk/supabase-redirect-doctor/llms-full.txt GitHub: https://github.com/AndryRoby/supabase-redirect-doctor - **Supabase Auth Deep Link Doctor: Flutter**: https://arling.sk/flutter-supabase-doctor/ For Flutter apps using supabase_flutter where signInWithOAuth or a magic link doesn't deep-link back into the app on Android or iOS. Paste your Info.plist, AndroidManifest, redirectTo and Supabase config and get the exact mismatches, severity, copy-paste fixes and a checklist. Free, client-side, nothing uploaded. llms.txt: https://arling.sk/flutter-supabase-doctor/llms.txt llms-full.txt: https://arling.sk/flutter-supabase-doctor/llms-full.txt GitHub: https://github.com/AndryRoby/flutter-supabase-doctor ## Privacy None of ARLing's tools require an account or login. Nothing typed into a tool is uploaded or sent anywhere; each tool's check runs in the visitor's own browser. Anonymous usage counts (page views, which button was clicked: not the content typed) are collected with a self-hosted Umami instance. ## Notes Short pages that answer one exact error message and link to the tool that checks it: https://arling.sk/notes/ - [Error 400: redirect_uri_mismatch, explained character by character](https://arling.sk/notes/google-redirect-uri-mismatch/): every cause of Google's redirect_uri_mismatch in NextAuth, Supabase and Firebase, with the exact fix for each one. - [Supabase OAuth redirects to localhost in production](https://arling.sk/notes/supabase-oauth-redirects-to-localhost/): why Site URL and the redirect allow-list fall back to localhost, and the fix for each cause. - [Expo + Supabase: why the OAuth deep link never comes back to the app](https://arling.sk/notes/expo-supabase-deep-link-not-returning/): what makeRedirectUri() returns per runtime, the Supabase allow-list, and the native-code fix. - [Supabase Flutter deep link not working](https://arling.sk/notes/supabase-flutter-deep-link-scheme/): six places scheme, host and the underscore bug break a supabase_flutter deep link. - [Universal links open Safari instead of your Expo app](https://arling.sk/notes/expo-universal-links-open-safari/): how to fix apple-app-site-association, assetlinks.json and app.json. - [Stripe "No signatures found matching the expected signature"](https://arling.sk/notes/stripe-webhook-signature-verification-failed/): twelve exact causes of Stripe webhook signature verification failing, with raw-body fixes per framework. - [Banka odmietla súbor pain.001](https://arling.sk/notes/banka-odmietla-pain001/): šesť najčastejších príčin, prečo Tatra banka, SLSP, VÚB alebo ČSOB odmietli XML, a ako ich nájsť. - [Hromadný príkaz z Excelu do banky](https://arling.sk/notes/hromadny-prikaz-xml-z-excelu/): presné hodnoty polí, BIC, VS/ŠS/KS a limity pre pain.001 XML. - [Variabilný symbol v SEPA XML: kam presne patrí](https://arling.sk/notes/variabilny-symbol-v-sepa-xml/): VS, ŠS a KS nemajú v pain.001 vlastné polia; kam patria v EndToEndId a v akom poradí. - [Diakritika v SEPA platbe](https://arling.sk/notes/diakritika-v-sepa-platbe/): prečo ČSOB odmietne diakritiku, čo vyžadujú ostatné banky, a presný zoznam povolených znakov. - [Párovanie platieb z výpisu bez ručnej práce](https://arling.sk/notes/parovanie-platieb-z-vypisu/): ako spárovať platby z výpisu camt.053 s faktúrami podľa VS a sumy, a čo robiť pri čiastočných úhradách, preplatkoch a platbách bez VS. ## Links - Hub: https://arling.sk/ - Notes: https://arling.sk/notes/ - How we work: https://arling.sk/how-we-work/ - Privacy (EN): https://arling.sk/privacy/ - Podmienky používania (SK, terms of use): https://arling.sk/podmienky/ - Ochrana osobných údajov / GDPR (SK): https://arling.sk/gdpr/ - Contact: mailto:andrej@arling.sk ## Contact ARLing s. r. o., Ivanská cesta 32E, 821 04 Bratislava, Slovakia. Company ID 56583486. andrej@arling.sk - [bookapp](https://arling.sk/bookapp/): spatial digital twin of a home library in millimetres; free public beta for Android and Windows (English and Slovak). Downloads: https://github.com/AndryRoby/bookapp/releases/latest - [google-oauth-redirect-doctor](https://arling.sk/google-oauth-redirect-doctor/): Google OAuth redirect_uri_mismatch Doctor: paste the redirect URI from Google's error and your Google Cloud Console list, pick your stack (NextAuth/Auth.js, Supabase, Firebase, Passport, Django allauth, Laravel Socialite, Python google-auth-oauthlib, Expo AuthSession, Flutter, Postman, gcloud) and get the exact mismatch and the string to add. - [expo-universal-links-doctor](https://arling.sk/expo-universal-links-doctor/): Expo Universal Links & App Links Doctor: paste apple-app-site-association, assetlinks.json and app.json values (associatedDomains, intentFilters, bundle id, team id, package name, SHA256 fingerprints) and get the mismatches and fixes. - [sepa-pain001-doctor](https://arling.sk/sepa-pain001-doctor/): SEPA pain.001 Doctor for Slovak banks (Tatra banka, SLSP, VÚB, ČSOB): paste a pain.001 XML payment file and get every invalid element (IBAN, BIC, amounts, NbOfTxs/CtrlSum, VS/SS/KS symbols, character set) with a fix, in Slovak. Client-side only. - [Privacy](https://arling.sk/privacy/): what is collected (visit counts without cookies, optional e-mail list) and what never is. - [stripe-webhook-doctor](https://arling.sk/stripe-webhook-doctor/): Stripe Webhook Signature Doctor: paste the Stripe error, pick your framework and body handling, and get the exact cause of signature verification failures (parsed body, wrong secret, test vs live, tolerance, proxy) with the raw-body code for your framework. - [sepa-pain001-generator](https://arling.sk/sepa-pain001-generator/): SEPA pain.001 Generator for Slovak banks (Tatra banka, SLSP, VÚB, ČSOB): paste a payment list from Excel or CSV and download a validated pain.001 XML bulk order. Slovak UI, client-side only. - [camt053-to-excel](https://arling.sk/camt053-to-excel/): camt.053 bank statement XML (Tatra banka, SLSP, VÚB, ČSOB) to CSV or Excel for accountants, with VS/SS/KS symbols, counterparty and a balance check. Slovak UI, client-side only. - [parovac-platieb](https://arling.sk/parovac-platieb/): Párovač platieb, matches a camt.053 bank statement (or its CSV) against an invoice list from Pohoda, Omega, Money S3, SuperFaktúra, iDoklad or Fakturoid by variable symbol, amount and date; outputs matched, partial, overdue and unmatched lists as CSV. Slovak UI, client-side only. - [bankove-nastroje](https://arling.sk/bankove-nastroje/): Bankové nástroje pre účtovníkov, one Pro licence unlocking SEPA pain.001 Doctor, SEPA pain.001 Generátor, camt.053 do Excelu, and Párovač platieb at once (9 EUR/month or 79 EUR/year); every tool's free tier stays unlimited on its own. Slovak UI, client-side only. - [cors-doctor](https://arling.sk/cors-doctor/): CORS Doctor: paste the "has been blocked by CORS policy" console error, what your front end sent, and the response headers your server sent back, and get the exact header or value that's wrong, with a copy-paste fix for 11 stacks. Client-side only. - [jwt-doctor](https://arling.sk/jwt-doctor/): JWT Doctor: paste a JWT and see exactly why it fails (jwt malformed, invalid signature, jwt expired, algorithm confusion, issuer/audience mismatches), with signature verification via WebCrypto for HS/RS/PS/ES algorithms. Client-side only. - [cookie-samesite-doctor](https://arling.sk/cookie-samesite-doctor/): Cookie Doctor (SameSite, Secure, Domain): paste your Set-Cookie attributes and request context and get the exact attribute or missing fetch credentials option that's blocking the cookie. Client-side only. - [redirect-loop-doctor](https://arling.sk/redirect-loop-doctor/): Redirect Loop Doctor: paste your redirect chain, Cloudflare SSL mode and server/app HTTPS settings and find the exact pair of rules fighting each other behind ERR_TOO_MANY_REDIRECTS. Client-side only. - [firebase-auth-domain-doctor](https://arling.sk/firebase-auth-domain-doctor/): Firebase Auth Domain Doctor: paste your firebaseConfig authDomain, page origin and Authorized domains list and get the exact cause of auth/unauthorized-domain or a signInWithRedirect that never returns. Client-side only. - [janii](https://arling.sk/janii/): Janii, a Windows app for wedding photographers that selects the story (about 500 of 5 000 RAW frames) and memories locally, offline, with a reason per frame. Free beta.