Monorepos with Buck

So this is the second post about monorepos. The first post was about Google Bazel, this one is about Facebook Buck. IMHO Monorepos makes all the sense for Mobile(Ios and Android) since it's all about the same application. Of course, if you have libs that can work across multiple platforms(built-in C) or similar which make sense have generic repos outside of the app monorepo. At least one app should have a monorepo. I also believe a similar strategy can be applied for SOA and Services where we could have one monorepo per business domain. In that case, we would reduce the number of microservices drastically but still work with modules. For this post, I want to share another post. We will build a monorepo with Buck and Java. Facebook Buck is very similar to google Bazel on usage and principle. So without further due Let's get started. 

Related Reading

This blog post is also related to previous Architecture blog posts I made in regards to Microservices, SOA, and Shared Internal Libraries. I highly recommend you take a look: 

The Death of microservices - Distributed Monolith 101
http://diego-pacheco.blogspot.com/2020/05/the-death-of-microservices-distributed.htmlLondon Meetup - The Death of microservices VIDEO
https://www.youtube.com/watch?v=9jjrFBraVMcShared Libraries Trap
http://diego-pacheco.blogspot.com/2020/08/shared-libraries-trap.htmlSidecar Pattern
http://diego-pacheco.blogspot.com/2020/07/sidecar-pattern.htmlDouble Down on Service Orientation
http://diego-pacheco.blogspot.com/2020/07/double-down-on-service-orientation.html

The Video

The Code

https://github.com/diegopacheco/java-pocs/tree/master/pocs/buck-monorepo-java


Cheers,

Diego Pacheco

Popular posts from this blog

Kafka Streams with Java 15

Rust and Java Interoperability

HMAC in Java