An automated tool for applying to IPO/FPO shares on MeroShare Nepal using Cypress E2E testing framework.
This tool is for educational purposes only. Use it responsibly and in accordance with MeroShare's terms of service. The authors are not responsible for any misuse or consequences arising from the use of this tool.
- Multi-user Support: Apply for shares using multiple user accounts
- Automated Form Filling: Automatically fills application forms
- Bank Integration: Supports multiple banks and BOID selection
- Error Handling: Robust error handling and logging
- Configurable: Easy configuration through JSON files
- Open Source: MIT licensed and community-driven
- Node.js (version 16 or higher)
- npm or yarn package manager
- Valid MeroShare accounts
- Valid bank accounts with BOID numbers
- Clone the repository:
git clone https://github.com/your-username/meroshare-automation.git
cd meroshare-automation
- Install dependencies:
npm install
- Set up configuration files:
# Copy example files and configure them
cp cypress/fixtures/meroUser_example.json cypress/fixtures/meroUser.json
cp cypress/fixtures/companyDetails_example.json cypress/fixtures/companyDetails.json
Edit cypress/fixtures/meroUser.json
with your user details:
[
{
"name": "Your Name",
"bank": "YOUR BANK LIMITED (CODE)",
"user": "your_username",
"pwd": "your_password",
"crnNumber": "your_crn_or_boid",
"appliedKitta": "10",
"selectBank": "YOUR BANK LTD.",
"transactionPIN": "your_pin"
}
]
Edit cypress/fixtures/companyDetails.json
:
{
"companyName": "Company Name Ltd."
}
npm run cy:open
npm run cy:run
npm run test:meroshare
βββ cypress/
β βββ e2e/
β β βββ meroshare/
β β βββ merosharelogin.cy.js # Main test file
β βββ fixtures/
β β βββ meroUser.json # User configurations
β β βββ meroUser_example.json # Example user config
β β βββ companyDetails.json # Company details
β β βββ companyDetails_example.json # Example company config
β βββ support/
β β βββ commands.js # Custom Cypress commands
β β βββ e2e.js # Support file
β β βββ utils.js # Utility functions
β βββ cypress.config.js # Cypress configuration
βββ package.json
βββ README.md
Field | Description | Required |
---|---|---|
name |
Full name as registered | β |
bank |
Bank name with code | β |
user |
MeroShare username | β |
pwd |
MeroShare password | β |
crnNumber |
CRN or BOID number | β |
appliedKitta |
Number of shares to apply | β |
selectBank |
Bank for payment | β |
transactionPIN |
Transaction PIN | β |
- Kumari Bank Limited
- NIC Asia Bank Limited
- Global IME Bank Limited
- And many more...
Run the test suite:
npm test
Run with specific browser:
npx cypress run --browser chrome
We welcome contributions! Please see our Contributing Guidelines for details.
- Fork the repository
- Create a feature branch:
git checkout -b feature/amazing-feature
- Make your changes
- Run tests:
npm test
- Commit changes:
git commit -m 'Add amazing feature'
- Push to branch:
git push origin feature/amazing-feature
- Submit a pull request
- Use meaningful variable names
- Add comments for complex logic
- Follow existing code style
- Write tests for new features
- Initial release
- Multi-user support
- Basic IPO application automation
- Bank integration
This project is licensed under the MIT License - see the LICENSE file for details.
- Cypress.io for the amazing testing framework
- MeroShare Nepal for providing the platform
- Contributors and the community
If you encounter any issues or have questions:
- Check the Issues page
- Create a new issue with detailed information
- Join our community discussions
If this project helped you, please consider giving it a star! β
Made with β€οΈ for the Nepalese investment community