Building in the open
We believe in giving back to the community that has given us so much. Each of these projects solved a real problem for us, and we hope they can do the same for you.
Why we contribute
Greenfossil's products are built on the shoulders of open source giants. We use Scala, MariaDB, Armeria, and countless other open source libraries every day. Contributing back is simply the right thing to do.
Open source makes our software better. Public code invites scrutiny, which drives quality. It attracts contributors who bring fresh perspectives. And it builds trust with our customers, who can see exactly how their data is handled.
We open source the tools and libraries we build when they can benefit the wider community. Not everything we write is public — some solutions are specific to our products — but we actively look for opportunities to share.
by Greenfossil Pte Ltdcase class MultipartFormData( aggMultipart: AggregatedMultipart, multipartUploadLocation: Path): def findFiles(validatorFn: String, String, MediaType, InputStream) => Boolean): Try[List[MultipartFile]] = Try: for { name <- names part <- aggMultipart.fields(name).asScala if part.filename() != null && !part.content().isEmpty } yield saveFileTo(name, part, validatorFn) .map(file => MultipartFile.of(name, part.filename(), file))
> Thorium server starting on port 8080...A microservice framework built on Armeria and Scala 3. Powers all Greenfossil web applications.
Libraries from our product development
Tools we built for our products and shared because they might be useful to others.
HtmlTags
Type-safe HTML templating for Scala.
GitHub →Data Mapping
Form binding and data validation.
GitHub →Commons JSON
Lightweight JSON processing for Scala 3.
GitHub →Commons i18n
Internationalisation for Scala applications.
GitHub →Typesafe Config Ext
Convenience extensions for LightBend Config.
GitHub →Ready to explore our code?
Visit our GitHub organisation to browse all our open source projects.