elfin is a tool that makes browser automation simple
, designed in an intuitively simple way that allows you to easily customize your own browser scripts, and execute the scripts in extension anytime and anywhere.
- Implemented the editing interface of the drag and drop node mode with
React-flow
. - Leveraged
Firestore
for script data storage, enablingsynchronization
of content between theweb application
andextension
, ensuring consistent displays across platforms. - Integrated
Chrome extension API
to inject transformed scripts into targeted browsers for seamless execution. - Complete email registration login and Google account login with
Firebase Auth
. - Utilized
Zustand
for global state management.
- Login with your Google Account or create a new account if you don't have one.
- After login there will be three templates at the top of the page.
- If you haven't installed the elfin extension, download it from the Chrome Web Store.
- Once the extension is installed, go back to the page of elfin, open the extension, and click on "connect", you will see three templates on the extension synchronously.
- Try to click the trigger of google search script in extension, it should start a google search automatically, if it doesn't respond, please reload the page once to connect the extension with window.
- If you want to change the content of the search, click on the google search script and change the content of the input text to the keyword you want to search, or you can use the extension variable and fill it in the extension directly.
- Click on "Add script" in the bottom half of the page.
- Click on script name to enter the editing page.
- Change the name of the script to what you want.
- Drag the nodes from the left side and connect them in the order you want.
- Fill in the nodes with XPath and the required content.
- Press the Save button in the upper right.
- Open the extension and trigger it!
- If the extension does not respond when triggered, try
reload the page
to re-establish the connection between the extension and the window.
- Record the execution of the script, displayed as a log
- Pin Script Function
- Limit and optimise node connections
- Add Select Element functionality to the extension