typelevel / general

Repository for general Typelevel information, activity and issues
19 stars 8 forks source link

Application for membership - 'uniform' a library for the construction of complex user journeys #109

Closed hmrclt closed 3 years ago

hmrclt commented 3 years ago

We're hoping you will consider our library 'uniform' for acceptance into the typelevel incubation program -

https://github.com/ltbs/uniform-scala/

The library allows the expression of a complex user journey in a scala eDSL (normally within a for comprehension). This journey can then be interpreted into a concrete representation (typically a web application with a series of forms).

You can think of this as a functional equivalent of Spring Web Flows (but without being coupled necessarily to web apps, and with some other tricks like inference of the forms themselves).

The library is currently used inside HMRC web applications for multiple-stage forms but we would like to increase the exposure of the library and ideally get contributions from the wider community.

rossabaker commented 3 years ago

Thanks, @hmrclt! It looks interesting. I'll walk through the membership checklist:

There must be a consensus amongst the project's stakeholders that they want to join Typelevel.

Are there other stakeholders? You're the most active contributor, but the project is under a different name.

The project must be willing to support the Typelevel code of conduct or something equivalent.

I don't see a code of conduct yet. Just adding a CODE_OF_CONDUCT.md to the root of the repo is a marker. It can be as simple as this template

The project should be aiming to promote pure, typeful, idiomatic functional programming in Scala.

If the primary output of the project is software artefacts then it should aim to complement them with accessible, idiomatic documentation.

✅ It's already better than many projects!

hmrclt commented 3 years ago

Thanks for getting back so quickly @rossabaker Apologies for the confusion. I've a few different github accounts, @ltbs and @hmrclt are both mine.

I've emailed the other major stakeholders and have written confirmation that they are happy with the typelevel code of conduct and that they want the project to join typelevel. I can forward that on to you if you like?

I've added in the code of conduct.

The docs are out of date, and they describe the previous incarnation of the project (v4), I need to update them as the syntax is now much easier to work with.

The project is attempting to be current and functional, but at present we don't have scala 3 support though I'm working on that.

rossabaker commented 3 years ago

We typically leave these open for a week so others have time to comment and ask questions, but it looks good to me. :+1:

rossabaker commented 3 years ago

Aside on the license: I don't think we have an approved set as an organization, and anything that's good enough for OSI is good enough for me. But the GPL-3 is almost certainly going to inhibit adoption of Uniform, and I can't recall another Typelevel project that uses the GPL.

I don't think that's a membership issue, but more advice to set it up for greater success.

hmrclt commented 3 years ago

Thanks Ross. We've changed it over to the Apache-2 license.

rossabaker commented 3 years ago

Alright, welcome aboard! The linked PR will get it added to the website.