Skip to content

Repository files navigation

Hasadna monorepo

CircleCI

Installation

Install Bazel. That's it!

Build & Test

  • Build everything: ./compile.sh build
  • Run all tests: ./compile.sh test

About monorepos

A monorepo is a software development approach where all code is stored in a single repository. Some things are easier to do in a monorepo, such as sharing a proto file across front-end and backend, some things are harder, such as per-repo control over collaborators, email notifications, commit history etc.

Some monorepo etiquette:

  1. Don't store large files in the repo (>500kb), or many small files. Until we figure out a way to deal with them, you can store them in a different repo.
  2. If you use code belonging to another project, talk to the people of that project about it. If you don't, they might accidentally break your code.
  3. If you change code common to multiple projects, do it thoughfully.
  4. Kindly provide a LICENSE file for your project.

Some good reads about the monorepo approach:

Platforms

While Bazel supports Linux, Mac and Windows, this repo supports Linux and Mac. If you're on Windows 10, you can use Windows Subsystem for Linux (WSL). It gives you a Linux environment, without the overhead of a virtual machine.

Installing Windows Subsystem for Linux:

Please follow the guide. Note: You may have to do a Windows upgrade. If you need it, it will ask for it at the beginning of the installation.

Contributing

You're welcome to contribute and in doing so, learn these technologies. You can have a look at the issues list, or at the project milestones.

Happy coding!

About

No description, website, or topics provided.

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages