a generic server library