{"repo":"geirolz/fly4s","free":true,"listed":false,"github":"https://github.com/geirolz/fly4s","clone":"git clone https://github.com/geirolz/fly4s.git","description":"A lightweight, simple and functional wrapper of Flyway using cats effect.","language":"Scala","stars":70,"topics":["database-migrations","flyway","flywaydb","flyway-migrations","functional-programming","cats","cats-effect","data","database","db"],"license":"Apache-2.0","category":"databases-storage","readme_excerpt":"Fly4s A lightweight, simple and functional wrapper for Flyway using cats-effect. Compatibility matrix Fly4s Flyway Branch :---------------------------------------------------------------------: :----------: :------------------------------------------------------------: 0.x 9.x 0.x-9.x 1.x 11.x 10.x-11.x 2.x 12.x main The most famous library to handle database migrations in Java is for sure Flyway. It works very well and the community edition has a lot of features as well. But Flyway APIs are written in the standard OOP paradigm, so throwing exceptions, manually managing resources, etc... Fly4s is a lightweight, simple and functional wrapper for Flyway. The aim of Fly4s is straightforward, wrapping the Flyway APIs to guarantee referential transparency, pureness, resource handling and type safety. To achieve this goal, Fly4s use the typelevel libraries cats and cats-effect . - Getting started - Migrations files - Defining database configuration - Instantiating Fly4s - Using Fly4s - Conclusions - Useful links --- Adopters If you are using Fly4s in your company, please let me know and I'll add it to the list! It means a lot to me. Getting started Fly4s supports Scala 2.13 and 3. The first step, import the Fly4s library in our SBT project. So, add the dependency in your build.sbt file. Fly4s depends on Flyway, so we'll have access to Flyway as well Remember to also import the specific database module from Flyway https://documentation.red-gate.com/flyway/flyway-cli-and-api/supporte","default_branch":null,"files":null,"tree":[],"storefront":"/r/geirolz","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/geirolz/fly4s/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}