page_actions_attacher
v1.12.1
Published
🤖 tampermonkey userscript to accelerate frontend development: Fill forms effortlessly in React apps, featuring custom actions and dynamic keybindings.
Downloads
5
Maintainers
Readme
:trumpet: Overview
This package is a tampermonkey helper that enables easy addition of custom actions to specific pages, making it particularly valuable for simplifying form-filling tasks.
Instead of manually filling out a four-step website form to view your current working page, why not simplify the process by clicking a button that completes it for you? 🤖
:question: Motivation
My main motivation for building this tool was to save time when filling out forms in my React applications during the development phase.
- It's important to note that this tool does not aim (or would be able) to replace end-to-end testing tools. Instead, it serves as a more efficient and faster option specifically for development phase.
- I have explored other solutions such as Cypress and Selenium, but they didn't meet my needs for:
- Keyboard shortcuts;
- Synchronization between multiple developers;
- Randomly generated data, particularly unique Brazilian person and company numbers;
- Allow me to fill the form while inside my vscode debugger chrome instance.
:dart: Features
✔️ atach a floating buttom with custom actions (ctrl+space
to toogle it);
✔️ out of the box browser methods to fill website forms (type, click, etc);
✔️ dynamic keybinding to all available options (1-9
) when the options container is displayed;
✔️ allow custom configs (color scheme, debug_mode, custom shortcuts, etc);
✔️ ready to use examples provided on ./examples, including one that has auto-updatable feature.
:warning: Requirements
The only requirement to use this project is tamper monkey, a browser extension which allow us to autorun some javascript on certain specified websites.
:bulb: Usage
Install
- 1 - install tamper monkey to your browser;
- 2 - click on "tamper monkey icon" and after on "Create a new script...";
- 3 - paste the initial tamper monkey basic example 1_basic.js to the document content and save it;
- 4 - go to the saucedemo site and hit
ctrl+space
to show the options menu; - 4 - click on the available options or hit the
numeric keys (1 - 9)
when the options menu appears; - 5 - get inspired by the other ./examples and have fun!
Uninstall
If you want to uninstall, just remove the tamper monkey userscript on its dashboard.
How it works
This project will
- atach a floating button with custom options to the specified website;
- it will get the package content from jsdelivr and save it to storage so you dont have to fetch it all the time;
Available methods
This package comes with the following commands list:
:wrench: Development
Development setup
# Clone this repository
$ git clone https://github.com/lucasvtiradentes/page_actions_attacher
# Go into the repository
$ cd page_actions_attacher
# Install dependencies
$ npm install
If you want to contribute to the project, fork the project, make the necessary changes, and to test your work you can load the ./tests/index.html on your browser after run a npm run build command.
Used technologies
This project uses the following thechnologies:
:books: About
Related
- cypress: With Cypress, you can easily create tests for your modern web applications, debug them visually, and automatically run them in your continuous integration builds;
- robotframework: Robot Framework is a generic open source automation framework. It can be used for test automation and robotic process automation (RPA);
- selenium IDS: Selenium Record and Playback tool for ease of getting acquainted with Selenium WebDriver.
License
This project is distributed under the terms of the MIT License Version 2.0. A complete version of the license is available in the LICENSE file in this repository. Any contribution made to this project will be licensed under the MIT License Version 2.0.
Feedback
If you have any questions or suggestions you are welcome to discuss it on github issues or, if you prefer, you can reach me in my social media provided bellow.