RoboMiri Analytics
Live
Cookieless web analytics, so there is no banner to click.
Privacy-first analytics that sets no cookies and builds no cross-site profile, which is what lets a site run it without a consent banner. Hosted in the EU and written against the GDPR rather than retrofitted to it. It is the measurement layer under the rest of the portfolio, and it is available to other sites.
- No cookies, therefore no consent banner
- GDPR-first, EU-hosted
- Drop-in script, no cross-site profiling
- Free tier
WebEU-hosted
A wishlist you can actually send to people.
Paste a link from any shop and the item arrives with its title, picture, price and stock already filled in. Share one list instead of a dozen screenshots. Gift mode lets people reserve an item so two relatives do not buy the same present, and the list owner genuinely cannot see who reserved what. It runs in two markets from one codebase: lista-cadou.ro in Romanian, and hetverlanglijstje.nl in Dutch, where it is called Het Verlanglijstje.
- Paste any shop link — title, image, price, currency and stock read from the page
- Gift mode: visitors reserve items without the owner seeing who
- Price tracking with price-drop and back-in-stock alerts
- Passwordless magic links or Argon2id passwords
- Paid for by disclosed affiliate commissions — no ads, no subscription
WebPWAAndroid (in progress)Java 25Spring Boot 4PostgreSQL 18React 19
Rewrites stiff, robotic or AI-sounding text so it reads like a person wrote it.
Paste something that sounds like a committee wrote it and get it back in plain, human language. The rewrite is constrained: the meaning and the facts stay put, and only the delivery changes — which is the whole difference between an editor and a paraphraser. The first 500 words need no account at all.
- The core message and the facts are held fixed; only the phrasing moves
- 500 words free in the demo, with no sign-up
- Subscription or a single €2.99 rewrite — no account needed for the one-off
- Rewrite history and projects once you do have an account
WebReactPaddle
Schedules and auto-publishes social posts on the rhythm you set.
Write a month of posts in an afternoon and let them go out on their own. Cadence publishes to LinkedIn, Facebook, Instagram and Threads at the day, hour and timezone you picked, refreshes the access tokens before they expire, and retries with backoff when a platform has a bad minute. The tokens are yours and stay on the server; you post as yourself, not through a shared app account.
- LinkedIn, Facebook, Instagram and Threads, including Company Pages
- Scheduled to the minute in any timezone, and recurring daily, weekly or monthly
- Images published through each platform’s native image flow, with alt text — not as a link preview
- Automatic retry with backoff, and token refresh before expiry
WebJavaSpring BootReactPaddle
BTW returns and the annual filing, for Dutch freelancers, without the spreadsheet.
Invoices, expenses, asset depreciation and the tax returns themselves in one place. The quarterly BTW return is assembled with the rubriek codes already right — 1a, 1b, 2a, 5b and the rest — so the part of the job that is really bookkeeping trivia stops being a quarterly research project. Bilingual, English and Nederlands, because half the ZZP’ers it is for did not grow up with the vocabulary.
- Quarterly BTW return with the rubriek codes filled in, not looked up
- Invoices, expenses and asset depreciation kept together
- The annual income tax filing built from the same records
- English and Nederlands throughout
WebJavaSpring BootReact
Price history that catches the discount that was never a discount.
Romanian price comparison, price history and price alerts, with fake-discount detection as the point rather than a feature. Under the EU Omnibus Directive — transposed in Romania as HG 686/2022 — an announced reduction must reference the lowest price of the previous 30 days. PriceRadar keeps that 30-day floor for every product and says plainly when the sticker does not match it.
- Fake-discount detection grounded in the EU Omnibus Directive (HG 686/2022)
- Full price history per product, stored as a time series
- Telegram alert bot for price drops
- Automated short-form video pipeline as a distribution channel that does not depend on search
WebTelegramJava 21Spring Boot 3.3TimescaleDBNext.js 15
Sortio
In development
A price-comparison shop for Romania, paid for by the retailer rather than the shopper.
A catalogue assembled from 2Performant advertiser feeds, re-read nightly, with a price history behind every product. Sortio holds no stock and sells nothing: the shopper buys from the retailer at the retailer's price and the merchant pays the commission, which is stated plainly on every page. Server-rendered HTML throughout, because an affiliate catalogue earns nothing it does not rank for.
- Nightly ingestion from affiliate product feeds, with price history kept
- Every outbound click routed through the network tracker and disclosed as such
- Server-rendered Thymeleaf — the crawler gets the same complete HTML the shopper does
- One Java process, one container, one hand-written stylesheet
WebJava 25Spring Boot 4ThymeleafPostgreSQL 16
Forty PDF tools and an editor that edits the text that is already there.
Most browser PDF editors paint a white box over a word and type on top of it. Frisket removes the glyphs from the content stream and redraws the replacement in the document's own font, so the file stays a real PDF. Around it sits a suite of forty tools — merge, split, compress, OCR, convert, protect, redact, compare — behind one framework where a tool is a single class and the browser renders the form the API publishes.
- 40 tools: merge, split, compress, OCR, convert, rotate, protect, watermark, page numbers and more
- A real web editor: edit existing text, add images, links, form fields, signatures, annotations and stamps
- Vertical products in the pipeline — bank statement to Excel with a reconciliation proof, and PDF/UA accessibility remediation
- Exposed to AI agents over WebMCP
WebJava 21Spring Boot 3.5Next.js 16React 19PostgreSQL 16
Tells you whether the candidate solved it, or the tab next to it did.
A verification layer over the hiring you already do. It watches an assessment or an interview for signs that the answers are not the candidate’s own — face, keystrokes, audio-video sync, coherence — and combines them into one confidence score. It is a signal, not a verdict: several independent detectors have to agree before a score rises, a flag routes the session to a human with the evidence attached, and nothing is ever auto-rejected. It also ships the assessments themselves — live coding in a sandbox, AI-graded essays, take-home uploads and video interviews — but it will sit beside an existing ATS instead if that is all you want from it.
- Flags for human review and never auto-rejects — a false flag costs a reviewer a few minutes, not somebody their career
- Several independent signals must agree, so a flaky webcam or an unusual typing style flags nobody on its own
- No lockdown browser and no rip-and-replace: it adds to the ATS and screening you already run
- Its own assessments too — live coding with sandboxed execution, AI-graded essays, file uploads and video interviews
WebNext.jsReact