What shipped in Mashq Studio
Every version below is a real commit — this page is generated from the repository's own history by tools/changelog.mjs, not written by hand. 625 released versions. RSS feed of releases.
| Version | Date | What changed |
|---|---|---|
v3.99.179 | 2026-10-14 | a drag no longer throws the drawing off the canvas in Safari, a failed start says so again; the CI reds after 3.99.170–172 |
v3.99.178 | 2026-10-14 | numbers inside an Arabic line read the right way — «سنة 2026» drew 6202, «٢:٢٥٥» drew ٥٥٢:٢ |
v3.99.177 | 2026-10-13 | no seam where the mirrored picture meets the canvas wrap |
v3.99.176 | 2026-10-13 | production files only from the live build, and the On-the-piece picture runs into the canvas wrap |
v3.99.175 | 2026-10-13 | the canvas production pack carries the background printed "On the piece" |
v3.99.174 | 2026-10-13 | the Quran as in the Mushaf — Ayat al-Kursi from the King Fahd Complex text, and the verse number inside its medallion |
v3.99.173 | 2026-10-13 | a project link carries its picture — a background printed On the piece travels in the ?project= file and opens loaded in another browser |
v3.99.172 | 2026-10-13 | the Auto sheet holds still and an Auto file is the design with its margin (audit 2026-10-10 wave 2: auto-sheet) |
v3.99.171 | 2026-10-13 | Safari — a 320 px page no longer scrolls sideways before the arrange keys arrive, and the text box comes into view on its first focus |
v3.99.170 | 2026-10-13 | readable at night, and the phone and tablet layout (audit 2026-10-10 wave 2: night-design, phone-layout) |
v3.99.169 | 2026-10-13 | Mashq Thuluth One writes Arabic-Indic digits — ٠–٩ were Western shapes («عيد الاتحاد ٥٥» printed «55») |
v3.99.168 | 2026-10-13 | the CI reds on Linux fonts — the paywall's buttons, the thickness menu, the piece panel's date field; four suite shards |
v3.99.167 | 2026-10-13 | what the buyer is told is what is charged, and the canvas under a finger (audit 2026-10-10 wave 2: order-money, canvas-touch) |
v3.99.166 | 2026-10-13 | hidden tashkeel and Tazyin keep a text's digits — «عيد الاتحاد ٥٥» no longer loses its «٥٥» |
v3.99.165 | 2026-10-13 | the 1a context popovers stay on a phone's screen; the 10-12 nightly's Linux reds |
v3.99.164 | 2026-10-12 | the button rule's last two parts — the layer rows and their menu, keys, share, the 1a shell bars (audit 2026-10-10 package 3 complete) |
v3.99.163 | 2026-10-12 | a sheet set by Keep or "On the piece" is shown as the sheet |
v3.99.162 | 2026-10-12 | Import › "Keep the picture" prints with the design |
v3.99.161 | 2026-10-12 | arrange and group from the toolbar — six icons on the bar (bring to front, forward, backward, send to back, group, ungroup) that say why when they cannot act, with Align and Break folded to make room |
v3.99.160 | 2026-10-12 | imported pictures keep their quality — a new colour tracer (one layer per flat colour, the paper left out, writing on paper as its ink alone) and an SVG reader that keeps strokes, overlaps, even-odd fills, <use>, CSS and clips as the file draws them |
v3.99.159 | 2026-10-12 | the button rule's first wave — ink main buttons and burgundy only where you pay, one close × in the mirrored corner, a toast you can read at night, the ask, save, gate and first-run windows and the order windows laid out one way |
v3.99.158 | 2026-10-12 | the lesson judges a mark the letter does not have and a scribble, and the arrows beside the model stand by the model, off the measure (audit TRACE-06/10/16; TRACE-05 withdrawn) |
v3.99.157 | 2026-10-11 | the order's preview PNG fits the upload when a photo is on the piece |
v3.99.156 | 2026-10-11 | a background "On the piece" sizes the paint too |
v3.99.155 | 2026-10-11 | "On the piece" — the background picture printed on the ordered piece, when asked |
v3.99.154 | 2026-10-11 | Tazyin places the marks by the rules — harakat by إعراب, clarifying letters, fillers last |
v3.99.153 | 2026-10-11 | a design on a large sheet is on the framed paint — the picture of the design drawn for a piece has a ceiling of 8 megapixels, so it never comes back blank, and the piece says so in words if no picture can be made |
v3.99.152 | 2026-10-11 | the audit's five further blockers — the paint you approved is the paint that is ordered, a big project is not erased, the Letter editor has its controls, a pinch leaves no ghost finger, and Order opens where the thumb is |
v3.99.151 | 2026-10-11 | audit 2026-10-06 wave 18 — four of the merchant's choices, as recommended |
v3.99.150 | 2026-10-11 | the audit's three blockers — sign-in by e-mail link works, tablets can export and order, phones can open their projects |
v3.99.149 | 2026-10-10 | audit 2026-10-06 wave 17 — the nineteen fixes the merchant approved |
v3.99.148 | 2026-10-10 | the camera reads ruled and squared paper, and an upright phone's guide mark fits the writing |
v3.99.147 | 2026-10-09 | the background picture works in Safari — kept as an ArrayBuffer (WebKit refuses a Blob in IndexedDB) |
v3.99.146 | 2026-10-09 | a background picture behind the design — kept on this device, never in a print file; Import asks Keep or Trace |
v3.99.145 | 2026-10-09 | an SVG that only wraps a picture is traced like a picture file instead of refused |
v3.99.144 | 2026-10-09 | SVG import up to 15 MB (was 512 KB) — a very large import keeps one decimal of the 1000-unit outline (−25 %), undo history stops at ~60M characters, and a design over localStorage's ~5 MB autosaves into the IndexedDB vault and is restored at boot (no autosave until it is); tests 78 + unit guard with a negative control |
v3.99.143 | 2026-10-09 | the Studio perk — Learn's Smart Coach and Family include clean exports |
v3.99.142 | 2026-10-09 | the English lesson header shows the word being practised again — the language sweep pairs only the share button's <bdi>s |
v3.99.141 | 2026-10-09 | ⇧-click on a layer row's ▲ / ▼ goes straight to the front / back (the variant 3.99.139 left out for boot bytes; 3.99.140 freed them); bilingual tooltips; spec for the row arrows |
v3.99.140 | 2026-10-09 | audit 2026-10-06 wave 16 — every prompt asks in the page, a blocked confirm says so, the sign-in lockout points to the inbox |
v3.99.139 | 2026-10-09 | arrange like PowerPoint — Bring to front / forward / backward / Send to back for the whole selection (groups move as one, locked layers stay, one undo step), from a layer's right-click menu on the canvas, a layer row's right-click menu, ⌘/Ctrl + [ ] (⇧ to the end) and the 1a Object menu; tick boxes in the Layers list pick several layers, and a bar merges them (group / unmerge) or moves them together. Lazy lib/arrange.js (boot 440,957 / 441,000; the 1a shell paid by tightening six comments) |
v3.99.138 | 2026-10-09 | audit 2026-10-06 wave 15 — Worker hardening, the Learn merge, in-page asks, Arabic 1a lines, CI alarms |
v3.99.137 | 2026-10-09 | TE Al Thuluth spells right in every browser — 145 mislabelled letter-pair slots off its cmap (r2 files), lam-alif and the word signs kept |
v3.99.136 | 2026-10-09 | ledger r2 lane AS — one human rule, pixel paid vs Shopify orders, the weekly file, T6/T7, catalogue rules |
v3.99.135 | 2026-10-09 | ledger r2 lane AR — /business says «order today, delivered by», four WhatsApp sets, season pins on Pinterest |
v3.99.134 | 2026-10-09 | ledger r2 lane AO — the 30 most-opened name pages carry a sourced paragraph EN + AR |
v3.99.133 | 2026-10-09 | ledger r2 lane AQ — one signature in every after-sale note, twelve-word preview lines, the send table per channel, n/a until 20 buyers, checkout recoveries counted |
v3.99.132 | 2026-10-09 | type specimens of all 42 styles, and a designer's credit link under a starred showcase piece |
v3.99.131 | 2026-10-09 | audit 2026-10-06 wave 14 — editor, 3D box, Learn sync and CI fixes |
v3.99.130 | 2026-10-09 | a nightly watch on Arabic letters — and the last pages in a system font fixed |
v3.99.129 | 2026-10-09 | the Monday digest no longer names the merchant's pending decisions — it opens with the targets (ledger r1 lane AL, #1969 re-opened) |
v3.99.128 | 2026-10-09 | the home's largest paint comes with its first, no Ruq'ah file before it, one-language order mails, the nightly speed of both hosts on the console (ledger r1 lane AM) |
v3.99.127 | 2026-10-09 | measurement and the console — the week's social, subscriber and answer-time lines; names line, device ladder, quote drift, experiments, weekday × hour and cohorts on This-week; the next 30 days on Analytics; a paid order closes its quotation; /measure (ledger r1 lane AJ) |
v3.99.126 | 2026-10-09 | the agent surface (/openapi.json, /mcp, /.well-known/mcp.json), ?open=batch opens Batch names, the Reel spec and the Facebook Reel in the social sweep |
v3.99.125 | 2026-10-09 | the season calendar computes every date, Eid is quiet, the wedding form carries the date, Mondays name the overdue decisions and the targets (ledger r1 lane AL) |
v3.99.124 | 2026-10-09 | one order, one workshop mail — and port 587 answers |
v3.99.123 | 2026-10-09 | a delivery marked in Shopify sends the delivered note — the sync keeps Shopify's delivered date, the Studio stamps it and asks for the review once (deliveries from 9 Oct on); the After the sale panel carries the delivered press on each row |
v3.99.121 | 2026-10-09 | the «العربية» link on English /compare in the house Naskh (Amiri-UI-fa2), not the system face |
v3.99.120 | 2026-10-08 | the public promises made true — the calligrapher-marked exam is planned and in no plan today (plans page, terms, EN + AR), Studio Pro says 100 downloads a month and the 7-day pass 25 (home FAQ + hint; order passes stay unlimited), the free reed-pen stroke carries no "3 a day" cap the code never applied; guard tests/unit/promises-true |
v3.99.119 | 2026-10-08 | the Studio pages' 'Amiri' takes the full cut — the home's commas come home |
v3.99.118 | 2026-10-08 | the B2B pipeline — quotations with follow-ups, outcomes and ready texts, a leads panel over the catalogue and /business, a names list, Eid; the corporate FAQ and calendar on /business; the proposal PDF says the kit's lead time |
v3.99.117 | 2026-10-08 | after the sale — the delivered and day-14 notes carry the reorder, survey and referral doors; store orders get the delivered mail; a reviews block on product pages from real reviews only; /reviews split EN + /ar/reviews; the console's After-the-sale panel; the Monday digest's line; the Companion nudges a saved design to its price (lane AI r8) |
v3.99.116 | 2026-10-08 | Learn conversion (lane AH r8) — the paid-lesson door names the lesson, the learner's progress and the plan; the plans page says where a visit came from and which plan is for whom; the welcome page leads a Family buyer to the family page; the console's Learn funnel to the money |
v3.99.114 | 2026-10-08 | one Arabic cut with the Persian and Maghribi letters, everywhere |
v3.99.113 | 2026-10-08 | Persian verses join again — the Learn/SEO pages' Arabic cut carries گ ک ی چ ژ پ |
v3.99.111 | 2026-10-08 | lane AE r7 — the 404 paths' month in the console, 301s for the recorded misses of ours, the two browser probes answered, the boot splash's transparent sheet, the name card eager, the digest's robot line, the funnel's robot method, store script profiler + index-coverage candidates, Lighthouse floors for name/verse/order |
v3.99.110 | 2026-10-08 | lane AC r7 — the press kit (facts from one module, 12 photos, logo files, one-page PDFs, store page), social that carries links (FB utm, IG bio line, a Reel staged unapproved), pinterest.rss validated, insights revived weekly on the Worker ledger, 30 roundup targets with pitches |
v3.99.109 | 2026-10-07 | lane Z r6 — 25 Studio + Learn tool and learning queries, each with one owner |
v3.99.108 | 2026-10-07 | the ready phrases and ornaments (﷽ and the rest) and the Glyphs palette are there whatever layer is active |
v3.99.107 | 2026-10-06 | delivery leaves the make-or-buy comparison (the same both ways, the merchant) |
v3.99.106 | 2026-10-06 | "made outside" reads the print shop's own price sheet |
v3.99.105 | 2026-10-06 | the print-cost tab becomes a make-in-house vs outsource evaluation, redesigned |
v3.99.104 | 2026-10-06 | the printing calculator in the console — what one finished artwork costs to make, printer by printer |
v3.99.103 | 2026-10-06 | an import keeps its colours — SVG layer by colour, and PNG/JPG through the same Import button, traced in its colours |
v3.99.102 | 2026-10-06 | a stalled font no longer freezes the canvas tools until a reload |
v3.99.101 | 2026-10-06 | the audit of 2026-10-06, wave 5 — the console's first click after a pause works, the Errors and Reviews tabs show the newest, a job run from the console says what it found, the order page speaks one language and stops waiting for a photo after shipping, the proposal PDF prints its dashes and names, the weekly revenue leaves out cancelled orders, a shared link no longer comes back on reload, a right click no longer drags, presets never overwrite each other, a view-only link shows what was shared, a copied cut letter is its own, and the 3D order dialog takes the keyboard |
v3.99.100 | 2026-10-06 | the Studio's core pages in one language each (lane T r5) — /faq, /blog, /business, /pricing, /refer, /compositions, /changelog, /cannot, /showcase, /press, /badge and /terms are English, each with an Arabic twin at /ar/… (hreflang pairs, the header badge, both in the sitemaps); /terms split word for word; an Arabic journal of three posts; search arrivals counted per landing |
v3.99.99 | 2026-10-06 | the audit of 2026-10-06, wave 4 — a deleted project stays deleted, Save tells the truth when the browser store is full, your own share link no longer wipes a project's history, the full font is retried and the palettes follow it, a kept design is parked before a link's design replaces it, Copy SVG and the batch are print files, EPS fills like the stage, split pieces keep their group and place, translucent layers print as one tint, the 3D fields show what will be made, the B2B follow-up honours the suppression list, the health readers read today, and the console signs in in one language |
v3.99.98 | 2026-10-06 | the workflows carry their own key, ACTIONS_KEY — the order back-fill, flags, growth log, intents, funnel and restore drill work again |
v3.99.97 | 2026-10-06 | Studio core SEO (lane P r4) — core titles ≤ 65, one language per landing, the home served as English, design-it-yourself occasions |
v3.99.96 | 2026-10-06 | the Studio opens in the language you last read |
v3.99.95 | 2026-10-06 | the audit of 2026-10-06, wave 3 — the lesson window owns the keyboard, a lesson link keeps your design, a stale tab cannot sync into another account, a deleted account stays deleted, a share link can no longer erase an account's cloud projects, typed sizes work again, PDF crop marks sit where they belong, and 10 more fixes |
v3.99.94 | 2026-10-06 | the audit of 2026-10-06, wave 2 — the console's Reject works, its revenue and production counts follow the shop, a mail refusal no longer suppresses a customer or stalls the mail loops, the nightly roll-up cannot be broken by an event name, CSV cells are never formulas, and the 3D order path keeps the jar's rule, the paint's fit and all three design files |
v3.99.93 | 2026-10-06 | the audit of 2026-10-06, wave 1 — a shared design can no longer put markup on the page, the paint quote cannot be made eternal or verify a bigger order, Real Photo's spend cap holds and its kill switch works, /order follows Shopify's cancel/refund/fulfil, mug orders reach the workshop, and 30 more fixes with guards |
v3.99.92 | 2026-10-06 | video, image + Learn SEO — films VideoObjects with lengths, /learn/films, a video sitemap, essays' works as licensed images, Learn titles that fit, one language per page marked, /ar/for/teachers, name cards right-sized, /ar/names without the jump — lane O r3 |
v3.99.91 | 2026-10-05 | the Studio's daily counts are whole again — lane I done |
v3.99.90 | 2026-10-05 | Arabic pages open the Arabic Studio, the English home's title in English — lane H done |
v3.99.89 | 2026-10-05 | the first run — honest first-letter counts, the starter selected on the first tap, a Latin name offered in Arabic letters, name doors large and centred, one language on the first screen, a review link for every order |
v3.99.88 | 2026-10-05 | feeds that tell the truth, an Arabic feed, IndexNow for what changed, one MASHQ entity |
v3.99.87 | 2026-10-05 | the paint options' artwork note and glass line in one language |
v3.99.86 | 2026-10-05 | the workshop's size line states delivery as checkout charges it, not "delivery Dubai (free)" |
v3.99.85 | 2026-10-05 | the order hand-off — files and preview upload at once, failures counted and said, the SET's delivered figure, the resume line |
v3.99.84 | 2026-10-05 | the order summary — the buyer's rows in one language, three true lines, WhatsApp with the design, the Order press counted |
v3.99.83 | 2026-10-05 | the Studio home links Learn and the names, says what is made (not "engraved"), and names the organisation; the SEO audit as one command |
v3.99.82 | 2026-10-05 | the order path on a phone — the delivered figure in the page's language, a pinned Order bar, the paint's real size |
v3.99.81 | 2026-10-04 | a Studio paint pays delivery once — the units bill the piece, Shopify adds delivery |
v3.99.80 | 2026-10-04 | three conversion fixes — the price moment, download → order, a quieter install offer |
v3.99.79 | 2026-10-04 | no user's design is public until the merchant approves it, and no name is shown |
v3.99.78 | 2026-10-04 | Learn's home in the menus — the logo inside Learn leads to Learn, and the Studio's Practice menu too |
v3.99.77 | 2026-10-04 | the advanced path without the masters' levels (the merchant: the original text is not clear) |
v3.99.76 | 2026-10-04 | the lesson pen fitted to every letter of every script |
v3.99.75 | 2026-10-04 | Farsi's lesson pen a tenth lighter, and no advanced lesson that waits for a calligrapher's layout |
v3.99.74 | 2026-10-04 | the advanced path's sacred checks, written in quiet |
v3.99.73 | 2026-10-04 | the advanced path's level checks, and its long lines open |
v3.99.72 | 2026-10-04 | Hashim's arrows beside the lesson letters |
v3.99.71 | 2026-10-04 | the advanced path — 40 lessons per script, up to a whole masterpiece |
v3.99.70 | 2026-10-04 | picture credits wrap on a phone — no Learn page scrolls sideways |
v3.99.69 | 2026-10-03 | the lesson arrows are switched off until they follow the merchant's rules |
v3.99.68 | 2026-10-03 | arrows in the lesson letters, after Hashim, and a letter written in stages is not judged at a lift |
v3.99.67 | 2026-10-03 | the name pages in two languages, one each — /ar/names and /ar/name/<slug> |
v3.99.66 | 2026-10-03 | the essays at length — sections, eight pictures each, sources |
v3.99.65 | 2026-10-03 | the Arabic of the name pages in one face, Amiri |
v3.99.64 | 2026-10-03 | more pictures of the calligraphers — 21 works and 12 portraits from open collections |
v3.99.63 | 2026-10-03 | a line is written word by word, the line in view, then once whole for the eye |
v3.99.62 | 2026-10-03 | every essay shows its pictures, and the reading list a picture beside each |
v3.99.61 | 2026-10-03 | the font collection, release 3 — the playful five, and Mirza |
v3.99.60 | 2026-10-03 | the Learn header's ways are plain words, no boxes |
v3.99.59 | 2026-10-03 | the font collection, release 2 — the modern seven |
v3.99.58 | 2026-10-03 | every calligrapher has a page of their own, and no Learn page links away from mashq |
v3.99.57 | 2026-10-03 | the font collection, release 1 — Amiri Quran, a Modern group, and a word under every style |