twenty/packages/twenty-chrome-extension
Charles Bochet 17a1760afd
Improve performance twenty orm (#6691)
## Context

As we grow, the messaging scripts are experiencing performance issues
forcing us to temporarily disable them on the cloud.
While investigating the performance, I have noticed that generating the
entity schema (for twentyORM) in the repository is taking ~500ms locally
on my Mac M2 so likely more on pods. Caching the entitySchema then!

I'm also clarifying naming around schemaVersion and cacheVersions ==>
both are renamed workspaceMetadataVersion and migrated to the workspace
table (the workspaceCacheVersion table is dropped).
2024-08-20 19:42:02 +02:00
..
public feat: iframe addition (chrome-extension) (#4418) 2024-03-15 16:36:53 +01:00
src Improve performance twenty orm (#6691) 2024-08-20 19:42:02 +02:00
.env.example 5622 add a syncemail onboarding step (#5689) 2024-06-05 18:16:53 +02:00
.eslintrc-ci.cjs chore: enable no-console eslint rule for tests and stories (#4816) 2024-04-04 18:36:39 +02:00
.eslintrc.cjs chore: add nx/project.json to twenty-chrome-extension (#5217) 2024-05-06 11:33:48 +02:00
.gitignore Closes #2413 - Building a chrome extension for twenty to store person/company data into a workspace. (#3430) 2024-02-12 12:30:23 +01:00
.prettierignore chore: add nx/project.json to twenty-chrome-extension (#5217) 2024-05-06 11:33:48 +02:00
codegen.ts 5622 add a syncemail onboarding step (#5689) 2024-06-05 18:16:53 +02:00
loading.html feat: iframe addition (chrome-extension) (#4418) 2024-03-15 16:36:53 +01:00
package.json chore: add nx/project.json to twenty-chrome-extension (#5217) 2024-05-06 11:33:48 +02:00
page-inaccessible.html feat: replace iframe with chrome sidepanel (#5197) 2024-05-21 10:39:43 +02:00
project.json fix: user has to login every time chrome sidepanel is opened (#5544) 2024-05-30 12:58:45 +02:00
README.md fix: fix root start script (#5032) 2024-04-19 18:28:02 +02:00
sidepanel.html feat: replace iframe with chrome sidepanel (#5197) 2024-05-21 10:39:43 +02:00
tsconfig.app.json chore: add nx/project.json to twenty-chrome-extension (#5217) 2024-05-06 11:33:48 +02:00
tsconfig.json chore: add nx/project.json to twenty-chrome-extension (#5217) 2024-05-06 11:33:48 +02:00
tsconfig.spec.json chore: add nx/project.json to twenty-chrome-extension (#5217) 2024-05-06 11:33:48 +02:00
vite.config.ts Fix vite.config duplicate cache configuration 2024-05-21 20:36:25 +02:00

Twenty Chrome Extension.

This extension allows you to save company and people information to your twenty workspace directly from LinkedIn.

To install the extension in development mode with hmr (hot module reload), follow these steps.

  • STEP 1: Clone the repository and run yarn install in the root directory.

  • STEP 2: Once the dependencies installation succeeds, create a file with env variables by executing the following command in the root directory.

cp ./packages/twenty-chrome-extension/.env.example ./packages/twenty-chrome-extension/.env
  • STEP 3 (optional): Update values of the environment variables to match those of your instance for twenty-front and twenty-server. If you want to work on your local machine with the default setup from Twenty Docs, replace everything in the .env file with the following.
VITE_SERVER_BASE_URL=http://localhost:3000
VITE_FRONT_BASE_URL=http://localhost:3001
  • STEP 4: Now, execute the following command in the root directory to start up the development server on Port 3002. This will create a dist folder in twenty-chrome-extension.
npx nx start twenty-chrome-extension
  • STEP 5: Open Google Chrome and head to the extensions page by typing chrome://extensions in the address bar.

  • STEP 6: Turn on the Developer mode from the top-right corner and click Load unpacked.

  • STEP 7: Select the dist folder from twenty-chrome-extension.

  • STEP 8: This opens up the options page, where you must enter your API key.

  • STEP 9: Reload any LinkedIn page that you opened before installing the extension for seamless experience.

  • STEP 10: Visit any individual or company profile on LinkedIn and click the Add to Twenty button to test.

To install the extension in production mode without hmr (hot module reload), replace the command in STEP FOUR with npx nx build twenty-chrome-extension. You may or may not want to execute STEP THREE based on your requirements.