Tutorials/Villager farming

Purpose
Farming villagers can be beneficial for a lot of reasons. If the player has a villager trading hall, then the player will need to fill it with villagers and replace the ones that the player discards. It is difficult to do this through kidnapping villagers alone, so having an artificial breeder can be very helpful.

Another use is for an iron golem farm as they will only work with a certain number of villagers (10 per golem). For example, if the player wanted to be able to store ten golems in the same village at the same time, the player will need 100 villagers. That is a lot of villagers, and it is only possible in the practical sense if the player builds a villager breeder beforehand.

Mechanics
Unlike for other breedable mobs, villager breeding cannot be forced. However, the player can provide for ideal accommodations to make the process efficient. The decision for a villager to show heart particles depends on how “willing” a villager is to mate. If two villagers nearby are willing at the same time, they will spawn a baby villager in between them, like other animals. There are many factors of willingness, but it most importantly depends on the food that the player feeds the parents. To feed villagers, the player must throw the food to them, and let them obtain it in their inventory. Below is a table that tells the player approximately how much food they must give to a villager before they are willing.

Willingness can be increased if the player trades with the villagers. Also, a farmer villager will throw excess food to other villagers. So, if the farmer has free access to crops, and they are within range of a village, then that village will be able to support the autonomous feeding of villagers.

There are more parameters to willingness than just the food villagers have. Villagers take a census of the population of their village about every minute. They will only become willing if the population is less than 100%. This depends on the number of beds. There must be one bed for each villager. If there is an excess of beds, villager breeding will commence. However, doors aren't required for the 1.16 update.

As of the village and pillage update, villager breeding has changed. Now, the amount of villagers you want to spawn is set by how many beds are placed. Say you want 300 villagers—you need 300 beds.

An Automatic Breeder
The area around a villager breeder must be carefully scoured to ensure the breeder works correctly. The village must be small, so the player must ensure that no other villages exist within an 80-block spherical radius. No matter what the player builds, at least three villagers will be needed to initiate the process. Here are what roles they will play in a villager farm:
 * 1) Farmer - collect food from nearby crops to feed the breeder villagers, can be any brown-coated villager
 * 2) Breeder - collects food from the farmer and banging each other, they both do the breeding work
 * 3) Detector - registers the nearby beds (doors at 1.13 or earlier) at a village so that breeding can occur

In some cases, the farmer will be too busy collecting crops. If this is the case, it may take longer to get baby villagers. Increasing the amount of breedable villagers within the farm (by keeping bred babies inside), will help solving that problem as well as increase breeding speed in general.

A Manual Breeder
To make a manual breeder, you just need to build a space big enough for 3 or more beds. Then throw the food to the villagers so that they can breed.

Designs
Here are ten different designs for villager farms. They all produce an infinite number of villagers although the villagers in the third, ninth, and tenth videos require food in order to breed. (For the rest, the food is already worked into the design.) The first design has been tested in Java 1.16 pre-release 2 and works from 1.14 up. The second design does not work on Bedrock Edition. The next five designs are currently working on all platforms and versions running 1.14 or its platform equivalent. The following three no longer work due to the requirement for beds to breed villagers. The third, fourth, and fifth designs are confirmed to be working on Bedrock Edition 1.11, PS4 edition 1.9, and all other equivalent 1.14 systems.

Fizedi's Design
Works in Java 1.14.x, 1.15.x and 1.16.x

Takes advantage of game mechanic introduced in 1.14 where baby villagers really like jumping on beds. The resource pack in this video was "Faithful"

NOTE: after update 1.16.4 you need 3 villagers and a bell. (no you don't, and if you do, explain why)

ImpulseSV's Design
Works in Java 1.15.2

Jay365's Design
Works in Java 1.14 and Bedrock 1.11

Avomance’s Design
Works in updated 1.14 for Java & Bedrock 1.11.0

Yash Jethwani's Design
Works in Java 1.14.4 and Bedrock 1.14.60

Bmcdee’s Design
Working in 1.14 Java, 1.11 Bedrock

Dis_CyaN's Design
Works in 1.14.4 Java edition

The following designs are not currently working in the latest version of Minecraft, although they still work in version 1.13 and below.

Frilioth's Design
Note: as of 1.14+, the villagers that will be breeding will need to be surrounded by beds as opposed to doors. On the same level as the beds is a water source block, beneath which is a fence post surrounded by solid blocks. You then give the villagers enough food to make them willing. The baby villagers fall through the fence post and hypothetically into a water stream leading to a villager trading hall with workstations so you can pick their profession.