87
3
3
1
2
1
1
9
Version: 1.21+
Far from a village, build a 9x9x3 square
On one side of the square put two composter 1 block away to the corners.
Looking to the opposite side, place two water blocks in the middle of the left and right walls.
On the opposite side of the composters, make a 2 block hole and build a 4x5 room next to the main square.
Inside the room place 3 beds facing to the main square with 1 block distance to the 2 block hole.
Between the room and the main square make a 3 block deep hole.
Inside the 3 block deep hole make a 2 height 5 deep tunnel facing the beds to go outside the room.
At the 5th block create a stair-style upward hole to leave the room.
Opposite to the stairs, dig 1 block deep and place a redstone torch.
Place a block on top of the torch and make some railway with a few powered-rails over the torch-block. Here a minecart will we powered out and grab a villager out of the hole.
Place a dispenser facing the powered-rail with a block and a button, fill the dispenser with minecarts, when using the button, a minecart will be powered out and carry a villager from the hole.
Cover the hole with a glass in order to block the entrance of 1-block mobs.
Place two closed trapdoors between the room and the main square 2 block hole. This will prevent the adult villagers from falling but allow the baby villagers.
Under the floor trapdoor and over the dirt, place water in order to create current to the railway system.
Farm all the dirt blocks inside the main square and lure two villagers inside (using a boat or any other transportation type), the villagers should automatically get the farmer work from the two composters.
Once the villagers gather enough food (its possible to throw them any crop to accelerate the process), they'll start breeding.
At night, the villagers will try to go to the bed, the baby villagers will fall into the water current pit and go into the railway system. When in need of a villager, click the button and a minecart will appear and carry the villager.