Brigid Top (EN)

About Brigid Top (EN)

The Brigid Top by Mrs. FunnyValentine is a seamless, top-down summer tank featuring delicate lace straps and a softly rounded hem. The design is knitted in Lang Yarns Ortica (105 m per 50 g), a breathable cotton–ramie blend perfect for warm-weather garments. Worked on 3.75 mm (US 5) needles, the top achieves a gauge of 20 sts × 28 rows = 10 cm for a smooth, lightweight fabric.

Available in sizes XS–5XL, the top offers a finished chest circumference of 80–160 cm with 5 cm of positive ease for comfortable wear. The lace panels along the neckline and sides add feminine detail, while the stockinette body creates clean lines and elegant simplicity. A beautiful, airy knit that is enjoyable to make and effortless to style.

Designer

Craft

Stitch Pattern & Technique

, , ,

Difficulty Level

Clothing Size (Adult)

, , , , , , , ,

Language

Needle / Hook Size

Meterage (per 50 g)

Gauge

Collection

,

About this Pattern

The Brigid Top by Mrs. FunnyValentine is a seamless, feminine summer knit inspired by Brigid, the Celtic goddess of fire, creativity and transformation. Designed to embody strength, softness and fluid movement, this sleeveless top combines delicate lace details with clean, modern shaping. Worked from the top down, the construction allows the straps, neckline and body to flow naturally into one another for a flattering and comfortable fit.


The top is knitted in Lang Yarns Ortica, a worsted-weight blend of 82% cotton and 18% ramie, offering a breathable structure and a lightly textured, natural feel. Each 50 g ball contains 105 m, giving a running length of 105 m per 50 g. Depending on size, the pattern requires 319–792 m or 4–8 balls of yarn .


The design is available in sizes XS–5XL, with a finished chest circumference of 80–160 cm, including 5 cm of positive ease. The armhole depth ranges from 21.5–25 cm, while the length from underarm to hem measures 29.5–38 cm, depending on the size chosen . These measurements create a lightly fitted silhouette with gentle drape and shape.


The Brigid Top is worked using 3.75 mm (US 5) needles, or the size needed to obtain gauge. The blocked gauge is 20 sts × 28 rows = 10 cm in stockinette stitch . This ensures a smooth fabric that highlights the lace panels running along the straps and neckline.


The top begins with two individually knitted front straps, followed by the back straps, which are picked up from the cast-on edges. Once all four straps are completed, they are joined and the work continues in the round. After shaping the lace panels at the sides, the stockinette body flows into a beautifully rounded hem created with German short rows. This shaping adds fluid movement and a subtle, flattering curve to the finished garment.


Elegant yet easy to wear, the Brigid Top blends comfort and sophistication in a piece perfect for warm days or layered under light clothing. Its lace accents and sculpted hem make it a standout summer knit, suitable for intermediate knitters who enjoy seamless construction with thoughtful detail.

Meet

MrsFunnyValentine

I’m Miriam, the mind and heart behind MrsFunnyValentine. I design feminine, minimalist knitwear with soft aesthetic but bold details. My patterns are inspired by strong women and made for busy lives that crave beauty, calm and confidence. I learned to knit at age 10 from my grandmother, and it has been my creative anchor ever since.

Related patterns

Other patterns you might enjoy.

Hending Sweater (EN)

Knitter from Iceland

Bichon Dress (EN)

Créadia Studio

Brotabrot Sweater (EN)

Knitter from Iceland

Hraunfossar Sweater (EN)

Knitter from Iceland

Chloé Shirt (EN)

MrsFunnyValentine

Sakura Camisole (EN)

Dorte Bak Knitting

Bloom Sweater (EN)

YarnS Design

Sløjfefin Sweater (EN)

Dorte Bak Knitting
<?php
/**
 * Mini-cart
 *
 * Contains the markup for the mini-cart, used by the cart widget.
 *
 * This template can be overridden by copying it to yourtheme/woocommerce/cart/mini-cart.php.
 *
 * HOWEVER, on occasion WooCommerce will need to update template files and you
 * (the theme developer) will need to copy the new files to your theme to
 * maintain compatibility. We try to do this as little as possible, but it does
 * happen. When this occurs the version of the template file will be bumped and
 * the readme will list any important changes.
 *
 * @see              https://woocommerce.com/document/template-structure/
 * @package          WooCommerce\Templates
 * @version          9.5.0
 * @flatsome-version 3.19.8
 */

defined( 'ABSPATH' ) || exit;

do_action( 'woocommerce_before_mini_cart' ); ?>

<?php if ( WC()->cart && ! WC()->cart->is_empty() ) : ?>

	<ul class="woocommerce-mini-cart cart_list product_list_widget <?php echo esc_attr( $args['list_class'] ); ?>">
		<?php
		do_action( 'woocommerce_before_mini_cart_contents' );

		foreach ( WC()->cart->get_cart() as $cart_item_key => $cart_item ) {
			$_product   = apply_filters( 'woocommerce_cart_item_product', $cart_item['data'], $cart_item, $cart_item_key );
			$product_id = apply_filters( 'woocommerce_cart_item_product_id', $cart_item['product_id'], $cart_item, $cart_item_key );

			if ( $_product && $_product->exists() && $cart_item['quantity'] > 0 && apply_filters( 'woocommerce_widget_cart_item_visible', true, $cart_item, $cart_item_key ) ) {
				/**
				 * This filter is documented in woocommerce/templates/cart/cart.php.
				*
				* @since 2.1.0
				*/
				$product_name      = apply_filters( 'woocommerce_cart_item_name', $_product->get_name(), $cart_item, $cart_item_key );
				$thumbnail         = apply_filters( 'woocommerce_cart_item_thumbnail', $_product->get_image(), $cart_item, $cart_item_key );
				$product_price     = apply_filters( 'woocommerce_cart_item_price', WC()->cart->get_product_price( $_product ), $cart_item, $cart_item_key );
				$product_permalink = apply_filters( 'woocommerce_cart_item_permalink', $_product->is_visible() ? $_product->get_permalink( $cart_item ) : '', $cart_item, $cart_item_key );
				?>
				<li class="woocommerce-mini-cart-item <?php echo esc_attr( apply_filters( 'woocommerce_mini_cart_item_class', 'mini_cart_item', $cart_item, $cart_item_key ) ); ?>">
					<?php
					echo apply_filters( // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
						'woocommerce_cart_item_remove_link',
						sprintf(
							'<a href="%s" class="remove remove_from_cart_button" aria-label="%s" data-product_id="%s" data-cart_item_key="%s" data-product_sku="%s" data-success_message="%s">&times;</a>',
							esc_url( wc_get_cart_remove_url( $cart_item_key ) ),
							/* translators: %s is the product name */
							esc_attr( sprintf( __( 'Remove %s from cart', 'woocommerce' ), wp_strip_all_tags( $product_name ) ) ),
							esc_attr( $product_id ),
							esc_attr( $cart_item_key ),
							esc_attr( $_product->get_sku() ),
							/* translators: %s is the product name */
							esc_attr( sprintf( __( '&ldquo;%s&rdquo; has been removed from your cart', 'woocommerce' ), wp_strip_all_tags( $product_name ) ) )
						),
						$cart_item_key
					);
					?>
					<?php if ( empty( $product_permalink ) ) : ?>
						<?php echo $thumbnail . wp_kses_post( $product_name ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?>
					<?php else : ?>
						<a href="<?php echo esc_url( $product_permalink ); ?>">
							<?php echo $thumbnail . wp_kses_post( $product_name ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?>
						</a>
					<?php endif; ?>
					<?php echo wc_get_formatted_cart_item_data( $cart_item ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?>
					<?php echo apply_filters( 'woocommerce_widget_cart_item_quantity', '<span class="quantity">' . sprintf( '%s &times; %s', $cart_item['quantity'], $product_price ) . '</span>', $cart_item, $cart_item_key ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?>
				</li>
				<?php
			}
		}

		do_action( 'woocommerce_mini_cart_contents' );
		?>
	</ul>

	<?php do_action( 'flatsome_after_mini_cart_contents' ); ?>

	<div class="ux-mini-cart-footer">
		<?php do_action( 'flatsome_before_mini_cart_total' ); ?>

		<p class="woocommerce-mini-cart__total total">
			<?php
			/**
			 * Hook: woocommerce_widget_shopping_cart_total.
			*
			* @hooked woocommerce_widget_shopping_cart_subtotal - 10
			*/
			do_action( 'woocommerce_widget_shopping_cart_total' );
			?>
		</p>

		<?php do_action( 'woocommerce_widget_shopping_cart_before_buttons' ); ?>

		<p class="woocommerce-mini-cart__buttons buttons"><?php do_action( 'woocommerce_widget_shopping_cart_buttons' ); ?></p>

		<?php do_action( 'woocommerce_widget_shopping_cart_after_buttons' ); ?>
	</div>

<?php else : ?>

	<div class="ux-mini-cart-empty flex flex-row-col text-center pt pb">
		<?php do_action( 'flatsome_before_mini_cart_empty_message' ); ?>
		<p class="woocommerce-mini-cart__empty-message empty"><?php esc_html_e( 'No products in the cart.', 'woocommerce' ); ?></p>
		<?php do_action( 'flatsome_after_mini_cart_empty_message' ); ?>
	</div>

<?php endif; ?>

<?php do_action( 'woocommerce_after_mini_cart' ); ?>