All-grain Homebrew Beer Recipes | Page 676 | Browse 215,000+ at Brewer's Friend
Brew your best beer EVER. Start your Free Trial of Brewer's Friend today! Sign Up ×

All-grain Homebrew Beer Recipes

Page 676 of our growing list of 215,000+ all-grain homebrew beer recipes. Sort by beer style, batch size, ABV and more.

Browse All Recipes or explore by brewing method: All-grain | Extract | BIAB | Partial Mash

Title Style Size OG FG ABV IBU Color Views Brewed Rating
Bare Milk Stout Sweet Stout 10 Gallons 1.072 1.024 6.24 32 40 °L
1.3K 2
Rage Against The Machinehead Czech Pale Lager 100 Gallons 1.071 1.017 7.1 71.3 4.87 °L
1.3K 0
King Kong Imperial Rye IPA Imperial IPA 27 Litres 1.105 1.023 10.69 139.61 21.04 °L
1.3K 0
Red Wheat Weizen/Weissbier 5.5 Gallons 1.056 1.014 5.51 16.4 5.55 °L
1.3K 1
HOPCERATOPS American Pale Ale 5.5 Gallons 1.081 1.015 8.55 0 12.83 °L
1.3K 0
Argentine Blond Blonde Ale 5 Gallons 1.057 1.014 5.6 24.47 6 °L
1.3K 0
Derrick's Amazing Stout American Stout 5.2 Gallons 1.069 1.019 6.54 70.03 40 °L
1.3K 0
The Baby Brewnette Old Ale 5 Gallons 1.068 1.016 6.72 44.6 16.42 °L
1.3K 0
Keeper Best Bitter 5.25 Gallons 1.047 1.014 4.27 29.91 7.4 °L
1.3K 0
Sour Ale - Honeysuckle + Spruce Mixed-Fermentation Sour Beer 2 Gallons 1.061 1.017 5.83 12.78 3.87 °L
1.3K 1
Transporter English Porter 50 Litres 1.048 1.013 4.53 28.1 21.2 °L
1.3K 2
East Jesus Nowhere American Strong Ale 6 Gallons 1.087 1.019 8.85 74.54 17.05 °L
1.3K 0
Sorachi Sour American Pale Ale 3 Gallons 1.056 1.012 5.87 39.88 5.71 °L
1.3K 0
Mo' SMaSH Beer American Pale Ale 5.5 Gallons 1.048 1.01 5.08 51.91 5.57 °L
1.3K 0
DDH Fool's Errand IPA American IPA 45 Litres 1.07 1.016 7.05 103.75 5.05 °L
1.3K 0
Ringwood XXXX Porter English Porter 5 Gallons 1.05 1.014 4.7 30.79 25.86 °L
1.3K 0
Brett IPA Brett Beer 5.5 Gallons 1.053 1.01 5.73 56.13 4.52 °L
1.3K 2
Holiday Cheer Holiday/Winter Special Spiced Beer 5.5 Gallons 1.061 1.013 6.21 39.82 12.82 °L
1.3K 1
Spiced Pumpkin Porter American Porter 5.5 Gallons 1.053 1.013 5.12 40.46 36.51 °L
1.3K 1
Munich Dunkel 2 Munich Dunkel 19.5 Litres 1.044 1.012 4.29 24.2 15.92 °L
1.3K 1

Defer( function () { $(document).ready(function() { if ( ! document.cookie.match(/^(.*;)?\s*bf_adfpv_v1\s*=\s*[^;]+(.*)?$/) ) { var date = new Date(); var now = new Date(); date.setTime(date.getTime()+(10*365*24*60*60*1000)); var expires = "; expires="+date.toGMTString(); document.cookie = "bf_adfpv_v1="+now.toGMTString()+expires+"; path=/"; } else { // Initialize AdSense (adsbygoogle = window.adsbygoogle || []); // Affiliate ad override configuration from PHP var affiliateOverrides = {"top-leaderboard-ad":{"total_percentage":25,"options":[{"name":"House Ad","weight":1,"href":"\/homebrew\/signup","img":"\/homebrew\/images\/houseads_20211207\/brew20_upgrade\/webp\/810X100.webp","width":810,"height":100}]},"inline-unit-ad":{"total_percentage":25,"options":[{"name":"House Ad","weight":1,"href":"\/homebrew\/signup","img":"\/homebrew\/images\/houseads_20211207\/brew20_upgrade\/webp\/810X100.webp","width":810,"height":100}]},"sidebar-block-1-ad":{"total_percentage":25,"options":[{"name":"House Ad","weight":1,"href":"\/homebrew\/signup","img":"\/homebrew\/images\/houseads_20211207\/brew20_upgrade\/webp\/300x250.webp","width":300,"height":250}]}}; // Process each potential ad override if (affiliateOverrides && Object.keys(affiliateOverrides).length > 0) { Object.keys(affiliateOverrides).forEach(function(adSlotId) { var override = affiliateOverrides[adSlotId]; var adElement = document.getElementById(adSlotId); // Check if ad exists and should be replaced based on total percentage if (adElement && override.options && override.options.length > 0 && (Math.random() * 100 < override.total_percentage)) { // Choose an option based on weights var option = chooseWeightedOption(override.options); // Build affiliate ad HTML var style = option.style || ''; if (option.width && option.height) { style += (style ? '; ' : '') + 'max-width:100%;'; } var attributes = ''; if (option.target) attributes += ' target="' + option.target + '"'; if (option.rel) attributes += ' rel="' + option.rel + '"'; var affiliateAdHtml = '
' + '' + '' + '
'; // Replace the AdSense container with affiliate ad $(adElement).closest('ins.adsbygoogle').replaceWith(affiliateAdHtml); } }); } // Helper function to select a weighted random option function chooseWeightedOption(options) { if (!options || options.length === 0) { // This case implies an issue with how options are passed or an empty configuration. // Returning undefined is safer than the original's options[0] which would error. return undefined; } var eligibleOptions = []; var totalPositiveWeight = 0; // First pass: Collect options with strictly positive weights and sum these weights. for (var i = 0; i < options.length; i++) { var option = options[i]; // Ensure weight is treated as a number; default undefined/non-numeric to 0. var weight = (typeof option.weight === 'number') ? option.weight : 0; if (weight > 0) { eligibleOptions.push(option); totalPositiveWeight += weight; } } if (totalPositiveWeight > 0) { // If there are options with positive weights, choose from them. var randomValue = Math.random() * totalPositiveWeight; var cumulativeWeight = 0; for (var j = 0; j < eligibleOptions.length; j++) { // eligibleOptions[j].weight is guaranteed to be > 0 here. cumulativeWeight += eligibleOptions[j].weight; if (randomValue <= cumulativeWeight) { return eligibleOptions[j]; } } // Fallback for rare floating-point precision issues or if randomValue is exactly totalPositiveWeight. // Returning the last eligible option is a robust choice here. return eligibleOptions[eligibleOptions.length - 1]; } else { // No options with positive weight were found. // This means all original options had weights <= 0 (e.g., all zeros or empty list of positive weights). // In this scenario, pick one randomly from the original 'options' list, // giving all of them an equal chance. return options[Math.floor(Math.random() * options.length)]; } } // Initialize all remaining AdSense ads $("ins.adsbygoogle").each(function() { $("(adsbygoogle = window.adsbygoogle || []).push({})").insertAfter($(this)); }); var js = document.createElement("script"); js.type = "text/javascript"; js.async = true; js.src = "https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"; document.body.appendChild(js); } }); });