# Käse
Käse is an Elixir library for converting strings between various casing styles, including camelCase, snake_case, kebab-case, PascalCase, and more. Whether you're working with data from different sources or simply want to format strings in a specific way, Käse provides a straightforward API to handle these conversions.
## Installation
To use Käse in your Elixir project, add it to your `mix.exs` file:
```elixir
defp deps do
[
{:kase, "~> 0.1.0"}
]
end
```
Then run the following command to install the dependency:
```bash
mix deps.get
```
## Usage
You can convert strings between different casing styles using the `Kase.convert/2` function. Here are some examples:
### Convert to camelCase
```elixir
Kase.convert("this_is_an_example", :camel_case)
# => "thisIsAnExample"
Kase.convert("ThisIsPascalCase", :camel_case)
# => "thisIsPascalCase"
```
### Convert to snake_case
```elixir
Kase.convert("thisIsAnExample", :snake_case)
# => "this_is_an_example"
Kase.convert("ThisIsPascalCase", :snake_case)
# => "this_is_pascal_case"
```
### Convert to kebab-case
```elixir
Kase.convert("thisIsAnExample", :kebab_case)
# => "this-is-an-example"
Kase.convert("ThisIsPascalCase", :kebab_case)
# => "this-is-pascal-case"
```
### Convert to PascalCase
```elixir
Kase.convert("this_is_an_example", :pascal_case)
# => "ThisIsAnExample"
Kase.convert("this-is-an-example", :pascal_case)
# => "ThisIsAnExample"
```
### Convert to upper_case_snake_case
```elixir
Kase.convert("thisIsAnExample", :upper_case_snake_case)
# => "THIS_IS_AN_EXAMPLE"
```
### Convert to train-case
```elixir
Kase.convert("thisIsAnExample", :train_case)
# => "This-Is-An-Example"
```
### Convert to dot.case
```elixir
Kase.convert("thisIsAnExample", :dot_case)
# => "this.is.an.example"
```
### Convert to cobol-case
```elixir
Kase.convert("thisIsAnExample", :cobol_case)
# => "THIS-IS-AN-EXAMPLE"
```
### Convert to humanized case
```elixir
Kase.convert("this_is_an_example", :humanized_case)
# => "This is an example"
```
## Contributing
Contributions are welcome! If you have suggestions for improvements or find bugs, please open an issue or submit a pull request.
1. Fork the project
2. Create your feature branch: `git checkout -b feature/my-new-feature`
3. Commit your changes: `git commit -m 'Add some feature'`
4. Push to the branch: `git push origin feature/my-new-feature`
5. Open a pull request
## License
Käse is released under the MIT License. See the [LICENSE](LICENSE) file for more information.
## Acknowledgments
Thank you for using Käse! We hope it helps make your string handling in Elixir easier and more enjoyable.