I built a little 3-axis desktop mill about a year ago, which functions well, but I really needed to make some improvements to turn it into a workhorse machine. First off, I had built flexures into the frame to support one of the Y-axis rails. While the flexures functioned properly (not overconstraining the Y-axis table), they did not have much strength, and broke off when I disassembled the machine.
So, to make some better flexures!
Step 1: What Would I Want a Flexure For?
Each of the three carriages on my mill bear on two rails. The carriage can move in a total of 6 possible directions (6 degrees of freedom), but I only want the carriage to move in one direction. So I have to constrain it in exactly 5 directions. If I constrain it in more than 5, the carriage will likely jam if the rails are even slightly misaligned with respect to the other. The first rail is easy - it is fixed. This one rail constrains the carriage in 4 directions - translation in X and Z as well as rotation about X and Z. So I only need the second rail to constrain the carriage in rotation about Y without constraining it in any other direction.
This is where the flexure helps - it is stiff in one direction (preventing rotation of the carriage about Y) but flexible in the orthogonal direction (allowing for misalignment between the two rails.