PR, если нужна отдельная библиотека, то зачем изобретать велосипед? В интернете море разных библиотек, выбирай любую