  Network structure is often considered one of the most important features of a
network, and various models exist to generate graphs having one of the most
studied types of structures, such as blocks/communities or spatial structures.
In this article, we introduce a framework for the generation of random graphs
with a controlled size -- number of nodes, edges -- and a customizable
structure, beyond blocks and spatial ones, based on node-pair rank and a
tunable probability function allowing to control the amount of randomness. We
introduce a structure zoo -- a collection of original network structures -- and
conduct experiments on the small-world properties of networks generated by
those structures. Finally, we introduce an implementation as a Python library
named Structify-net.
