A framework agnostic pagination crate, that is especially suited for databases, collections and web pages.

Rust Docs codecov

Example

To iterate over each page:

```rust use paginate::Pages;

fn main() { let totalitems = 100; let itemsperpage = 5; let pages = Pages::new(totalitems, itemsperpage); for page in pages.into_iter() { println!("offset: {}, total: {}, start: {}, end: {}", page.offset, page.length, page.start, page.end); } } ```

To get the pagination of a specific offset: ```rust use paginate::Pages;

fn main() { let totalitems = 35; let itemsperpage = 5; let pages = Pages::new(totalitems, itemsperpage); let page = pages.with_offset(3); println!("offset: {}, total: {}, start: {}, end: {}", page.offset, page.length, page.start, page.end); } ```