README.md

# Magik

Magik brings magics to your project that helps to make your life easier

[Document here](https://onpointvn.github.io/magik/readme.html)

## Here are some magics in the `Magik` toolbox

### 1. `Magik.Paginator`
Help you to query by page and size with support for both counting and no counting total page (simple load more function)

### 2. `Magik.JsonView`
Render json with custom field and relationship that helps you to reuse view and build consistent json structure

### 3. `Magik.ExcelView`
Help you to render excel data with format supported


### 4. `Magik.EctoEnum`
Build enum module faster, shorter and can use directly in schema definition

### 5. `Magik.PowerUpRepo`
Add some handy method to your Repo module that make your Repo module more powerful

### 6. `Magik.TelegramNoti`
Provide helper function watch exception, format message and send notification to a Telegram conversation

### 7. `Magik.Params`
Provide helper function to process params like `scrub_params` and `clean_nil` and `cast` params with given schema

### 8. `Magik.Contract`
Provide helper function to validate data structure and value, it does not cast value, only validate data

### 9. `Magik.Schema`
Instruction to define schema that used with `Magik.Params.cast/2` and `Magik.Contract.validate/2`