Pattern drafting software
Olcroy
Free, open-source pattern drafting software based on Valentina. Measurements, drafting by formulas and piece layout, with no subscriptions.
For desktop computers only.
Three pages in one window
Draft
Points, lines and curves as formulas of the measurements; pieces with seam allowances and notches.
Measurements
Personal files and size charts, a reference of measurements with diagrams.
Layout
Pieces on sheets of a set width, automatic layout, and printing at full size.
What Olcroy does
Drafting by formulas
Change the measurements and the draft rebuilds itself, nothing to redraw.
Valentina files
Opens Valentina patterns and measurements (.val, .vit, .vst, .vlt) without changing them; saves in its own .olcp and .olcm formats.
Interface in 21 languages
Including English, українська and русский.
Lessons inside
Step-by-step lessons open right in the program.
AI assistant
An AI assistant works right in the open program: it reads the pattern, fills in measurements, draws points and curves. Ctrl+Z undoes any of its changes, and it can be switched off in the preferences.
MCP server
Claude and other assistants that support MCP connect to Olcroy and work with the draft, the measurements and the layout. The MCP server and the protocol are in the program's source code.
What’s new in version 2026.1-b.1
The first beta of Olcroy, pattern-making software based on Valentina 1.1.1. If something does not work right, tell us in the GitLab issues.
- One program, one window. Measurements and the manual layout are pages of the pattern window (Ctrl+1, 2, 3) instead of the separate programs Tape and Puzzle.
- An AI assistant right in the program reads the pattern, fills in measurements, draws points and curves. Ctrl+Z undoes any of its changes, and it can be switched off in the preferences.
- Interactive lessons walk you through the program step by step.
- Russian interface.
- Shorter layouts: the new automatic layout uses 10–20 % less fabric on our sample patterns and stops by itself when it cannot do better.
- Printing you can trust: a ruler on every sheet to check the scale, and tiled prints without empty pages and with fewer pages.
- Updates from inside the program: Olcroy tells you about a new version and installs it for you on Windows.
- Its own file formats (.olcp, .olcm, .olcs, .olcl). Valentina files open as before; Olcroy never changes them.
- No tracking: Valentina’s usage statistics, crash uploads and country check are removed.
- Many fixes, including crashes that Valentina fixed after version 1.1.1.
Full list of changes
Download for Windows: olcroy-2026.1-beta.1-setup.exe (SHA-256)
Download for Linux: olcroy-2026.1-beta.1-x86_64.AppImage (SHA-256)
The first release of Olcroy, a pattern-making program based on Valentina 1.1.1. It is a beta: please report problems at https://gitlab.com/elgranat/olcroy/-/issues. The main differences from Valentina:
- One program, one window. Measurements and manual layouts are pages of the pattern window (Ctrl+1/2/3) instead of the separate programs Tape and Puzzle.
- An AI assistant can help right in the open program: read the pattern, fill in measurements, draw points and curves - every change can be undone with Ctrl+Z. It can be switched off in the preferences.
- Interactive lessons in the Tutorials menu walk you through the program step by step.
- Russian user interface.
- Shorter layouts: a new automatic layout uses 10-20 % less fabric on our sample patterns and stops by itself when it cannot do better.
- Printing you can trust: a ruler on every printed sheet to check the scale, tiled prints without empty pages and with fewer pages.
- Updates from inside the program: Olcroy tells you about a new version and, on Windows, installs it for you.
- Its own file formats (
.olcp,.olcm,.olcs,.olcl). Valentina files open as before; Olcroy never changes them. - No tracking: the usage statistics, crash uploads and the country check of Valentina are removed.
- Many fixes, including crashes that Valentina fixed after version 1.1.1.
The details follow.
Added
- A local bridge for AI assistants in the pattern, measurements and manual layout windows: each open window listens on a local
channel for JSON-RPC requests (reading the pattern, measurements or layout and changing them the way
the user would, with undo). It is on by default and can be switched off in Preferences → Configuration
→ AI assistant. The protocol and an MCP server are in
agent/. - Interactive lessons over the pattern, measurements and manual layout windows, started from the Tutorials menu.
- Russian user interface.
- Scale check ruler: every printed or exported sheet (printing, PDF, tiled PDF, SVG, PNG, TIFF, PS/EPS, HP-GL) gets two rulers at a right angle with a common zero, 15 cm with a division every centimeter and a number every 5 cm (6 in for a pattern in inches; 10 or 5 cm, 4 or 2 in on a crowded sheet), in a free place and always on the first page of a tiled print (on its own part, clear of the glue strips). They are drawn like the rulers of the tiles (a division every centimeter and half centimeter, the same thin line and 10 pt text). They keep their size on paper whatever the scale of the export: lay a real ruler on them to check the printer or the plotter along the sheet and across it. Files for cutters and other CAD programs (DXF, RLD, OBJ) do not get it. Switched off in Preferences → Pattern.
- A tiled print and a tiled PDF (of a layout and of a manual layout) leave out the pages with no piece on them. The printed pages keep their numbers and their place in the grid (“Grid ( 2 , 3 )”, “Page 7 of 12”), the scale check ruler is on the first printed page, and the tiles scheme of a manual layout marks the skipped pages with a cross. A sheet with no pieces and a manual layout cut on fold are printed whole. Switched off in Preferences → Pattern.
- A tiled print with fewer pages: Print tiled PDF, Preview tiled PDF and the export of a layout as a tiled PDF
first show the pages of the layout and, in the background, look for a layout of the same pieces (all copies) that
needs fewer pages of the tiled paper, the pieces turned as paper allows. Relayout and print uses it for that print
only - the layout in the window does not change; Print as is prints the layout as it is. A layout is offered only
if it has fewer pages. Switched off in Preferences → Pattern. From the console:
--fewestTileswith-f 33. - Extend a curve to length (next to Segment a curve): a curve goes on past its last point with the same
bend until the whole curve is as long as a formula says (
CurrentLengthis the length of the curve); the tool makes the end point and the extended curve, measured exactly to that length. For constructions such as the lower sleeve cap drawn through a point with the length of the armhole. New point typeextendCurvein.val. - Olcroy’s own pattern format, version 2026.1.0: Valentina’s 1.2.0 plus the point type
extendCurveand the name and version of the program that saved the file (generator,generatorVersion). The pattern format version is the number of the Olcroy release that changed the format. Patterns of Valentina (every version up to 1.2.0) still open; a pattern of a newer Olcroy says which Olcroy release it needs. - Olcroy’s own file extensions:
.olcp(pattern),.olcmand.olcs(individual and multisize measurements),.olcl(manual layout). Olcroy never writes Valentina’s.val,.vit,.vst,.vlt; it imports them - File > Open, the new File > Import from Valentina…, a double click or the command line open such a file as a new Olcroy document named after it, and the original stays unchanged (nothing is written next to it). Valentina measurements of an imported pattern can be saved as Olcroy measurements at its first save. The installer registers the new types and adds Olcroy to Open with for Valentina’s files without taking them over. - Update check: a newer release on GitLab puts an orange dot on the Help menu (daily, can be switched off).
- Updates install from inside the program (Windows, signed builds): Download fetches the installer and checks
it (its published SHA-256 and its code signature, which must be of the publisher of the running program), then
Restart and Update closes every window of Olcroy (each asks about unsaved changes), runs setup without
questions and opens the program again with the files that were open; On Exit installs when the program is
closed. The installer is downloaded after a click; Preferences → Configuration → Updates → Download updates
automatically fetches it in the background instead. Releases publish
…-setup.exe.sha256next to the installer. - Calendar versions as JetBrains: 2026.1, fixes 2026.1.1, pre-releases 2026.1
b.1 (Beta) and 2026.1rc.1; a beta installs next to the release and replaces the previous beta.
Changed
- Measurements saved on the Measurements page of the pattern window are synced into the pattern without the question “Measurements were changed. Do you want to sync measurements now?” when you come back to the pattern; a notification says “Measurements have been synced”. The pattern still asks when the file was changed by another program (or a network or cloud folder) after that save, or when the save lacks a measurement the pattern uses. The sync waits while a tool dialog is open or a file is being saved.
- One Curve tool instead of Simple curve and Curved path: it takes two or more points one by one and Enter
(or a click at the last point again) finishes it; two points make a simple curve (
Spl_A_B), more a curved path (SplPath_A_B_C), as before. At the last point the handle is dragged the way the curve would go on (as for a curved path). One Segment a curve tool instead of Segmenting a simple curve and Segment a curved path: it takes either kind of curve. Files, formulas and the options of existing curves do not change; Ctrl+K finds both tools by their former names. - Measurements: the tool bar is one slim row like the top bar of the pattern page - small icons of the Olcroy theme with the labels beside them instead of Valentina’s large colored buttons. New, Open and Save are icons with tool tips; a label gives way (the measurement diagram’s first) when the window is too narrow for all of them.
- Installer: Russian wizard and the Russian translation of the program installed, the full logo in the page header; replacing an older version no longer asks to delete the settings.
- The program is renamed to Olcroy; settings move to the Olcroy folder and are copied from Valentina’s on first start; environment variables OLCROY_* (VALENTINA_* still read).
- One program instead of three: Tape and Puzzle are the Measurements and Manual layout pages of the pattern
window, and a measurements or layout file opened on its own opens in a window of
olcroy. There are no separate Tape and Puzzle executables; their command line isolcroy --app tape|puzzle …. - Automatic layout: a new nesting algorithm (a C++ port of jagua-rs and sparrow) replaces the previous one. On the
sample patterns the layout on a 150 cm roll is 10–20 % shorter (shirt 93.2 → 83.8 cm, jacket 294.0 → 240.0 cm,
trousers 148.6 → 117.6 cm), and 14–20 % shorter when every piece follows its grainline; it uses 3 processor cores
instead of all of them.
- The time of the layout settings is now a maximum (Maximum time): the search ends by itself when the layout stops improving (Stop early when the layout stops improving, on by default), usually after 5–60 s. The progress window shows the efficiency and the length found so far; Stop and keep the result ends the search and keeps the best layout, Cancel drops it.
- Rotation: a piece that follows its grainline is turned only as the arrows of the grainline allow; the new list Pieces without grainline lets the other pieces turn by any angle (default) or by 90° only. The nester does not flip pieces; forced and forbidden flipping, quantities and the gap are honoured as before.
- With any angle the pieces stay straight (quarter turns) unless a layout with tilted pieces is at least 2 % shorter: a tilted piece next to a straight one with a wedge of wasted fabric between them is no longer chosen for a few millimeters of length.
- Sheets of a fixed size are searched together, so the pieces are spread over as few sheets as the search finds.
- Gap width means what it meant: free space around every piece, twice that between neighbours, none at the border of the sheet. The efficiency is now the area of the pieces divided by the material used (full width × used length), a lower and more honest number than before.
- The options only the previous algorithm understood (Save length of the sheet, Prefer one sheet solution,
Manual priority, Rule for choosing the next workpiece, Divide into strips) are hidden. The previous
algorithm stays for this release behind
layout/nestEngine=legacyinOlcroy.inior--legacyNesting. - Command line:
--nestSeed(default 1),--nestFixedWork(a reproducible layout),--nestNoEarlyStop,--nestRotation quarter|step|any,--legacyNesting;-g,-S,--preferOneSheetSolutionand--manualPriorityare ignored without--legacyNesting. An export with a layout no longer waits the whole-ntime.
- Known measurements: the groups of a database are listed in the order of the file.
- Third-party licenses are installed with the program (
share/licenses). - pdftops (PS/EPS export on Windows) is built from the Xpdf 4.06 source kept in the repository
(
dist/win/xpdf,scripts/build-pdftops.ps1) instead of a prebuilt Xpdf 3.04 binary.
Removed
- The country check (a request to api.country.is) and the locale, folder-name and time-zone checks that closed the program for some users.
- Usage statistics (Google Analytics) and crash report uploads to the Valentina project’s services, with the consent dialog and their settings.
- The automatic update check against the Valentina project’s update feed.
- Build, signing and upload infrastructure of the Valentina project (GitHub workflows, Transifex, SonarCloud, deploy scripts).
Fixed
- Closing a window no longer says “Cannot save settings. Access denied.” when the settings file was busy only for a moment (a synchronised Documents folder, another window of the program): the write is retried, and the message is shown only when the settings really are not saved.
- Measurements: a diagram scaled by its database shows correctly for SVG images and stays sharp on high-DPI screens in the Add known measurements dialog.
- Tiled print of a pattern in millimeters: the ruler along the glue strip of every page had a division every millimeter under the label “cm”; it has a division every centimeter now.
Fixed after Valentina fixed them (after the split; each reproduced first by our own test)
- Undoing the first draw block of a new pattern no longer crashes the program.
- Adding a background image after closing a pattern that had one no longer crashes the program.
- A piece whose path runs along a curve that has no points (a formula made the curve invalid) no longer crashes the program; the pattern reports the problem.
--dimensionA,--dimensionBor--dimensionCthat the measurements do not have is a data error (exit code 65) with a message, not a crash.- Curves of old patterns (stored with the coefficients kAsm1, kAsm2, kCurve) no longer turn into straight lines after saving and reopening; files already saved that way get their curves back, and the pattern says how many curves were restored.
- Old patterns whose formulas use the line of a Height point in the previous order (Line_P2_H, AngleLine_P2_H) open again: the formulas are rewritten, the angle keeps its value.
- A point that cuts a curve and finds no intersection no longer gives its segments the names “SplPath_”, “Spl__” or “Arc_” that break the pattern.
- Renaming a variable or a point renames it in every formula, and “is used” checks see them all: passmark width, angle and visibility, piece label and pattern label geometry, fold line, place label and path visibility, rotation of the move operation and the handles of a curve were missed.
- No spike in the seam allowance at a near-straight joint, such as a point placed on a curve.
- Drawing labels no longer searches the folder of font corrections again on every repaint, and hovering a background image no longer reads its file from disk.
- The angle in the Point along perpendicular dialog is shown in full.
- The known measurements editor keeps the measurement details after the size of an image was changed.
- Manual layout: with the tiles shown, a right click at a piece opens the piece menu, not the sheet menu.
- The formula functions
rint()andr2cm()no longer turn a value beyond ±2147483647 or an invalid result (NaN) into −2147483648.
From Valentina (fixes made upstream before the split, not in 1.1.1)
- [Valentina / Tape / Puzzle] Fixed a crash on Windows on CPUs older than 2008 (no POPCNT support).
- [Valentina] Fixed a crash adding a background image with an oversized or malformed SVG canvas.
- [Valentina] Fixed a crash in the Increments dialog when the formula field was edited right after the table was rebuilt and the selected row had become a separator.
System requirements
- Windows
- Windows 10 or later, 64-bit
- Linux
- Linux, 64-bit
Source code and license
Olcroy is a modified version of Valentina 1.1.1 and is not affiliated with the Valentina project. It is distributed under the GNU GPL version 3 or later: you are free to use, study, change and share it.