Question about contributing to Brave

#1

I am looking to contribute to Brave and came across a “good first bug issue” dealing with the Brave Shield that I was thinking of tackling. That said, I am a bit confused as to the difference between the brave-browser GitHub repo and the brave-core repo. I understand that I must build the project using the “brave-browser” repo, but how do I deal with touching content (e.g. the Brave Shield) that is in the brave-core repo? Also, to which repository do I ultimately submit a pull request?

0 Likes

#2

@jc713,
Thanks for showing an interest!
As per the README files from each repo:


Make sure you read and follow the instructions in the wiki when building Brave or submitting a PR.

1 Like

#3

Thanks a ton :).

@Matchess So after I make a change to tackle an issue # in brave-browser, should I PR it to brave-browser or to brave-core?

Also, is it necessary to fork the repo or can I make branches on the main brave-browser repo?

0 Likes

#4

Hi @jc713 - dev here :slight_smile:

brave-browser is where the issues are (we have issues disabled for brave-core) and it’s also where to start. Once you do the initialization process here, it creates an instance of brave-core inside the folder you cloned to at src/brave.

As for where to PR the changes:

  • usually changes will be to brave-core. You’ll know because the files are changed inside src/brave. You’ll have to fork brave-core and then add your remote so that you can push to it.
  • it’s possible to have changes to brave-browser. If you look at the repo, it’s pretty bare. Usually, changes here involve changing the Chromium version or updating the scripts used to fetch the Chromium source and initialize brave-core. There are npm tasks though, so if you do update those, the change would be brave-browser

Hope this makes sense - let me know if you have a specific question in mind. As for developing a feature or fixing a bug, most of the time, a change is only needed in brave-core. However, there are times where the change can involve BOTH brave-browser and brave-core. In those cases, we try to make the branch name the same, so it’s easy to find

Thanks
Brian

0 Likes

#5

Hi @clifton thanks for the great follow up.

I tried cloning brave-browser the other day and ran the build instructions as listed in the documentation but the build process took over 12 hours and ultimately failed out with a fatal error due to not enough disk space (the repo grew to >100GB). I suspect this has to do with Chromium.

Is there anyway to help contribute without having to build the entire brave-browser code? Or is that the only way to help out?

0 Likes