The history of versions and new tools. We add them one at a time, without rushing — each has to work well before the next one appears.
48
versions
57
tools
398
changes
since March
2026
New
A «For a document» section on the declension page: five ready-made lines — power of attorney, order, application header, certificate, payroll. Each is assembled from the name, the gender and the job title and copies as a whole. Next to it: gender agreement (five ready pairs plus your own with «/») and a salutation for a letter.
New
Six case pages: genitive, dative, accusative, instrumental, prepositional and female surnames. Each shows the form you came for in large type, the other five beside it, its own explanation of when the case is needed and its own three typical mistakes. Not a template with a substituted name: identical pages would compete with each other.
New
Spreadsheet columns are recognised in list mode: a line split by a tab, a semicolon or two spaces is joined into a single name — and a badge says so. Plus a summary «Lines: 12 · female: 4 · indeclinable: 1 · ambiguous: 2», an «only flagged» filter and «Gender» and «Note» columns that also go into the CSV.
Improved
Double surnames, female consonant surnames and names in «-ль». «Мамину-Сибиряку», not «Мамин-Сибиряку»; «Ивану Волку» but «Ангелине Волк» — with a note that this is the rule, not a parsing failure. For names in «-ль» (Адель, Айгуль) the rule is unsettled, so the tool shows both variants instead of one guess.
Improved
Gender: three states instead of two. For ambiguous names (Саша, Валя, Женя, Паша) the tool says «gender undetermined» and asks you to switch it by hand — whether the surname declines at all depends on it. «Марта» and «Рената» also stopped counting as ambiguous: the surname next to them was declining as a male one.
Improved
A reference set of forty hard cases is now covered by tests: the rules engine is touched rarely and breaks silently.
Favicon generator — the minimal modern set: favicon.ico with two layers (32 and 16), icon.svg, apple-touch-icon.png at 180×180, manifest icons at 192 and 512, and manifest.webmanifest itself. Four lines in the head instead of twenty, a separate layout for React and Next.js, a ZIP archive and per-file downloads.
New
Preview at real size. A light and a dark tab at honest 16 pixels, bookmarks at 32, the iOS home screen at 180 and Android at 192 with the crop circle. An enlarged preview lies: a detailed logo turns into a smudge in a tab, and that has to be seen before the files go live.
New
Dark mode through SVG.icon.svg carries a prefers-color-scheme rule: on a dark tab the mark switches to its light colour by itself. Neither ico nor PNG can switch, so a black logo otherwise disappears there.
New
The iOS icon without transparency. Transparent areas turn black on the home screen, so apple-touch-icon.png always gets a background and is drawn as a square — rounded corners would stay transparent. The shape is added by the system itself.
New
Four sources: an image (PNG, JPG, WebP, SVG), a monogram of one to three letters with a choice of font and colours, an emoji, and a ready SVG. Someone else's SVG is sanitised: scripts, event handlers and external links are stripped before rendering.
New
Checks before you download — whether the mark reads at 16 pixels, whether it runs past the Android safe zone, whether a background was added for Apple, whether dark mode is covered. Simple and explainable: they say what exactly was looked at and stay a hint.
New
Four one-click examples, including a counter-example — a detailed emblem where the checks fire. Showing the failure is more honest than pretending any picture makes a favicon.
New
Legacy files behind a toggle, off by default. The dozens of icons were made for platforms that no longer exist; offering the pile by default means agreeing that it cannot be sorted out.
Improved
A rule for documentation articles. A docs/tools/slug.md article is written where a tool has decisions that are not visible in the code, not for every tool: a simple converter does with a row in the registry. Recorded in the code conventions.
Barcode generator — six formats, the check digit computed by the GS1 algorithm and shown separately, a live preview, export to PNG (512/1024/2048 and 300 dpi) and SVG. Print settings: module width, height, quiet zone, digits underneath, transparent background.
New
Verification of someone else's code — paste a number and the tool recognises the type by length, verifies the check digit and breaks the number down: GS1 prefix, company and item codes, check digit. When it does not add up, the expected digit is named. Spaces and dashes can stay.
New
GS1 prefix lookup that breaks the myth. «Barcode 460 — which country» is a mass query, and most of the internet answers it wrongly. The answer carries a note: this is where the number was registered, not where the goods were made. Service ranges — books, coupons, in-store numbers — are flagged separately: no country stands behind them at all.
New
An honest note about mandatory marking. Data Matrix marking codes cannot be generated: a state system issues them, each unique and tied to an item. The notice sits next to the format picker, before anything is typed.
New
Bulk mode and a label sheet. A column of article numbers becomes a grid of codes; unreadable lines are flagged and stay visible. An A4 sheet with a configurable grid opens in a print window, from which it can be saved as PDF.
New
A number with a wrong check digit is not drawn. Drawing a «similar» code would mean sending someone else's number to the print shop, so an explanation appears instead.
Improved
The GS1 prefix table was verified against the published list rather than copied from the mockup. The source data held 115 ranges and about ten errors: 001–019 and 060–139 were labelled «USA and Canada» (Canada is 754–755), 040–049 «restricted use in Germany» instead of «within a company», 050–059 «coupons» instead of a GS1 US reserve, while Japan's 490–499 and China's 680–681 were missing entirely.
Improved
Print pixels are computed by the shared QR code.printPx, the PNG sizes and 300 dpi are reused from lib/qr/export.js: «300 dpi» must mean the same thing in both tools.
Improved
The barcode preview keeps true proportions. Bar height is computed from millimetres, so module width and code height change the picture on screen, and the downloaded file prints at exactly the size promised. A «preview at full width» toggle sits next to it: switch it off and the code is shown at life size — 38 mm on screen is 38 mm.
Improved
[Time calculator](/tools/time-calc): panels are labelled and the line-by-line breakdown is open. The cards gained headers — «intervals», «total», «timesheet», «shift breakdown», «total for the period» — and the breakdown moved inside the list card and opens straight away: the line number, what it held, what it turned out to be and what it became, with a «N recognised · M with errors · K empty» summary. The period total gained pay at the rate from the first section and a count of shifts past midnight.
Time calculator — adding and breaking down intervals: list totals, shifts with breaks, unit conversion, multiplication and division, timecodes and pay by the hour. All in the browser: a timesheet never leaves it and is not kept between visits.
New
List input instead of an «hours / minutes» form. Competitors take one value per field, while the work arrives as a column — from a spreadsheet, a timesheet, a time tracker. The parser accepts mixed formats in one batch: 1:20, 0:45:30, 1h 20m, 80 min, 1.5 h and the range 9:00–18:00. A bare number counts as minutes, and the field says so.
New
Shifts and timesheets. One range per line, a default break and a per-line one (10:30–19:15 −1:00), night shifts across midnight (22:00–06:00 is eight hours, not minus sixteen). The table with a period total copies as TSV and pastes into a spreadsheet cell by cell.
New
Timecodes with frames at 24, 25 and 30 fps: addition and difference, frames to seconds and back. A frame that cannot exist at the chosen rate (:30 at 25 fps) is treated as a typing error rather than an extra second. Drop-frame 29.97 is deliberately unsupported — its frame count drifts from clock time by its own rules.
New
The total in three forms at once — hours and minutes, decimal hours and total minutes, each with its own copy button. Plus list statistics: how many intervals, the average, the shortest and the longest. An hourly rate turns decimal hours into an amount, with an explicit caveat.
New
An unrecognised line does not disappear. It is flagged and named under the total, and stays visible in the shifts table: a silently skipped line changes the sum, and one missing shift in a month looks entirely plausible.
Admission dates come from the regulation, not from memory. 20 June, 25 July, 27 July, 7 August and 20 August are taken from the admission rules (ministry order No. 821 as amended by No. 905). The source data for the task put the main enrolment stage on 9 August — an older edition, and the check caught it.
New
A third level of date confidence — «estimated». There used to be two: exact, and «approximate» for lunar holidays. School holidays, graduation and Scarlet Sails have a date that does not depend on the moon — a school or a city appoints it, and the reader needs different advice: not «check your community calendar» but «ask your own school».
New
The chosen catalogue section lives in the address (/tools/countdown?cat=study): a link can open «Study» or «Religious» straight away instead of explaining which chip to press. The value is in Latin script, like every interface-state parameter, and an invented one falls back to the whole catalogue rather than an empty grid.
New
A clear button in the search field, with focus returned to the input.
New
A «Does your school keep its own date?» block right under the counter of an estimated date, linking to the «Your own date» section with the event name already filled in. The address carries the slug in Latin script (?from=graduation) rather than the name — a name in Cyrillic turns the link into three dozen percent codes.
New
Weekday counts for a period — on every holiday page and in the /tools/date-diff breakdown. It answers a live search query, «how many Mondays until New Year», and its whole family: how many Fridays until the holiday, how many Saturdays between two dates. Collapsed, the block shows Mondays and Fridays; expanded, all seven. Both ends of the period are counted, and that rule is spelled out under the table.
Fixed
Search no longer tells «е» and «ё» apart. «Chernaya» did not find «Чёрная пятница» at all: the comparison went letter by letter. The tool catalogue had the same defect — «schetchik» missed «Счётчик символов». One shared function fixes both searches and folds case and stray spaces along the way.
Fixed
Holiday search also covers the English name and a list of aliases — «black friday» is typed in Latin whatever the interface language, and colloquial phrasings never appear in the formal name.
Fixed
The caption under the date no longer lies in static markup. Before hydration the «this year» and «next year» cards show a dash, and the caption beneath them read «the year is not in the lunar table» for every holiday — untrue for fifty-two dates out of sixty, and the first reader of it was the crawler.
Fixed
Gender agreement in the «already passed» line. The Russian sentence agreed with a masculine noun, while the catalogue holds feminine and neuter names.
Improved
The `/tools/date-diff` breakdown on a phone keeps the unit, the value and the copy button, and hides the note column by media query. With four columns at 390 px the values broke mid-syllable, and the new weekday row would have run to seven lines.
Improved
The number of dates in the lead, the counter and the description now comes from the data instead of being spelled out as «forty-eight».
Improved
Black Friday now says in so many words that it is officially the day after the American Thanksgiving, while retailers elsewhere pick their own dates and stretch the sale over a week.
Improved
The referrer dictionary has been filled in: ya.ru is Yandex rather than «other» (the search share was systematically understated), m.baidu.com is search, away.vk.ru is social. A separate «AI assistants» class covers nine domains — a channel with no query and no position, invisible in every webmaster panel.
Improved
The overflow sweep builds its address list from the sitemap instead of keeping it by hand: five tools had been missing from the check. The run grew from 67 addresses to 82 and gained an English pass.
How many days until… — a catalogue of forty-eight holidays with category filters, search and sorting, an «Upcoming» section for the next 30 or 90 days, and a countdown to any date of your own. Every tile is a link to that holiday's page.
New
A page for every holiday — forty-eight addresses such as /tools/countdown/new-year: a live counter down to the second, the date this year and next, the weekday, the number of working days left and the chain of days off when the holiday sits next to a weekend.
New
A table of dates for 2026–2030 that does not depend on when the page was built, and therefore ships in the server response in full. That is the answer to «when is Easter in 2027»: the dates are in the HTML rather than drawn in later by the browser.
New
Five ways to work out a date. Fixed (1 January), the «Nth weekday» rule (the fourth Thursday of November), «the first Saturday after 15 September» for Oktoberfest, the 256th day of the year for Programmers' Day, and Easter by the Computus algorithm — which also drives Maslenitsa, Palm Sunday, Trinity and the start of Great Lent.
New
Your own date, with a link but without writing to the address. The date, time and event name live in the fields; the «Copy link» button assembles the link and puts it on the clipboard. The date you type never enters the address bar on its own — the same rule, and the same reason, as in the age calculator.
Improved
Lunar dates are verified by machine, not copied. Islamic dates follow the Umm al-Qura calendar, Hebrew and Chinese ones the matching ICU calendars, and holidays-lunar.test.js recomputes the table from Intl on every run. Five discrepancies turned up in the source data: Diwali 2028 was given as 15 November instead of 17 October, and Eid al-Fitr and Eid al-Adha followed a different calendar from the start of Ramadan.
Improved
Youth Day is the last Saturday of June, not 27 June — the date was moved by decree in 2023. Oktoberfest opens on the first Saturday after 15 September, which is not the same as «the third Saturday of the month»: in years when the 15th falls on a Saturday the two differ by a week.
Improved
A year without a confirmed date shows «to be confirmed» rather than an invented one: the Diwali table covers three years out of five, because no ICU calendar computes the Hindu lunisolar reckoning.
Random numbers and draws — five modes on one source: a range of numbers (negative bounds, no repeats and sorting included), a draw from a list, splitting into teams, a random running order and dice with 3d6+2 notation. A coin is a separate outcome, «Heads» / «Tails», rather than a two-sided die. A six-sided die shows its face in pips next to the number: 2d6 reads as two dice rather than as «10».
New
A full-screen view in «Number» and «Dice» modes: a dark screen, a large result, die faces or the coin, and a «Draw» button — for showing a room or filming. Escape closes it.
New
The mode and the notation stay in the address (?mode=dice&dice=3d6): a link to «three dice» or to a draw can be shared and bookmarked. The participant list never goes into the address — those are real people's names.
New
Verifiable fairness without a server. Competitors issue a «fairness certificate» from their own server — which still means trusting someone else's machine. Here the promise → draw → verification scheme runs in the browser: the SHA-256 fingerprint of the seed and the list is announced beforehand, the seed is revealed afterwards, and anyone repeats the draw for themselves. The protocol copies in one click.
New
The draw number is part of the seed (seed#3). Without it, pressing again with a fixed seed would return the same result and the tool would look broken. With it every draw is new and still reproducible.
New
A fairness check of the sampling, right on the page. Up to a hundred thousand runs, a histogram and χ² against a threshold: the claim «there is no skew» becomes checkable. For the sum of dice the comparison is against exact theory rather than an even share — the probabilities come from a convolution, so with 2d6 a seven is expected 16.7 % of the time.
New
No bias towards the start of a range. A naive remainder favours the first values slightly — in a draw that means the first names win more often. Values are rejected until the odds are strictly equal; a test also checks the opposite, that a deliberately broken sampler does not slip through.
New
The settings explain themselves. A line under the row of switches says what «no repeats» and «sort» do — with a single number both go dim, as there is nothing to repeat or to sort — and how «Weights · Anna:3» is read; a «Sample with weights» button fills the list and turns the setting on. The notation guide, «what d and the numbers mean», arrives in the server response rather than after a click.
New
Nothing is stored. The participant list, the seed and the results live in the tab only: no server, no localStorage. The draw history disappears when the page reloads.
Pages for individual codes — http-status/404, /403, /401, /500, /502, /503, /504, /429 and /301. Not the definition that exists everywhere, but what the hub does not carry: the error line people search for word for word (connect() failed (111: Connection refused), upstream timed out, directory index of "/var/www/site/" is forbidden), and the commands to check with — namei -l for permissions, ss -lptn for the upstream port, curl -sIL for a redirect chain.
New
Two readers instead of one. A status code is met by two people: whoever saw the error on someone else's site, and whoever owns the server. Their advice differs to the point of being opposite, so each page has two sections: «if it is someone else's site» and «if it is your server».
New
Neighbouring codes alongside. For 403 they are 401, 404 and 451; for 502 they are 504, 500 and 503: a neighbour with its own page links there, the rest link to the hub with the card open. 403 also links to the chmod permission calculator: file permissions are cause number one.
New
503 has its own maintenance story. Taking a site down for work needs a 503 with a Retry-After header: a stub returning 200 or a redirect to a «back soon» page costs positions, because a search engine treats the stub as real content. The other half of the page is about exhausted worker processes (pm.max_children).
New
Only nine of the twenty popular codes get a page. Demand is not the same as content: 418 and 451 fit into two paragraphs already written on the hub, and 200, 204 and 304 need no breakdown. A thin page harms itself and the hub alike.
File permissions (chmod) — a grid of checkboxes, octal notation, symbolic notation and an ls -l line, all tied together: inside there is one number rather than four states to keep in agreement. The chmod command comes ready, with a path field and the -R flag.
New
A terminal line is accepted whole. Not a ten-character fragment but the entire ls -l line — link count, owner, size and date included; stray spaces, the macOS @ and the SELinux dot do not break it. The file type is read from the line too and switches «file / directory» by itself.
New
A plain-language explanation and risk warnings — what English-language calculators lack: they compute 777 as calmly as 644. Here it says who «others» are and what they may do, with a warning beside it: 777, world-writable, setuid on an executable, a key wider than 600, a directory without the entry bit.
New
Files and directories are explained differently. On a file x means «run it», on a directory «enter it», and r on a directory means «list the names». The switch changes the explanation and clears up the most common confusion.
New
Eleven common modes with a «when and why» rather than a list of numbers: 644, 755, 600, 700, 640, 750, 400, 775, 1777, 4755 — and 777 marked «do not use». Any of them goes into the calculator in one click.
New
Six pages for the popular modes — chmod/755, chmod/644, chmod/777, chmod/600, chmod/700 and chmod/1777. Each carries what the hub does not: the exact error these permissions cause (Permissions 0644 for 'id_rsa' are too open, open() … failed (13: Permission denied)), the neighbouring modes they get confused with, and commands for the actual case — chmod 700 ~/.ssh && chmod 600 ~/.ssh/id_rsa rather than a bare chmod 600 file.
New
A umask calculator: 022 gives files 644 and directories 755. umask does not set permissions, it subtracts them from the base — hence the endless surprise at how a new file turned out.
HTTP status codes — sixty-four codes with practice rather than definitions alone: each says who is at fault, why it happens, what to do and which headers to read. «What the code means» is answered everywhere; «who is at fault and what to do» hardly anywhere.
New
Search by meaning, not just by name. The query «rate limit» finds 429 even though the name «Too Many Requests» contains neither word — a synonym dictionary handles that. Partial numbers work too: «50» brings 500, 502 and 503 rather than nothing, and popular codes come first.
New
A «confusing pairs» section explains what gets asked more often than definitions: 301 or 302 (and where 308 fits), 401 or 403, 200 or 204, 400 or 422, 502 or 504. The codes are clear on their own; the difference between them is not.
New
Deep links to a code.?code=404 opens the right card, and every card carries a «link to the code» button: a reference is shared for one question, not as a whole.
New
Non-standard codes are marked. 499 comes from nginx, the 520s from Cloudflare; presenting them as standard would send people looking for them in the RFCs in vain.
New
A grid of codes on the left, the selected card on the right. The class is spelled out and coloured — «4xx Client error» rather than a bare 4xx: someone who arrives with an error rarely knows the first digit means anything at all.
New
Details of every code are in the markup, although one card is open. Crawlers execute JavaScript but do not click cards: a conditional render would leave one code out of sixty-four in the index.
Clean and inspect a link — a pasted link is cleaned at once: six groups of trackers go (UTM, click identifiers, analytics service tags, social networks, mailing campaigns, marketplaces) plus anything whose name ends in clid, because ad platforms mint new identifiers faster than any list is updated.
New
Functional parameters are never touched, and that is checked before the tracker rules. Page number, search query, record id and — most importantly — the return address stay in place. The key case is Source in SharePoint forms: it looks like tracking but holds the address to return to after saving; remove it and the person lands on a default list instead.
New
A Cyrillic link stays Cyrillic. The clean URL is rebuilt from the original string rather than through URL.href: the native serialiser turns журнал.рф into punycode and the path into percent escapes, handing back an unreadable address when only the query changed.
New
Every removed tag comes with an explanation — «utm_source marks the source, medium and campaign», «fbclid is an ad-click identifier». Kept parameters carry the opposite note: why they stayed.
New
A «Keep» button on every removed tag puts the parameter back into the link in one click, if it turns out to be needed.
New
Breakdown into parts: eight cells — scheme, host, subdomain, domain and zone (composite ones like co.uk included), port, path and fragment. An empty cell shows a dash instead of disappearing: «there is no subdomain» is an answer. Values are displayed decoded but written back as they were — %2F inside a value and «/» are different things to someone else's server.
New
The parameter list shows all of them, in the original order: a removed one is struck through and tagged «removed», a surviving one is tagged «kept», and each carries its reason. That is how the tool's decision can be checked against the link that was pasted.
New
Batch mode processes a list of links line by line; an invalid line does not break the rest and is left as it is.
New
Expanding shortened links is deliberately not supported. It would require following the link on a server and telling that service the link was opened, which contradicts how the tool works — the limitation is stated openly.
List processing — the whole list routine in one tool: changing separators, removing duplicates, sorting, wrapping and numbering. The pipeline has a fixed order — trim, filter, deduplicate, sort, case, wrap, and numbering last — because a number added before wrapping would end up inside the quotes and become part of the value.
New
Comparing two lists. Union, intersection, «only in A» and «only in B» answer the question «which of these are missing from that list», otherwise solved by eye or by a spreadsheet formula. Values are matched by key, with or without case sensitivity, while the result keeps the original spelling: lowercasing someone's data silently damages it.
New
Natural sorting. Plain string comparison puts «file10» before «file2» because the character «1» is smaller than «2». Natural sorting reads the number as a whole and produces the order people expect from file names, versions and numbered items.
New
Frequency list. A different question from deduplication: how often each value occurs. Repeats are marked as «apple ×3», the list is ordered by count, and equal counts keep the original order — the only one a person can predict from their own list.
New
Wrapping presets that escape. Quotes, HTML, Markdown and CSV wrap every line; SQL and JSON wrap the whole list, because IN ('a', 'b') and a valid array cannot be built otherwise. An apostrophe inside a value will not break the statement and a quote will not break the JSON.
New
Extraction by pattern. Filtering by substring or regular expression, plus buttons that pull emails, numbers and links out: a messy chunk of correspondence becomes a list of addresses rather than a list of paragraphs that mention one. A half-typed expression does not flash an empty result.
Decode a QR code — a section of the generator that does the opposite: it takes the string from a scanned code and explains every field. Eight kinds: GOST R 56042 payment codes (ST00011, ST00012, ST00013), Wi-Fi, contacts in vCard and MECARD, otpauth two-factor codes, calendar events, coordinates, phone, SMS, email and links. An unfamiliar format is shown in full with an honest note rather than an error.
New
Bank details are checked, not merely printed. INN and KPP checksums, account and BIC lengths, and above all the settlement-account checksum against the BIC, which catches a typo in the digits when the length is formally correct. The checks reuse the requisites tool rather than repeating it.
New
The amount is shown in roubles. The standard stores it in kopecks, so Sum=36000 reads as thirty-six thousand instead of three hundred and sixty — a hundredfold difference that looks like a bug until you know.
New
The encoding is named outright. The last digit of the prefix means Windows-1251, UTF-8 or KOI8-R; a code written in one and read in another turns the bank name into garbage — and that is usually what people arrive with.
New
The two-factor secret is parsed but never displayed. It is live access to an account: putting it on screen so someone can “see what is in there” is an invitation to capture it in a screenshot.
New
Open networks, WEP, `http` and punycode domains are flagged. A Wi-Fi password sits in the string as plain text — a property of the format rather than a hack, and worth knowing.
Improved
A tool with sections now shows a "+4" marker on its card. Eight pages — four under the QR generator and four under the Lorem generator — are hidden entries in the catalogue: search finds them, the grid does not show them. Anyone browsing the catalogue or the home page never learnt they existed. The marker now sits next to the badge, and hovering it lists the section names. Both the count and the names come from the catalogue by URL, so a new subpage appears in the marker on its own.
Age calculator — a paste field now sits above the calendar input. A type="date" field accepts only its own format and silently rejects everything else, while people copy a date of birth exactly as written: “08.09.1986”, “8 September 1986”, “1986-09-08”. Those strings arrive as search queries verbatim.
Improved
Date formats — input parsing moved to the shared module. Month-first dates in words (“March 8, 2026”), Windows FILETIME and Excel serial numbers were added; the last one is enabled only on the date pages, because on the timezone converter a five-digit number is more likely a price than a date.
Improved
The ambiguity of slashed dates is now stated out loud.03/04/2026 is 4 March in the US and 3 April in Europe, and the string alone cannot tell them apart. If the first number is greater than twelve it cannot be a month, so the date is read day-month-year; otherwise the American order is used and the tool says so.
Improved
Three more cards in “About time zones”: how many days a year the sun is up somewhere over Russia at every moment (180, from 23 March to 18 September — computed from solar elevation at the country's extreme points rather than copied from an article), how to read the tail of a timestamp (Z, +03:00 — and why the sign is usually read backwards) and the time zones of Russia — eleven zones, ten hours across, no clock changes since 2014.
Improved
World clocks: Antalya, Punta Cana, Vladivostok and Petropavlovsk-Kamchatsky added — holiday destinations and Russian Far East cities people most often compare against home time. The table now lists 16 cities, and the far end of the scale is finally visible: Los Angeles to Kamchatka is 19 hours in summer and 20 in winter.
Fixed
The “DD.MM vs MM/DD” card explained the difference backwards. The page claimed that 03.08.2026 reads as 8 March in Russia and 3 August in the US; it is the other way round. The error lived in three places out of four, including the English version — on a page whose entire purpose is to resolve that confusion.
Fixed
The `new Date(string)` fallback is gone. It parsed non-standard strings differently across browsers and silently produced a plausible date where the string cannot be understood: “8 march” became the current year, “2026” became 1 January. Such input is now honestly rejected.
Timezone converter — a paste field now sits above the form. People arrive here with a string already in the clipboard — from a mail header, a log, a conversation — and used to face an empty structured form with nowhere to put it. The string is now parsed as you type, and the result appears without a single click.
Improved
Seven input formats: ISO 8601 (2026-08-16T22:02:00Z), an RFC 2822 mail header (Fri, 21 Aug 2026 09:16:33 +0300), a date in words in Russian or English (22 August 2026 at 1:30:09 GMT+4), a time with no date (08:41 UTC, 14 15 gmt), zone-to-zone (UTC to MSK), Unix in seconds and milliseconds, and Windows FILETIME from event logs and Active Directory.
Improved
The tool says what it understood. Below the field it names the format it recognised, along with the caveats: there was no date in the input so today was used; the input had zones only so the time was left alone; that zone is not in the list so the instant is shown in the selected one. An unparsed string is noted quietly rather than in red — you may still be typing.
Improved
Ambiguous abbreviations are not guessed.CST is both US Central and China Standard time; IST is India, Israel and Ireland. The parser rejects them outright, because showing the time of the wrong hemisphere is worse than admitting it did not understand.
Fixed
World clocks no longer bake build time into the static markup. Twelve cities were rendered on the server from “now”, so a crawler received a page where Tokyo was frozen at the moment of the last deploy. They now show dashes until the browser loads — a stale number has no business on a page about time.
Loan and mortgage calculator — payment, total interest, the share of interest in everything paid, and a full monthly schedule with dates, interest, principal and balance. Equal and declining payments, a mortgage with a down payment, the term in years or months, and fractional rates.
New
Early repayment in two modes and with any number of payments. One-off and monthly contributions, each with its own mode: shorten the term (same payment, loan ends sooner) or lower the payment (same term). The effect is shown by comparing against the very same loan without extra payments, so «14 months shorter, saving ≈ 486 000 ₽» is a difference rather than an estimate.
New
The schedule folds by calendar year with per-year totals, rows with extra payments are highlighted, and everything exports to CSV with a semicolon separator — which is what Excel expects in a Russian locale.
New
Money is computed at full precision and rounded only on screen. A kopeck lost in the middle of a schedule becomes roubles after two hundred payments; the final payment is adjusted so the balance lands exactly on zero.
New
A rate the payment cannot cover is called out. At an extreme rate an equal payment goes entirely into interest, and instead of an endless table the tool says plainly that such a loan is never repaid.
New
No shareable links with amounts — loan parameters have no business in browser history or site analytics. The summary and the schedule are copied to the clipboard instead.
New
The disclaimer sits next to the result, not in the footer: insurance, fees and the annual percentage rate are not included, this is a reference calculation rather than a bank offer.
Timer, stopwatch and Pomodoro — four modes in one tool: a countdown with a sound signal and presets (1–25 minutes plus kitchen ones: tea and soft, medium or hard boiled eggs), a stopwatch with laps and millisecond precision, Pomodoro with configurable phases and a pomodoro counter, and interval training with Tabata, HIIT and strength schemes.
New
The countdown is computed, not ticked. A counter decremented in setInterval falls behind in a background tab: browsers throttle timers and a sleeping laptop does not wake them at all. The tool stores the moment the phase ends and compares against the system clock on every frame, so minimising, sleeping and app switching cannot make it drift.
New
Missed phases are caught up. If the tab slept for half an hour, Pomodoro would have changed several phases in the meantime — they are replayed in a loop rather than counted as a single switch, which keeps the pomodoro counter honest.
New
Sound is generated in the browser with Web Audio and no audio files: three tones, volume and a full mute — it works offline too. A browser notification is a separate switch and arrives from a minimised tab.
New
Full-screen mode with large digits on a dark background, the remaining time in the tab title, and screen wake lock where the browser supports it.
New
A preset link?mode=timer&d=1500 — «set a 25 minute timer» can be sent as a URL. Only the mode and the duration go into the address; the timer name and the Pomodoro task do not.
Text comparison — «Before» and «After» panes, live comparison, highlighting for added, removed and edited lines, and line numbers from both sides. Inside an edited line the changed words or characters are marked individually; the level is switched with three buttons.
New
Six things can be ignored. Whitespace has four modes (as is, edges, amount, any); letter case, blank lines and the CRLF versus LF ending are switched off separately — the last one is the usual reason a whole file looks rewritten. JSON can be reprinted with the same indentation on both sides, without sorting keys: moving a field in a config can be a real edit.
New
The verdict explains itself. When the texts differ for a trivial reason, the tool names it: whitespace only, letter case only, JSON formatting only — and points at the toggle that removes it. Until now that situation left people hunting for an invisible change.
New
Show whitespace: a space becomes a dot, a tab an arrow, a line ending a pilcrow. What the verdict claims in words becomes something you can see.
New
Difference navigation with arrows and a «3 of 12» counter, plus export to the clipboard and as a unified diff (--- / +++ / @@) whose hunk headers are checked against their own contents.
New
Files are read locally by drag and drop, up to 2 MB, through FileReader. The text is never written into the page address, not even by a button: contracts and private code are pasted here, and the address reaches browser history and site analytics.
New
Myers algorithm, no external library, with common prefix and suffix trimmed; on extreme input the tool reports the limit honestly instead of freezing the tab.
Keyboard layout fixer — replacement by key position rather than by sound. The table is not limited to letters: punctuation does not line up between the layouts, and the Shift layer of the number row differs as well.
New
Smart mode fixes only the broken words, leaving correct ones untouched, so mixed messages come back intact. Links, e-mail addresses and numbers are skipped entirely.
New
Genuine punctuation is preserved: positionally a comma is a Cyrillic letter, but in real input it is usually a real comma — of the two candidates the one whose word scores better wins.
New
Three lookalike problems are told apart: a layout mix-up, transliteration and mojibake. Transliterated input is recognised and sent to the transliterator instead of being mangled; encoding damage is declared out of scope rather than faked.
New
A key correspondence table for ЙЦУКЕН and QWERTY, verified by a test against the engine so the page cannot teach the wrong thing.
New
Text is never written into the page address — people paste passwords typed blind in the wrong layout, and an address travels into browser history and site analytics.
Improved
The transliterator now links to the layout fixer: two neighbouring problems that are constantly confused.
Age calculator — full years first, then the remainder in months and days, counted by the calendar: unequal month lengths, leap years and the rule that this year's birthday counts only once it has happened. The age can also be computed for any chosen date, past or future.
New
The Chinese sign follows the lunar year, not the calendar year. It begins at a new moon between 21 January and 21 February, so someone born on 20 January 1990 is still a Snake rather than a Horse. Lunar New Year dates are not a hand-typed table: they are computed by Meeus' method and verified against anchor dates and calendar invariants across 1900–2100.
New
Everything around the date: the weekday of birth and of the next birthday, a countdown to it, and totals in days, weeks, months, hours, minutes and seconds with the seconds ticking live. The western sign is flagged on cusp dates; the generation comes from the birth year.
New
Milestones: round numbers of days lived (10,000 days, a billion seconds, a thousand months) with their dates, plus the Russian legal ages: passport at 14, adulthood at 18, passport renewals at 20 and 45, and the jubilees of 50 and 75. Retirement age is deliberately absent — it depends on a transition table that keeps changing and would go stale silently.
New
29 February is handled, not skipped: in common years the anniversary counts as 28 February, the last day of the month.
New
Age difference mode for two dates: who is older, by how many years, months and days, and how many days in total.
New
The birth date is never written to the page address by itself — only when «Link to this calculation» is pressed. From the address bar it would reach browser history and site analytics.
New
The page opens with a random birth date between 1980 and 2022 rather than a preset, so the calculation is filled in for a contemporary. The famous birthdays stay as example chips.
Improved
Date difference: its answer about age now points to the dedicated calculator instead of competing with it for the same query.
Russian name declension and normalization — the tool works both ways. «Decline» returns all six case forms, declining surname, given name and patronymic by their own rules; «Normalize» takes any inflected form back to the nominative and names the case it recognised.
New
Gender is part of the rule, not a label. «Иванову» for a man and «Ивановой» for a woman is the same word in the same case, and a female surname of the masculine shape does not decline at all. Gender is detected from the patronymic, the surname ending and a name dictionary, and a manual choice always wins: for names like Sasha or Zhenya the tool says it does not know instead of guessing.
New
Ambiguity is shown, not hidden. «Ивановой» is genitive, dative, instrumental and prepositional at once. Alternatives and a «check this by hand» note come with the answer — an invented ending in a legal document makes the paper wrong.
New
Indeclinable surnames are marked: those ending in a vowel (Гёте, Дефо, Дюма), in -ко (Шевченко) and in -ых/-их (Белых, Седых) keep one form in every case.
New
Job titles are declined together with the name into a ready document line: «главному бухгалтеру Ивановой Марии Петровне». Initials fold into the requested case: «Иванову И. И.».
New
List mode handles up to 200 lines from a spreadsheet or a letter, with a CSV export and flags on the rows worth checking.
New
Names never reach the page address. Only the direction is stored there: an address travels into browser history, the Referer header and site analytics — exactly the route the tool exists to avoid.
Improved
Lorem Ipsum generator: a «Select all» button in the Structure block, a «Preview» panel for the HTML, Markdown and LaTeX formats (shared component with «Markdown → HTML»), and both panels now scroll with an «Expand» button for the full text.
IP and CIDR checker — the second tool in the Network section. One field accepts an address, a CIDR block or IPv6, and detects version and format on its own. For a network it computes the network address, broadcast, mask and wildcard, the address and host counts, the first and last host, and the range.
New
The address type is named by its range rather than by a single word.100.64.0.0/10 — carrier-grade NAT, the range most often mistaken for public space — is called out separately, as are the documentation blocks 192.0.2.0/24, 198.51.100.0/24 and 203.0.113.0/24. Order matters: 255.255.255.255 also falls inside the reserved 240.0.0.0/4, and without an explicit rule you would be told "reserved" where you expect "broadcast".
New
Parsing is stricter than the subnet calculator's.010.1.1.1 is not a valid address: a leading zero reads as octal in some contexts and decimal in others. Node's own net.isIPv4 rejects it too, and the tests are checked against it.
New
Full IPv6 support: compression and expansion per RFC 5952 (the longest run of zeros collapses, a lone zero does not), zone identifiers, IPv4-mapped tails, and types from fe80::/10 through ULA and multicast. The 128-bit arithmetic runs on BigInt, and counts above 10^15 are shown as a power of two: 2^96 is readable where a nineteen-digit number is not.
New
A membership check in its own field — the thing people usually open a console for.
New
Representations of a single address: dotted, integer, hex, binary and octets; for IPv6 the compressed and expanded forms, the integer, hex and groups. Every line copies on its own.
New
Not a single network request. DNS, whois, ping and geo-IP are deliberately out of scope for the Network section: they need a server, and with a server the page loses the property that makes it worth using.
Improved
The subnet calculator now links to the new page instead of MD5: a neighbour from the same section is more useful than an accidental one.
File and text hash — five algorithms at once: SHA-256 (default), SHA-1, SHA-384, SHA-512 and MD5. Drop a file onto the page or switch to the text tab; output in hex or Base64, with a case toggle.
New
The file never leaves the device. Almost every online checksum calculator uploads the file first: to obtain 64 characters you hand a whole document to someone else's server. Here the browser does the work, and that is a property of the design rather than a promise in the copy — lib/hash.js knows nothing about the network or the DOM.
New
Reference comparison identifies the algorithm by length and enables it automatically: 32 characters mean MD5, 40 SHA-1, 64 SHA-256, 96 SHA-384, 128 SHA-512. The verdict separates "no match" from "that is not a hash at all" — the latter usually means the wrong line was copied.
New
The pasted reference is cleaned with filenames in mind.sha256sum prints e3b0c442…b855 archive.iso, and naively keeping only hex characters appends a, c and e from the filename: the reference grows to 67 characters and the algorithm stops being recognised. The string is split on whitespace first and cleaned afterwards; a hash wrapped across two lines is joined back together.
New
An honest note on "streaming":crypto.subtle.digest accepts a complete buffer only — Web Crypto has no incremental interface. The file is read in chunks to drive the progress bar, because a single read of a multi-gigabyte image looks like a frozen page, but the digest is computed over the assembled bytes and the word "streaming" appears nowhere on the page.
New
MD5 and SHA-1 are marked legacy in the result itself. They are fine against accidental corruption and useless against a deliberate swap, so the label sits where it will be seen rather than in a footnote.
Improved
The MD5 generator now links to the new page instead of the UUID generator: topical proximity beats sharing a catalogue section by accident.
Russian details validator — INN, KPP, SNILS, OGRN and OGRNIP. The type is detected from the length, and separators can stay: a SNILS is almost always written as 123-456-789 00, and demanding «no spaces please» pushes onto the reader work the string can do itself.
New
Decoding, not just valid/invalid. The number encodes the region, the tax office, the year of the record, the record kind and the reason for registration — all readable offline and shown as a table. The decoding is usually what people came for: «checksum valid» says nothing about what the number actually is.
New
The region table is the tax classifier, not the vehicle plate codes. This is the most common mix-up: for the tax service Crimea is 91, Sevastopol 92 and Baikonur 99, while plates use 82 for Crimea. Pick the wrong list and the tool confidently names the wrong region.
New
Abolished districts are kept with a note. The Komi-Permyak district has not existed since 2005, but the INNs issued back then still exist: such a number is decoded and explains which region absorbed the district.
New
A KPP says «format is valid», never «checksum is valid». It has no checksum at all, and claiming one would be a lie.
New
The number goes nowhere. Not a single network request while typing: not to the server, not to analytics, not into the page address. Links carrying the number are deliberately not offered — it is personal data, and the page address reaches statistics in full.
New
An honest caveat inside the result: the checksum and the format have been verified; this does not confirm the record exists in the state registers.
Percentage and VAT calculator — two calculations on one page, because the same people need them in the same context: a discount, a markup, the tax inside a price.
New
Six percentage modes: a percentage of a number, what share one number is of another, adding and subtracting a percentage, the change between two values, and recovering the whole from a known share. Under the result sits a plain-language reading and the formula with the actual numbers in it, not letters.
New
Russian VAT at the 2026 rate — 22%. The standard rate rose from 20% on 1 January, and calculators in the search results still use the old one. Rates live in a table with the date they took effect: 22% standard, 10% reduced, 0% export, 5% and 7% for the simplified system without deduction. The old rate is rejected when it comes from the address bar — otherwise a link would quietly compute under a repealed law.
New
Extracting VAT uses the derived rate22/122 instead of multiplying by 22%. That is the whole reason the tool exists: multiplying a gross amount by the rate overstates the tax by almost a quarter, and nothing on screen gives it away.
New
Division by zero is explained in words rather than showing Infinity: «how many percent did it grow from zero» has no answer, and pretending otherwise is dishonest.
New
The link keeps the calculation: ?mode=change&a=400&b=500 and ?vat=extract&rate=10&sum=110.
Three in-depth pages for the QR generator: GOST payment QR code, Wi-Fi QR code and business card QR code. Not copies of the generator with a different heading: each explains what actually breaks. The payment page takes the ST00012 string apart field by field and checks the account against the bank code. The Wi-Fi page lists the characters it had to escape — the number one reason a phone claims the password is wrong, and an invisible one, because the string looks right. The card page prices every field in bytes and says what to cut before the code stops reading off card stock.
New
PDF export. The code is vector at an exact size in millimetres, the frame caption is a 300 dpi image. Cyrillic survives in the caption: base PDF fonts carry none, and it is usually simply lost.
New
PNG at the size you need — 512, 1024, 2048 pixels, or computed for print: give the code width in millimetres and get the pixels at 300 dpi. A module always occupies a whole number of pixels, otherwise some squares are half a pixel wider and the scanner sees a ragged grid.
New
Frames with a caption — ten of them, from a thin outline to a speech bubble. A frame guarantees the four-module quiet zone: a margin eaten by the layout is the most common reason a printed code will not scan.
New
An «App» type: App Store, Google Play, RuStore, AppGallery. The field shows the address prefix and takes only the app identifier. The code leads to exactly the store you marked primary: a static code cannot tell which device is scanning it, and we do not pretend otherwise.
New
Colour presets that are guaranteed to scan: contrast with headroom, no inverted pairs. Custom colours, gradient and module shape moved into «Advanced settings» — one in ten looks for them and they were in everyone's way.
New
A transparent background for PNG and SVG, WEP among the Wi-Fi security types, and quick link formats for Telegram, WhatsApp, VK and others.
Improved
The code block no longer scrolls away — it stays in view while you work through the settings.
Improved
Every field has a clear button, not just phone and SMS.
Improved
Empty fields give an empty square with a caption, not the old code. Previously the code from the previous data stayed on screen: it looked fine, it scanned, and it led somewhere the person no longer intended.
Morse code: text turns into dots and dashes and back, and editing either field recomputes the other. Two tables, international and Russian; an unknown character is not lost silently but shown as «#» and named in a warning under the field.
New
A message you can hear, see and feel. A tone through Web Audio, a soft light panel, phone vibration — three channels, each switched on separately. Speed in WPM, tone in hertz, and a Farnsworth toggle: letters at full speed, gaps stretched.
New
The signal tape draws the message as a real signal at 1 · 3 · 7 scale: short blocks are dots, three times longer are dashes, and the gaps are proportional. The letters are labelled underneath, so it is visible where one ends and the next begins. A playhead runs along as the message plays, highlighting the current letter, the seconds tick alongside it, and the tape follows the playhead.
New
A telegraph key: how long you hold it becomes a dot or a dash, and the pauses become letter and word boundaries. Works with a mouse, a finger and the space bar; the key has its own speed, separate from playback — a hand is slower, and the thresholds have to follow it.
New
The key gives feedback as you tap. You see what is building right now («···» → S), how long is left before the letter closes, as a running bar, and whether the marks can still become a letter at all. Previously a slip only showed up as a symbol at the very end.
New
A code with no letter behind it is shown as its own dots and dashes, not as a blank square: a square reads as a broken tool, while it means the opposite — the input was parsed, and no letter has that code.
New
A listening trainer plays a letter and waits for your answer. The «first 6», «middle» and «all» sets are built from the current alphabet, with score and accuracy alongside.
New
Russian chants under every Cyrillic letter: «ay-daa» is «·−». That is how a letter is learnt as a sound rather than counted out dot by dot.
New
Run-together prosigns are recognised. Tapping ···−−−··· on the key — the first thing anyone tries — used to answer «no such letter», because the letter table has no entry for it. The parser now knows the prosigns too. Punctuation is also shown in the reference next to the letters: semicolon, colon and the other sixteen existed only in the code before.
New
Two more alphabets: Japanese wabun and Arabic. Wabun encodes syllables rather than letters and does not line up with Latin at all: «·−» here is not «A» but the syllable «i»; voicing travels as a separate signal, and hiragana or half-width input is folded into the table for you. Arabic was mapped onto the international codes by sound, and vowel marks are stripped automatically. Both tables were accepted only after machine-checking independent sources — three for wabun, two plus a Latin-pair check for Arabic.
New
A ready-made phrase, a Q code and the example contact now pick the right alphabet themselves: a Latin Q code clicked on the Cyrillic tab used to produce a row of «#» — it copied, but would not play.
New
In the reference a character sounds on click; play-on-hover is a toggle and is off by default — otherwise the table chatters while you move the pointer towards the letter you want.
New
Export: a WAV file is built right in the browser, and a #msg=… link opens the page with your message. The reference also lists prosigns and Q codes.
New
A «What is missing here — and why» block: the Chinese telegraph code (a dictionary of numbers, not an alphabet) and American railroad Morse (its timings do not fit the 1 · 3 · 7 scheme).
Improved
The icon set grew to 58: play, pause, stop and volume were added.
My network rewritten: instead of a table of values, sections that explain what the data means. Why an address gives the city and not the flat; why the time zone gives a VPN away better than the address; why cookies are not the main thing and Do Not Track means nothing at all.
Improved
Three checks that were missing. A time-zone mismatch against the address — that is what a VPN looks like from the site's side. A WebRTC leak: whether the page can see your local address; candidates are gathered without a STUN server, because asking a third party about your address on a privacy page is a contradiction. A browser fingerprint: the hash is computed in your browser and never sent anywhere, shown so that it becomes visible — you are recognised without any cookie.
Improved
The checks know how to stay silent. When there is nothing to compare, the page says so instead of guessing: a false «your VPN is visible» is worse than no check at all.
Improved
The «What you have already sent» section lists the headers our server received with the request for the page: they left before any JavaScript and before any cookie consent.
Improved
Next to the coordinates — three maps to choose from (Yandex, Google, Apple) and a plain notice: the country and city are resolved by a third party, ip-api.com, which receives your address. The address itself is stored neither in a database nor in a log.
Fixed
The tool catalogue is readable by search engines again. The Tools page served empty HTML: the grid, the categories and the links to 37 tools were absent and appeared only after JavaScript ran. The hub page of the site existed only halfway for crawlers that execute scripts poorly; the defect had been live since late July.
Fixed
The home page content is wrapped in main — the landmark a screen reader uses to jump past the header and menu. Every other page had one, the home page did not.
EXIF cleaner: drop a photo and see what is inside it. The shooting location down to the building, the date and time, the phone and lens model, the body serial number, the embedded thumbnail. Reads JPEG, PNG and WebP; up to twenty photos at a time, and the «Example» button demonstrates it on our own file.
New
The file never leaves the browser. It is read, parsed and rebuilt inside the tab, with no network request while it is processed. Most online EXIF removers upload the image to someone else's server first — for a privacy tool that means handing the untouched original to the very party you are hiding from.
New
The default mode does not re-encode the image: the file is rebuilt block by block and the compressed pixels are copied byte for byte. The second mode re-saves through a canvas — a little quality for the guarantee that no stray byte survives.
New
Nine flags and three presets: strip everything, location only, and one for publishing that deliberately keeps the author credit. The orientation tag is always kept — without it the photo lands sideways for whoever opens it.
New
The report after cleaning is honest: the result is re-read with the same parser and the card shows the new file. If something survived — the colour profile, a caption — the line turns amber instead of green.
New
The «What your photos reveal» section explains six real cases, from a home address to the frame before the crop, next to a table of which platforms strip metadata, carrying the date it was verified by hand.
Improved
The catalogue gained a tenth category — Privacy. The first group built around what a person needs rather than around a data type.
Improved
The icon set grew to 54 with an image and a broom.
Markdown → HTML: converts markup to HTML entirely in the browser — editor on the left, preview, code or contents on the right. It understands a CommonMark subset plus GitHub extensions: tables with column alignment, checkboxes, strikethrough, fenced code with a language, quotes and nested lists.
New
Two-way highlighting: hover a line of markup and its counterpart block lights up; hover a block and a band appears under the matching source line while the editor scrolls to it. Works in long documents too.
New
Six export switches: a full document with doctype and inline styles, heading ids with Cyrillic transliteration (a repeat gets a -2 suffix), links in a new tab, autolinks, and passing source HTML through. The result is copied to the clipboard or downloaded as a file named after the first heading.
New
A fourteen-row syntax cheat sheet: clicking a row appends the example to the editor. The contents view shows the level, text and anchor of every heading.
New
Foreign HTML is shown in the preview without event handlers or executable tags, while the clipboard and the file get it untouched: the preview will not run a script, the downloaded file will — the notice under the switches says exactly that.
Improved
On the tools page the address now follows the scroll: reach «Generators» and the browser shows #gen. A link to any category can be copied straight from the address bar, just like on tool pages.
Improved
The filler language pages — German, Arabic, Chinese and Russian — are found by catalogue search but are not counted in the tool total: they are subpages of the generator, not separate tools.
Pseudolocalization generator: «Settings» becomes «[!!! Ŝéţţîñĝŝ ᐊᐊᐊᐊ !!!]». Three checks in one pass — hardcoded strings stay untransformed, containers break early thanks to artificial expansion, and missing boundary markers expose truncation and concatenation.
New
Placeholders are never transformed. Positional {0}, named {name} and {{count}}, nested ICU, printf %s and %1$s, HTML tags with attributes, entities and wiki markup all reach the output byte for byte. Parsing is done by tokenization: the string is split into protected and translatable parts before any substitution.
New
Three levels — light (diacritics only), medium (+30 % and brackets), heavy (+60 % and loud markers) — with a manual expansion percentage as well. Diacritics, boundary markers and an RTL wrapper for mirrored-layout checks are switched separately.
New
JSON mode: only string values are transformed, keys and numbers stay untouched. Invalid JSON shows an error instead of breaking the page.
New
Protected fragments are highlighted in the result — you see not only what came out, but what the tool did not touch.
Improved
The Lorem Ipsum generator moved to a new core: volume in paragraphs, words or characters with platform-limit presets, eight structure toggles, a seed for repeatable output and sentence length. Six former output types collapsed into two settings; the JSON cards stayed.
Improved
Four language pages for the filler: German with a long-word stress test, Arabic with a mirrored interface, Chinese with a live line-breaking demo and Russian with a font coverage check. The hub gained a text-expansion comparison table for seven languages.
Improved
The filler dictionaries grew to 364–517 unique words per language: with the seventy words of the classic paragraph, repetitions become obvious by the second screen.
Improved
Amount in words can now write in English: a wording-language segment, a British «and» toggle, its own rules and its own breakdown by scale.
Improved
The sitemap now reports an honest lastmod instead of build time, and after each deploy IndexNow calls the crawler to the pages that changed.
Amount in words: turns an amount into its Russian written form for an invoice, act, waybill or contract. Kopecks in digits, in words or hidden when they are zero; letter case as in a document, lower case or UPPER CASE.
New
Four ready-made wordings for specific documents, each copied on its own: for an invoice or act, for a contract (digits with the written form in brackets), fully in words, and a variant to drop inside a sentence.
New
Fifteen currencies plus a “no currency” mode for items and units: six main currencies in the row, the other nine behind a button. Indeclinable euro, tenge and lari keep one form for any number, while their cents and tiyns inflect as usual.
New
The breakdown by scale shows where every word comes from: the digits of the group, its written form, the unit and the gender. It makes clear why it is «одна тысяча» but «один миллион».
New
The “List” mode converts a whole column of amounts from Excel — one per line. The result copies as two tab-separated columns and pastes straight back into a spreadsheet.
New
The “How documents put it” section gives six rules as correct/wrong pairs: gender of thousands, agreement of the unit with the last number, letter case, zero amounts, the order of digits and words, and indeclinable currencies.
New
Counting runs over a string of digits rather than a floating-point number, so scales reach quadrillions without losing precision. Anything longer is an explicit refusal rather than a silently dropped top scale.
New
The amount and the settings live in the address (?sum=123456.78&cur=RUB), so a link can arrive with the field already filled in.
Colour palette generator: enter one colour and get a harmonious five-colour palette. Seven schemes: monochrome, analogous, complementary, split-complementary, triad, tetrad, tints and shades.
New
Every scheme carries a live preview on its own button: five stripes computed from your colour, so the result is visible before you click.
New
A 50–900 tint ramp at fixed lightness, in two saturation modes — the base one and a neutral, almost grey one that goes under text, surfaces and borders.
New
Under every colour it says which text it takes — white or dark — and at what contrast. It is computed with the same formula as the contrast checker, so the numbers on both pages agree.
New
The live preview paints a whole interface mock: header, buttons, tiles, text and borders — the palette is judged in use rather than as a row of swatches.
New
Export in four formats: CSS custom properties, SCSS with a map of the ramp, a Tailwind config fragment and JSON. The values are exactly the ones shown on the page.
New
The colour and the scheme live in the address (?c=e4002b&s=triad), and “Copy the link” hands back a working URL. Input: a picker, a text field, three HSL sliders, five ready-made bases and a screen eyedropper in Chromium.
New
A palette from black, white or pure grey does not collapse: they have no saturation, so shifting the hue does nothing, and coinciding colours are spread apart by lightness instead.
New
The catalogue no longer promises anything in advance: this was the last “Coming soon” card.
Typographer: brings Russian text in line with typesetting rules — guillemets with nested low-high quotes, an em dash instead of a hyphen, non-breaking spaces after short prepositions, an en dash in numeric ranges and a real minus sign.
New
Every edit is highlighted right in the result: you see not only what came out, but exactly where the tool stepped in.
New
Ten rules, each one switchable, with a counter next to it showing how many times it fired on your text. Zero and a dash differ: zero means “the rule looked and found nothing”, a dash means “switched off”.
New
Phone numbers, standard codes and dates such as 12.1.005-88 are not turned into ranges: they are recognised by shape, and the hyphen inside them stays a hyphen.
New
A “Show invisible” toggle marks non-breaking spaces with a visible glyph — on screen only; the real text goes to the clipboard.
New
Running the text through twice changes nothing, so “Result into the input” is safe: switch another rule on and run it again.
New
Restoring the letter “ё” is off by default and only touches unambiguous words.
Hexadecimal numbers: convert to hex and back. Decimal, hexadecimal, octal and binary forms of one number at once; a lane of digits where each one steps with arrows and shows the nibble — the four bits it unfolds into.
New
A byte breakdown: every byte in decimal, in bits and what it means in ASCII. Next to it, a colour check: three, six or eight digits read as a colour, and anything else can be padded with zeros to six.
New
Octal numbers: convert to octal and back, with the same digit lanes but three bits per digit.
New
A chmod permissions calculator: ticking read, write and execute for the owner, the group and everyone else recomputes the octal code, and the code gives the symbolic form such as rw-r--r--. Special bits (setuid, setgid, sticky) are parsed and correctly replace the execute letter. Alongside is a verdict: 777 is flagged as dangerous, write access for others as risky.
New
Ready-made permission sets explained: 644, 755, 600, 664, 700 and 777 — what each means and when to use it.
New
Link to a specific value: /tools/hex?hex=FF and /tools/oct?oct=644 open the page with it already loaded.
Improved
Numbers are computed in big-integer arithmetic, so the converter holds values of any length rather than only those fitting in 53 bits. A long hash or identifier used to lose its low digits silently while still looking plausible.
Fixed
The case converter, URL encoder and Base64 pages open again: after the move to the icon set, three components still called an icon without importing it, and server rendering failed.
Fixed
The tool counter on the home page and in the footer now agrees with the number in Russian. The word form was hard-coded and matched the count only by accident.
Temperature units: Celsius, Fahrenheit, Kelvin, Rankine, Réaumur, Newton and Delisle — type a value into any scale and the rest follow. Precision from whole numbers to six decimals.
New
Reference points in a single table: absolute zero, freezing and boiling water, room temperature, the human body, an oven. Tapping a row puts the value into the converter.
New
A dedicated oven block: 180 °C is exactly 356 °F, but US dials are marked 350 °F. Both numbers are shown, because recipes use both.
New
A note below absolute zero: the conversion is still shown, with a reminder that such a temperature cannot exist.
New
A link to a specific value: /tools/temperature?c=36.6 opens the page right at it.
Improved
The bringer.ru mark in the header now follows the theme: in dark mode the plate turns light and the letter dark. Previously the dark plate blended into the dark background.
Improved
Site icons were redrawn and rebuilt: a full set for browser tabs, bookmarks, the iOS home screen and Android installs. The letter in the icon is now drawn in the brand typeface instead of whatever the browser substitutes.
Improved
Interface glyphs are now a single icon set instead of a mix of emoji and typographic characters. Emoji were rendered by the system font and looked different on every OS, turning rows of buttons into colourful patches. The set is monochrome and inherits the colour of the text next to it.
Fixed
Warnings in the salary calculator (approximate reverse calculation, the “Forecast” tag, the contributions figure) are coloured again — a typo in a colour name had left them rendering as plain text.
WCAG contrast checker: text and background contrast against the standard — the ratio from 1:1 to 21:1, a traffic-light verdict and all five checks at once: AA and AAA for normal and large text, plus 3:1 for icons, borders and interface elements.
New
Live preview: the chosen pair is shown right away as a 16px paragraph, large text, a link, disabled text, an input field and a button — next to a note about which sample maps to which threshold.
New
A “How to fix” section: the nearest passing colour is found by moving lightness while hue and saturation stay put. You see “before → after”, the new HEX and the new ratio; “Apply” puts the colour into the field. Either the text or the background can be adjusted.
New
Enter a colour any way you like: the picker, HEX, RGB and HSL channels, 140 named CSS colours with autocomplete, and the screen eyedropper where the browser supports it. There is a swap button and one-click common pairs.
New
The pair lives in the address — ?fg=E4002B&bg=F1EEE8. A link to a specific check can be shared; everything is still computed in the browser.
Improved
Crawling is narrower: the service routes /admin and /api/ are closed, and campaign tags and interface-state parameters are folded into the clean address — previously /tools/case?mode=sentence was indexed as a separate page competing with itself.
Improved
Card titles in the reference sections and in the “Related tools” block became real third-level headings. Nothing changed visually, but search robots and screen readers now read the page structure correctly.
Fixed
Local development no longer waits five seconds for an unavailable database on every request — production was unaffected, but working on the site was five times slower.
Fixed
Removed a random failure in the person generator tests that occasionally kept green code from reaching production.
Salary and income tax calculator: the Russian progressive scale month by month — when cumulative income crosses a threshold, how much is withheld that month and how much is left. The switch month is highlighted; in the split month both rates are shown.
New
Bonuses and one-off payments in specific months with the whole ledger recalculated: annual, quarterly, vacation pay. Presets for “Quarterly ×4” and “13th salary in December”.
New
Reverse calculation: enter take-home pay and get the gross salary. If the year contains a threshold crossing, the result is honestly marked as approximate.
New
Annual income split by rate in a single bar: it shows that the higher percentage applies only to the top slice, not to the whole salary.
New
Child deductions and employer cost (contributions on top of the salary).
New
The summary is copied to the clipboard with one button. The calculator deliberately never builds links containing amounts: a salary should not land in browser history or in a chat.
The catalog search query now lives in the address: /tools?q=base64 opens Tools with the filter already applied. A search result can be shared or bookmarked.
New
A “Popular searches” block in the footer — the ten most wanted tools on every page of the site.
New
An “Example” button in the QR code generator: drops the site logo into the middle of the code so you can see how it looks without hunting for an image on your disk.
Improved
Tool names in the “New” strip on the home page became links — previously only the block itself was clickable.
Improved
Page headings now form a proper h1 → h2 → h3 hierarchy: home page sections, catalog category names and card titles are real headings. Nothing changed visually, but search engines and screen readers now read the page correctly.
Improved
The favorite button on each card is labelled with the tool name instead of the same “Favorite” on all twenty-six.
Improved
The home page ships WebSite structured data with site search and an ItemList of popular tools.
Improved
The QR error-correction level now grows together with the logo size instead of being set once on upload. Previously a logo enlarged with the slider silently broke the code while the traffic light still promised “scans perfectly”.
Fixed
The backdrop under a QR logo is cleared in whole modules — no more ragged edge around the logo. The slider tops out at 26%, so every position now produces a readable code.
Fixed
The site owner's own visits no longer count towards the traffic statistics.
QR code generator: links, text, Wi-Fi, contacts (vCard and MeCard), Russian GOST R 56042-2014 payments, emails, phone numbers, SMS, geo points and calendar events.
New
Live scannability assessment: WCAG contrast, correction budget for the logo, inversion and quiet zone — a traffic-light verdict with specific remarks.
New
Camera verification right in the browser — the decoded content is compared with your data, and the video never leaves the tab.
New
Batch generation: a list of links or CSV “name,data” → a ZIP of PNG or SVG files, up to 500 codes at a time.
New
A print size calculator based on the 10:1 rule, plus styling: colour, gradient, module and eye shapes, quiet zone and a centred logo.
New
The address of a tool page now follows scrolling: reach a section and an anchor such as #about appears in the address bar. Copy that link and it opens right at the section.
New
The selected data type is kept in the address: a link like /tools/qr?mode=wifi opens the generator right on that form — handy to share or bookmark.
Improved
Section anchors on every tool page are now meaningful: #converter, #reference, #about, #related instead of #sec01…#sec05. Old links keep working and lead to the same section.
Catalog search on the Tools page: live filtering by title, description, badge and slug, a result counter and hiding of empty categories. Shortcuts: / focuses the field, Esc clears it, Enter opens the only match.
New
A real 404 page instead of a stub: it guesses the tool behind a typo in the URL and offers search and popular tools.
New
A “New” strip on the home page — recently added tools with a link to the changelog.
New
Favorites: three orders (custom, recently added, most used), a run counter on each card and JSON export of the list.
Improved
Favorites moved to the current design system: large heading, cards with a drag handle, empty state with a hint and a link to the catalog. On narrow screens the order is changed with ↑ / ↓ buttons — drag and drop does not work on touch screens.
Improved
The home page hero is more compact: favorites and the catalog now fit into the first screen.
Improved
Breadcrumbs on a non-existent address show “Page not found” and lead home instead of splitting the URL into segments.
Fixed
The favorite star stayed lit after removing a tool from favorites — both on catalog cards and on tool pages.
Fixed
Markup mismatch while loading pages with stars: the server rendered an empty star, the browser a filled one.
Fixed
An unreachable database no longer stalls page rendering — the connection now has timeouts.
All 25 tool pages redesigned into a unified layout: title + FavPill + 4–5 section nav, IO panes with side / stack layout, demo text only on first visit, one-click copy.
Transliterator — 3 standards (GOST R 52535 / ICAO / URL slug), reference table with active-column highlight.
Improved
JSON Formatter — format / minify / validate with precise error location (line + column), key/depth stats.
Improved
IPv4 Subnet Calculator — CIDR breakdown into 11 fields, network/host bit visualisation, subnet splitter.
Improved
Binary Numbers — AND/OR/XOR/NOT/shifts with bit visualisation, IEEE 754 float32 decomposition.
Improved
RegExp Editor — pattern + flags + live-highlighted matches, token-by-token breakdown, library of ready-made expressions across 6 categories.
Improved
Person Generator — settings for language / gender / age / 14 fields, batch up to 100, JSON/CSV/SQL export, famous IT-people mode.
Improved
Password Generator — chars / passphrase modes, per-type min/max, similar-character exclusion, prefix/suffix, entropy meter with strength scale.
Fixed
Number Base Converter — invalid characters are now filtered on input (binary field accepts only 0/1), long 'Hexadecimal' label no longer overflows the label column.
Password Generator: cryptographically strong passwords (crypto.getRandomValues), min/max settings per character type, passphrases (Diceware), batch generation up to 50, entropy display.