Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[DOC] Improve DevTools documentation (manual configuration, login, etc.) #5840

Closed
sharky98 opened this issue Apr 10, 2024 · 2 comments · Fixed by #5900
Closed

[DOC] Improve DevTools documentation (manual configuration, login, etc.) #5840

sharky98 opened this issue Apr 10, 2024 · 2 comments · Fixed by #5900
Assignees
Labels
documentation Improvements or additions to documentation
Milestone

Comments

@sharky98
Copy link
Contributor

Documentation issue

I am using a Nx monorepo workspace. I wanted to use @refinedev/devtools while keeping my workflow. The documentation make it looks that it is possible (such as tutorial manual installation section, or the development guide also).

However, I was greeted with a Could not connect to the devtools server. I was perplexed since I don't remember seeing in the docs that a server is needed, neither other devtools I used before required a separated server. Anyhow, after some deep dive the in source code and trying to search around the docs, I learned that the devtools do need a standalone server that is started by the @refinedev/cli dev command.

Since I am not using the CLI, I looked deeper in the source code to figure out how @refinedev/cli start the devtools. I was able to find out that to start manually the devtools, I need to install the internal package @refinedev/devtools-server, which provides a refine-devtools binary that can start the devtools server.

So, I ran pnpm exec refine-devtools to launch it. Refresh my frontend, open the devtools panel to be greated by a Login page!?! Nowhere in the documentation mention the needs for a login to Google or Github to be able to use the devtools. This point to me that the devtools might include some telemetry that is not documented? Or the devtools uses some kind of cloud-based storage/process to provide its features?

While searching for more information, I saw the following call made in the network of the developper tools in Chrome:

  • ws://localhost:5002/ : The devtools server is running on port 5001. Why port 5002 is needed?
  • cloud2.refine.dev: This one was not in the network tab, I had to use a network sniffer...

I was already irrated that using the devtools is so complicated to use (even if its a beta), but seeing that a Google or Github login is required for a local devtools is making me reconsider my choice of using Refine.


Also, while searching around, I found those links that bring to dead end.

  • For more detailed information an usage, refer to the [refine devtools documentation](https://refine.dev/docs/packages/devtools)
  • > 🚨 If you don't have `@refinedev/cli` installed already, you can follow the [installation guide](https://refine.dev/docs/packages/documentation/cli/#how-to-add-to-an-existing-project) to add it to your project.

Describe the thing to improve

A) Basic Usage

For the basic usage of the devtools, document that when doing the manual installation, the devtools requires a standalone server that is usually started by using the commands offered in @refinedev/cli package.

B) Usage without @refinedev/cli

For usage without @refinedev/cli, document that the standalone server can be started manually by installing the @refinedev/devtools-server package and then running pnpm exec refine-devtools (or the equivalent with npm or yarn).

C) Login with Google/Github

Explain clearly why the login is required and what information is collected, which non-local backend is used, for what an external backend is used, etc.

D) Telemetry

If required, update the telemetry page to document which data the devtools server is capturing.

Describe the solution (optional)

No response

@sharky98 sharky98 added the documentation Improvements or additions to documentation label Apr 10, 2024
@TomCaserta
Copy link

TomCaserta commented Apr 16, 2024

I'm also using Devtools in a nx monorepo. Just to note, I saw you can just run refine devtools with the CLI instead of installing @refinedev/devtools-server directly.

Of course this doesn't invalidate your other points.

@omeraplak omeraplak added this to the May Release milestone Apr 17, 2024
@aliemir
Copy link
Member

aliemir commented Apr 17, 2024

Hey @sharky98, thank you for your effort to create this issue! About the usage section and how to run it separately will be added to the docs with both alternatives from you and @TomCaserta mentioned (thank you 🙏). We'll also include a section about how devtools work and why it requires a server to operate (mentioning required ports and protocols)

About the telemetry, in Refine Devtools we do not track any telemetry data. We care a lot about privacy and we have a section about our docs on what we collect and how we collect in Refine.

The request to our backend is made for our raffle to gift Refine swag kits to our devtools users and nothing is collected with that request. Still, we apologize for leaving this part out of our docs and we'll update it accordingly and address your concerns.

I'll update here when we have any progress on the docs update 🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants