missing instructions on how to develop with this extension?!
aspiers opened this issue · 1 comments
Hi there,
Thanks a lot for this really impressive looking extension! I say "impressive looking" rather than just "impressive" because unfortunately I have not been able to use it yet. On the first attempt I immediately ran into #250. So then I thought, OK maybe I can fix this myself, so I forked the repo, and cloned it locally. What next though? The README says that I can install from the provided build.zip
:
Use
src/extension/build/build.zip
for manual installation in [Developer mode] (https://developer.chrome.com/extensions/faq#faq-dev-01). Turn on 'Allow access to file URLs' in extension details page if testing locally.
but as far as I can see, it doesn't give any explanation at all about how to build and test Reactime directly from the source.
I find this fairly astonishing, because clearly a great deal of effort has gone into trying to make it as easy as possible for developers to contribute. Indeed, the Developer README starts by saying
Our mission at Reactime is to maintain and iterate constantly, but never at the expense of future developers.
We know how hard it is to quickly get up to speed and onboard in a new codebase.
So, here are some helpful pointers to help you hit the ground running. 🏃🏾💨
and then goes on to provide gloriously helpful descriptions of the internals, which is absolutely fantastic!
But unfortunately all this effort seems mostly neutered by two crucial but simple and easily fixed flaws:
- There is no link from the main README to the developer README, so I would expect that most developers will simply not even notice it exists.
- There is no explanation of how to test any modifications to the source.
The first point is trivially fixed, so I guess I will submit a PR.
The second point seems a lot less obvious, but I think I have found the solution:
- If you have already installed Reactime from the Chrome Web Store, disable or uninstall it.
- Run
yarn
to install all dependencies. (I guessed this is preferred toyarn
due to the presence of ayarn.lock
file and the absence of apackage-lock.json
file. I also found thatnpm i
actually failed the first time for me.) - Run
yarn dev
. I guessed this by spotting it inpackage.json
, and I can see that the--watch
parameter there means that as soon as any source files are modified, it automatically rebuilds the webpack bundles undersrc/extension/build
. - Go to chrome://extensions
- Ensure Developer mode is enabled
- Click
Load unpacked
- Select the
src/extension/build
directory
This seems to be working for me, so it would be great if someone could confirm that it's the correct procedure.