diff --git a/LATEST_DEVELOPER_NEWS.md b/LATEST_DEVELOPER_NEWS.md
index d12eaa1308f..273b882bbd9 100644
--- a/LATEST_DEVELOPER_NEWS.md
+++ b/LATEST_DEVELOPER_NEWS.md
@@ -12,11 +12,9 @@ Take a look at our new development blog, which you can read at [2022.freesewing.
If you'd like to get involved in this effort, head over to [discord.freesewing.org](https://discord.freesewing.org/) and join the **v3** channel.
-##### Next contributor call on 2 October
+##### Next contributor call on 30 October
-The next contributor call is on **2 October 2021**, Lucian and Karen will host it.
-
-There will also be a [developer call](https://github.com/freesewing/freesewing/issues/1352) 30 minutes prior.
+The next contributor call is on **30 October 2021**, Lucian and Karen will host it.
The call is on [discord.freesewing.org](https://discord.freesewing.org/).
Check the meetings voice/video channel.
diff --git a/LATEST_NEWS.md b/LATEST_NEWS.md
index 3259b17452c..82bcae1512b 100644
--- a/LATEST_NEWS.md
+++ b/LATEST_NEWS.md
@@ -1,14 +1,14 @@
-##### New pattern: The Yuri Hoodie
+##### New patterns: Bee, Lunetius, Tiberius, and Walburga
-Check out the latest addition to our catalog: [the Yuri hoodie pattern](/designs/yuri/).
+Check out the latest additions to our catalog: the [Bee bikini](/designs/bee/), [Lunetius Lacerna](/designs/lunetius/), [Tiberius Tunica](/designs/tiberius/), and [Walburga Wappenrock](/designs/walburga/).
-Yuri is a fancy zipless cardigan based on the Huey & Hugo hoodies.
+Bee is a bikini pattern, while Lunetius, Tiberius, and Walburga are historical patterns.
-##### Next contributor call on 2 October
+Read more in [our blog](/blog/freesewing-2-19/).
-The next contributor call is on **2 October 2021**, Lucian and Karen will host it.
+##### Next contributor call on 30 October
-There will also be a [developer call](https://github.com/freesewing/freesewing/issues/1352) 30 minutes prior.
+The next contributor call is on **30 October 2021**, Lucian and Karen will host it.
The call is on [discord.freesewing.org](https://discord.freesewing.org/).
Check the meetings voice/video channel.
diff --git a/markdown/org/docs/patterns/bella/cutting/en.md b/markdown/org/docs/patterns/bella/cutting/en.md
index d3e833414e2..22766195623 100644
--- a/markdown/org/docs/patterns/bella/cutting/en.md
+++ b/markdown/org/docs/patterns/bella/cutting/en.md
@@ -1,7 +1,20 @@
-To make Bella, you'll need:
+---
+title: Bella Cutting
+---
- - 1 Front
- - 2 Back
+**Main fabric**
+
+ - Cut **1 Front** part on the fold.
+ - Cut **2 Back** parts.
+
+
+These cutting instructions are just for the default Bella block. Adjust your cutting accordingly if you have/are making changes to the block.
+
+
+
+If you do not have someone to help pin you into Bella then you may find it easier to Cut 2 Front parts with seam allowance and sew the backs up when constructing so you can pin in the front.
+
+
diff --git a/markdown/org/docs/patterns/bella/fabric/en.md b/markdown/org/docs/patterns/bella/fabric/en.md
index b1f97f95352..b7493747709 100644
--- a/markdown/org/docs/patterns/bella/fabric/en.md
+++ b/markdown/org/docs/patterns/bella/fabric/en.md
@@ -1,3 +1,11 @@
+---
+title: Bella Fabric options
+---
+
+If you are making a default Bella to see how it fits we recommend a fabric such as **Calico (Muslin)** or a cheaper fabric that matches the drape and stretch of the fabric you intend to make a finalised version of Bella with.
+
+You can use scraps of fabrics from your stash so don't worry about buying fabric specifically for Bella.
+
###### Bella is a block, not a pattern
diff --git a/markdown/org/docs/patterns/bella/instructions/en.md b/markdown/org/docs/patterns/bella/instructions/en.md
index 0e241c78e98..44d39818fc4 100644
--- a/markdown/org/docs/patterns/bella/instructions/en.md
+++ b/markdown/org/docs/patterns/bella/instructions/en.md
@@ -1,3 +1,7 @@
+---
+title: Bella Construction
+---
+
###### Bella is a block, not a pattern
@@ -5,6 +9,56 @@
A block is a basic shape on which other patterns are based.
They are sometimes also called slopers, although purists will argue that a block and a sloper are different things.
-Blocks are typically not made as-is but rather serve as a basis for other patterns.
+Blocks are typically not made as-is but rather serve as a basis for other patterns so the instructions below will not go in depth about closures or finishes and are for the default Bella block.
+
+### Step 1: Mock-up Construction
+
+__1.__ Close the front bust and waist darts.
+__2.__ Close the back darts.
+__3.__ Sew the front to the backs at the shoulders right sides together.
+__4.__ Sew the front to the backs at the side seams right sides together.
+
+
+
+If you are making adjustments you may wish to sew the seams wrong sides together to make them easier to adjust.
+
+
+
+### Step 2: Try it on
+
+__1.__ Try it on and check the fit by pinning the back closed whilst wearing it.
+__2.__ Make any alterations and try it on again.
+__3.__ Repeat until you are happy.
+
+
+
+If you do not have someone to help with pinning, you may find it easier to cut the front part in two with seam allowance rather than on a fold and sew the back seam up so that you can pin in the front when trying on.
+
+
+
+
+
+Remember to treat Bella as a basis rather than a final product, so adjust what you need to get the desired look.
+For instance:
+- Change the neck line
+- Add/change the closure allowances
+- Alter the dart placements
+- Add a collar
+
+It is all up to you! Experiment and go forth!
+
+
+
+### Step 3: Make a paper pattern
+
+__1.__ Once happy with all your changes unpick your mockup and make a paper pattern based off of it.
+__2.__ Now you have a pattern you can use to produce a garment.
+
+
+
+It is best practice to make a paper pattern from the mock-up if you have made any alterations, as this will allow you to clean up any lines but also means you have a pattern that you can keep producing garments from.
+
+
+
diff --git a/markdown/org/docs/patterns/bella/needs/en.md b/markdown/org/docs/patterns/bella/needs/en.md
index b1f97f95352..6d47ee81cb8 100644
--- a/markdown/org/docs/patterns/bella/needs/en.md
+++ b/markdown/org/docs/patterns/bella/needs/en.md
@@ -1,3 +1,14 @@
+---
+title: Bella What you need
+---
+
+To make Bella, you will need the following:
+
+- Basic sewing supplies
+- About 0.5 metres of a suitable fabric ([see Bella Fabric options](/docs/patterns/bella/fabric/))
+
+This list is for a default Bella Block. If you have/are making changes to the block you may need to get additional items such as closures, binding etc.
+
###### Bella is a block, not a pattern
diff --git a/markdown/org/docs/patterns/carlton/options/en.md b/markdown/org/docs/patterns/carlton/options/en.md
index bf10aaf9a36..4de6ccf3fbd 100644
--- a/markdown/org/docs/patterns/carlton/options/en.md
+++ b/markdown/org/docs/patterns/carlton/options/en.md
@@ -1,5 +1,5 @@
---
---
-
+
diff --git a/markdown/org/docs/patterns/cornelius/options/cuffstyle/en.md b/markdown/org/docs/patterns/cornelius/options/cuffstyle/en.md
index e2771b26d0d..a031aba1bfe 100644
--- a/markdown/org/docs/patterns/cornelius/options/cuffstyle/en.md
+++ b/markdown/org/docs/patterns/cornelius/options/cuffstyle/en.md
@@ -4,13 +4,10 @@ title: Cuff style
This pattern supports three different cuff styles:
- - Traditional
- - Elegant
- - Keystone
-
-Describe the different styles
-
+ - **Traditional**: A single buttoned *curved* band with a pointed edge.
+ - **Elegant**: A single buttoned *straight* band with a pointed edge.
+ - **Keystone**: A slightly curved band that is wider than the others using 3 buttons rather than 1. This one is based of off the one in the Keystone Draft this pattern is based on.
## Effect of this option on the pattern
-
\ No newline at end of file
+
diff --git a/markdown/org/docs/patterns/holmes/options/buttonhole/en.md b/markdown/org/docs/patterns/holmes/options/buttonhole/en.md
index 76d770ba85b..78c6274e8af 100644
--- a/markdown/org/docs/patterns/holmes/options/buttonhole/en.md
+++ b/markdown/org/docs/patterns/holmes/options/buttonhole/en.md
@@ -1,3 +1,9 @@
+---
+title: Buttonhole guide
+---
+
+Adds a buttonhole to the ear flap to help you draft the buttonhole ear flap variant
+
## Effect of this option on the pattern

diff --git a/markdown/org/docs/patterns/holmes/options/earlength/en.md b/markdown/org/docs/patterns/holmes/options/earlength/en.md
index 141d58d0f7e..e2f0ba87440 100644
--- a/markdown/org/docs/patterns/holmes/options/earlength/en.md
+++ b/markdown/org/docs/patterns/holmes/options/earlength/en.md
@@ -1,3 +1,8 @@
+---
+title: Ear flap length
+---
+
+Controls the length of the ear flaps independently from the crown pieces
## Effect of this option on the pattern
diff --git a/markdown/org/docs/patterns/holmes/options/earwidth/en.md b/markdown/org/docs/patterns/holmes/options/earwidth/en.md
index 0b34f114d63..dd831eeaaa4 100644
--- a/markdown/org/docs/patterns/holmes/options/earwidth/en.md
+++ b/markdown/org/docs/patterns/holmes/options/earwidth/en.md
@@ -1,3 +1,9 @@
+---
+title: Ear flap width
+---
+
+Controls the width of the ear flaps
+
## Effect of this option on the pattern

diff --git a/markdown/org/docs/patterns/holmes/options/gorenumber/en.md b/markdown/org/docs/patterns/holmes/options/gorenumber/en.md
index 987842714b5..af05d647ba0 100644
--- a/markdown/org/docs/patterns/holmes/options/gorenumber/en.md
+++ b/markdown/org/docs/patterns/holmes/options/gorenumber/en.md
@@ -1,7 +1,9 @@
---
-title: Number of gores
+title: Number of crown pieces
---
+Controls the number of panels there are in the crown
+
## Effect of this option on the pattern

\ No newline at end of file
diff --git a/markdown/org/docs/patterns/holmes/options/headease/en.md b/markdown/org/docs/patterns/holmes/options/headease/en.md
index 133e09075c1..34887b58fb3 100755
--- a/markdown/org/docs/patterns/holmes/options/headease/en.md
+++ b/markdown/org/docs/patterns/holmes/options/headease/en.md
@@ -1,3 +1,6 @@
+---
+title: Head ease
+---
The amount of ease around your head.
diff --git a/markdown/org/docs/patterns/holmes/options/lengthratio/en.md b/markdown/org/docs/patterns/holmes/options/lengthratio/en.md
index 13659e58afc..21302e4186f 100644
--- a/markdown/org/docs/patterns/holmes/options/lengthratio/en.md
+++ b/markdown/org/docs/patterns/holmes/options/lengthratio/en.md
@@ -2,6 +2,8 @@
title: Length ratio
---
+Controls the length of the crown and ear flaps
+
## Effect of this option on the pattern

\ No newline at end of file
diff --git a/markdown/org/docs/patterns/holmes/options/visorangle/en.md b/markdown/org/docs/patterns/holmes/options/visorangle/en.md
index 73436caa07b..15603fd18ec 100644
--- a/markdown/org/docs/patterns/holmes/options/visorangle/en.md
+++ b/markdown/org/docs/patterns/holmes/options/visorangle/en.md
@@ -1,7 +1,9 @@
-***
+---
+title: Visor angle
+---
+
+The arc angle used to draft the inner curve of the visor
-## title: Visor angle
## Effect of this option on the pattern
-

diff --git a/markdown/org/docs/patterns/holmes/options/visorlength/en.md b/markdown/org/docs/patterns/holmes/options/visorlength/en.md
index 4039be79ede..0e6d48c704c 100644
--- a/markdown/org/docs/patterns/holmes/options/visorlength/en.md
+++ b/markdown/org/docs/patterns/holmes/options/visorlength/en.md
@@ -1,3 +1,6 @@
+---
+title: Visor length
+---
Controls the length of the visor
diff --git a/markdown/org/docs/patterns/holmes/options/visorwidth/en.md b/markdown/org/docs/patterns/holmes/options/visorwidth/en.md
index bc9264abb59..1993ef2a76a 100644
--- a/markdown/org/docs/patterns/holmes/options/visorwidth/en.md
+++ b/markdown/org/docs/patterns/holmes/options/visorwidth/en.md
@@ -1,9 +1,9 @@
-***
-
-## title: Visor width
+---
+title: Visor width
+---
Controls the width of the visor
-## Effect of this option on the pattern
+## Effect of this option on the pattern

diff --git a/packages/cornelius/config/index.js b/packages/cornelius/config/index.js
index b74b504ff1a..d4c1bfb3691 100644
--- a/packages/cornelius/config/index.js
+++ b/packages/cornelius/config/index.js
@@ -22,6 +22,7 @@ export default {
'legbandkeystone',
'pocket',
'pocketfacing',
+ 'zipperguard',
],
inject: {
front: 'frontpoints',
@@ -44,6 +45,7 @@ export default {
legband: ['back', 'front'],
legbandkeystone: ['back', 'front'],
waistband: ['back', 'front'],
+ zipperguard: 'front',
},
hide: ['frontpoints'],
options: {
diff --git a/packages/cornelius/src/front.js b/packages/cornelius/src/front.js
index cbbcbdf35c1..fe6bdb3ade8 100644
--- a/packages/cornelius/src/front.js
+++ b/packages/cornelius/src/front.js
@@ -44,6 +44,7 @@ export default function (part) {
.setRender(false)
paths.flyFold = new Path().move(points.pW).line(points.pZ).attr('class', 'fabric dashed')
+ store.set('flyLength', paths.flyFold.length())
store.set('frontWaistLength', paths.waistSeam.line(points.flyTop).length())
@@ -111,6 +112,7 @@ export default function (part) {
snippets.n2 = new Snippet('notch', points.pJ)
snippets.n3 = new Snippet('notch', points.pocketWaist)
snippets.n4 = new Snippet('notch', points.pocketSide)
+ snippets.n5 = new Snippet('notch', points.pZ)
// Keystone original (see above):
if (keystone) {
diff --git a/packages/cornelius/src/index.js b/packages/cornelius/src/index.js
index d2be9bab12f..12fc21769aa 100644
--- a/packages/cornelius/src/index.js
+++ b/packages/cornelius/src/index.js
@@ -9,6 +9,7 @@ import draftLegbandkeystone from './legbandkeystone'
import draftWaistband from './waistband'
import draftPocketfacing from './pocketfacing'
import draftPocket from './pocket'
+import draftZipperguard from './zipperguard'
// import draftPlacket from './placket'
// Create new design
@@ -23,6 +24,7 @@ Pattern.prototype.draftLegbandkeystone = draftLegbandkeystone
Pattern.prototype.draftWaistband = draftWaistband
Pattern.prototype.draftPocketfacing = draftPocketfacing
Pattern.prototype.draftPocket = draftPocket
+Pattern.prototype.draftZipperguard = draftZipperguard
// Pattern.prototype.draftPlacket = draftPlacket
export default Pattern
diff --git a/packages/cornelius/src/legband.js b/packages/cornelius/src/legband.js
index 1832f933d94..db265dd3e6f 100644
--- a/packages/cornelius/src/legband.js
+++ b/packages/cornelius/src/legband.js
@@ -9,7 +9,7 @@ function findR(part, height, arcLength) {
if (diff < 0) {
a = a * (0.995 + diff / 1000)
} else {
- a = a * (1.002 + diff / 1000)
+ a = a * (1.003 + diff / 1000)
}
diff = (a * height) / (1 - Math.cos(a / 2)) - arcLength
iter++
diff --git a/packages/cornelius/src/zipperguard.js b/packages/cornelius/src/zipperguard.js
new file mode 100644
index 00000000000..1a4b08fd20e
--- /dev/null
+++ b/packages/cornelius/src/zipperguard.js
@@ -0,0 +1,77 @@
+export default function (part) {
+ let { Point, Path, points, paths, Snippet, snippets, complete, sa, store, paperless, macro } =
+ part.shorthand()
+
+ const cc = 0.551915024494 // circle constant
+
+ let halfInch = store.get('halfInch')
+ let flyWidth = store.get('flyWidth') *halfInch
+ let flyLength = store.get('flyLength')
+ console.log( {flyWidth: flyWidth, flyLength: flyLength})
+
+ points.pA = new Point(0, 0)
+ points.pB = points.pA.shift(180, flyWidth)
+ points.pC = points.pB.shift(270, flyLength -flyWidth)
+ points.pD = points.pA.shift(270, flyLength)
+ points.pDcpC = points.pD.shift(180, flyWidth * cc)
+ points.pCcpD = points.pC.shift(270, flyWidth * cc)
+
+ console.log( points.pA )
+ console.log( points.pB )
+ console.log( points.pC )
+ console.log( points.pD )
+
+ paths.seam = new Path()
+ .move(points.pA)
+ .line(points.pB)
+ .line(points.pC)
+ .curve(points.pCcpD, points.pDcpC, points.pD)
+ .attr('class', 'fabric')
+
+ paths.seam2 = new Path().move(points.pD).line(points.pA).attr('class', 'fabric')
+
+ if (complete) {
+ macro('cutonfold', {
+ from: points.pD,
+ to: points.pA,
+ })
+
+ points.logo = points.pA.shiftFractionTowards(points.pC, 0.5)
+ snippets.logo = new Snippet('logo', points.logo)
+ points.title = points.logo.shift(90, 70)
+ macro('title', {
+ nr: 4,
+ at: points.title,
+ title: 'ZipperGuard',
+ })
+ points.__titleNr.attr('data-text-class', 'center')
+ points.__titleName.attr('data-text-class', 'center')
+ points.__titlePattern.attr('data-text-class', 'center')
+
+ if (sa) {
+ paths.sa = new Path()
+ .move(points.pA)
+ .line(points.pA.shift(90, sa))
+ .join(paths.seam.offset(sa))
+ .line(points.pD)
+ .attr('class', 'fabric sa')
+ }
+ }
+
+ // Paperless?
+ if (paperless) {
+ macro('hd', {
+ from: points.pB,
+ to: points.pA,
+ y: points.pA.y - sa - 15,
+ })
+ macro('vd', {
+ from: points.pA,
+ to: points.pD,
+ x: points.pA.x + 15,
+ })
+ }
+
+ return part
+ }
+
\ No newline at end of file
diff --git a/packages/hortensia/config/index.js b/packages/hortensia/config/index.js
index 49701b74233..8e4ead88ab6 100644
--- a/packages/hortensia/config/index.js
+++ b/packages/hortensia/config/index.js
@@ -29,7 +29,7 @@ export default {
pctHandleSpace: 50,
pctHandleVert: 42,
strapLength: { pct: 160, min: 75, max: 250 },
- handleWidth: { pct: 10, min: 5, max: 30 },
+ handleWidth: { pct: 8.6, min: 4, max: 25 },
size: { pct: 50, min: 20, max: 200 },
zipperSize: { dflt: '#5', list: ['#3', '#4', '#4.5', '#5', '#6', '#8', '#10', 'Invisible'] },
},
diff --git a/packages/hortensia/src/strap.js b/packages/hortensia/src/strap.js
index a475ca20668..a8c1f3a398f 100644
--- a/packages/hortensia/src/strap.js
+++ b/packages/hortensia/src/strap.js
@@ -2,7 +2,7 @@ export default function (part) {
let { store, options, Point, Path, points, paths, complete, sa, paperless, macro } =
part.shorthand()
- let w = options.handleWidth
+ let w = store.get('width') * options.handleWidth
let h = store.get('depth') * options.strapLength
if (sa > w * 0.8) {
sa = w * 0.8