Modern CLI tool for Meroshare IPO automation and NEPSE market data with interactive TUI
Project description
Nepse CLI - Meroshare IPO Automation & Market Data
A modern, interactive command-line tool to automate IPO applications on Meroshare for multiple family members and view real-time NEPSE market data.
✨ Now featuring a beautiful TUI with Rich tables, interactive menus, and fuzzy search!
[██████████████████░░░░░░░░░░░░] 50% (3/6) Selecting DP (value: 10900)...
Installation
📦 Install from PyPI (Recommended)
⚠️ Important for Windows Users: If you installed Python from Microsoft Store, please uninstall it and install Python from the official Python website instead. Microsoft Store Python has PATH issues that prevent nepse command from working properly.
pip install nepse-cli
Then run:
nepse
⚠️ Windows Users: If you get 'nepse' is not recognized error after installation:
Quick Fix - Use this command instead:
python -m nepse_cli
Permanent Fix - Add Python Scripts to PATH:
Step 1: Find your Scripts path
# Run this command to find where nepse.exe is installed:
python -c "import sys; import os; print(os.path.join(sys.prefix, 'Scripts'))"
Copy the output path (e.g., C:\Users\YourName\AppData\Local\Packages\Python...\Scripts)
Step 2: Add to PATH
- Press
Win + R, typesysdm.cpl, press Enter - Go to
Advancedtab →Environment Variables - Under
User variables, selectPath→ ClickEdit - Click
New→ Paste the Scripts path from Step 1 - Click
OKon all dialogs - Restart your terminal
See more details in Troubleshooting section below.
🛠️ Other Installation Options
Install from Source (For Development):
cd "Nepse CLI"
pip install -e .
🚀 Easy Start (Windows - Source Code): If you have the source code folder:
- Double-click
start_nepse.bat. - That's it! It will check for Python, install dependencies, and launch the tool.
Browser Setup: The CLI will automatically install Playwright browsers on first run if they're not already installed. If you prefer to install manually:
playwright install chromium
Usage
Interactive Shell (Recommended)
Simply run nepse to enter the modern interactive shell:
nepse
Once inside the shell, you do not need to type nepse again. Just type the command directly:
stonk NABILipoapplymktsum
Shell Features:
- Command Palette: Type
/to search all available commands. - Autocompletion: Type commands and see suggestions.
- History: Use Up/Down arrows to cycle through command history.
- Help: Type
helpor?to see the command list.
Direct Commands
Meroshare IPO Automation
# Apply for IPO (headless by default - no browser window)
nepse apply
# Apply with browser window visible
nepse apply --gui
# Apply for ALL family members (multi-tab automation)
nepse apply-all
# Apply for all members with browser visible
nepse apply-all --gui
# Add or update a family member
nepse add-member
# List all family members
nepse list-members
# Get portfolio (headless by default)
nepse get-portfolio
# Get portfolio with browser window visible
nepse get-portfolio --gui
# Test login (headless by default)
nepse test-login
# Test login with browser window visible
nepse test-login --gui
# View available DP list
nepse dplist
Market Data Commands
# View all open IPOs/FPOs
nepse ipo
# View NEPSE indices
nepse nepse
# View sub-index details (Banking, Hydropower, etc.)
nepse subidx BANKING
nepse subidx HYDROPOWER
# View market summary
nepse mktsum
# View top 10 gainers and losers
nepse topgl
# View stock details (information only - no charts)
nepse stonk NABIL
nepse stonk NICA
Features
🖥️ Modern UI & UX
- Rich TUI: Beautiful tables, panels, and colored output for all commands.
- Interactive Menus: Select family members using arrow keys (no more typing IDs!).
- Smart Shell: Autocompletion, fuzzy search, and command history.
- Progress Bars: Visual feedback for all long-running operations.
🤖 Meroshare Automation
- ✅ Multi-member Support: Manage credentials for the whole family.
- ✅ One-Command Apply:
nepse apply-allapplies for everyone in sequence. - ✅ Interactive Selection: Choose a specific member from a list using arrow keys.
- ✅ Headless Mode: Fast and silent operation by default.
- ✅ Secure Storage: Credentials stored locally in your user directory.
📈 Market Data
- ✅ Live Indices: NEPSE, Sensitive, Float, and Sub-indices.
- ✅ Market Summary: Turnover, volume, market cap, and active stocks.
- ✅ Top Gainers/Losers: Real-time lists of best and worst performers.
- ✅ Stock Details: Price, volume, sector, and changes for any listed company.
- ✅ IPO Watch: List of all open and upcoming IPOs/FPOs/Right Shares.
Configuration
All credential data is stored in a fixed location to avoid path issues:
📁 Data Directory: C:\Users\%USERNAME%\Documents\merosharedata\
Files stored here:
family_members.json- All family member credentialsipo_config.json- IPO application settings (if any)nepse_cli_history.txt- Command history for the interactive shell
This means the CLI works from any directory - your data is always in the same place!
Family member data structure:
{
"members": [
{
"name": "Dad",
"dp_value": "139",
"username": "your_username",
"password": "your_password",
"transaction_pin": "1234",
"applied_kitta": 10,
"crn_number": "YOUR_CRN"
}
]
}
Security
- Passwords are stored locally in JSON format
- File permissions are set to 600 on Unix systems
- Never commit
family_members.jsonto version control
Troubleshooting
'nepse' is not recognized (Windows):
If you get 'nepse' is not recognized as an internal or external command after installation:
⚠️ Most Common Issue - Microsoft Store Python: If you installed Python from Microsoft Store, this is likely your problem. The Microsoft Store version of Python has PATH configuration issues.
Solution:
- Uninstall Python from Microsoft Store (Settings → Apps → Python → Uninstall)
- Download and install Python from python.org
- Important: Check "Add Python to PATH" during installation
- Reinstall nepse-cli:
pip install nepse-cli - The
nepsecommand should now work without any extra configuration!
Other Options if you want to keep Microsoft Store Python:
Option 1: Use Python module syntax (Quick Fix)
python -m nepse_cli
Option 2: Find and run nepse.exe directly
# First, find where nepse.exe is installed:
python -c "import sys; import os; print(os.path.join(sys.prefix, 'Scripts', 'nepse.exe'))"
# Then run the output path, for example:
C:\Users\YourUsername\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.13_xxx\LocalCache\local-packages\Python313\Scripts\nepse.exe
Option 3: Add Scripts folder to PATH (Permanent Fix)
Step 1 - Find your Scripts path:
python -c "import sys; import os; print(os.path.join(sys.prefix, 'Scripts'))"
Copy the output path.
Step 2 - Add to PATH:
- Press
Win + R, typesysdm.cpl, press Enter - Go to
Advancedtab →Environment Variables - Under
User variables, selectPath→ ClickEdit - Click
New→ Paste the Scripts path from Step 1 - Click
OKon all dialogs - Close ALL terminal windows completely (including VS Code terminal)
- Open a NEW terminal window
- Now
nepsecommand should work
Still not working after adding to PATH?
- Verify the path was added correctly: Run
echo %PATH%in cmd and check if your Scripts path is there - Try logging out and back into Windows (or restart your computer)
- Check if nepse.exe exists: Run the command from Step 1 above and verify the file exists at that location
- If file doesn't exist, reinstall:
pip uninstall nepse-clithenpip install nepse-cli - As a last resort, use
python -m nepse_cliinstead ofnepse
Option 4: Reinstall with --user flag
pip uninstall nepse-cli
pip install --user nepse-cli
# Then add: %APPDATA%\Python\Python313\Scripts to PATH
Command not found (Linux/Mac):
- Make sure
~/.local/binis in your PATH - Or install with:
pip install --user nepse-cli - Restart your terminal after installation
Browser not installed:
playwright install chromium
# Or use: python -m playwright install chromium
Login fails:
- Test with:
nepse test-login - Verify credentials with:
nepse list-members - Update credentials with:
nepse add-member
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file nepse_cli-1.1.0.tar.gz.
File metadata
- Download URL: nepse_cli-1.1.0.tar.gz
- Upload date:
- Size: 53.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b6346d35f0d060c77b46ce5dfe2f9c7ae446eb966036a7fb234beb0660a2d435
|
|
| MD5 |
8cfb6c38824bbf65f11b7210840272db
|
|
| BLAKE2b-256 |
8d295aa37564457451df12b1002f17fd607efc17a104430d79118d103a4aa354
|
File details
Details for the file nepse_cli-1.1.0-py3-none-any.whl.
File metadata
- Download URL: nepse_cli-1.1.0-py3-none-any.whl
- Upload date:
- Size: 36.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3fef6ca709878f7b1a86e12fe059769ccd648cc46106b2ecae4cd0440d7c731d
|
|
| MD5 |
dfb23a60e53a1cac3e0868eeb8a20b43
|
|
| BLAKE2b-256 |
de8acf52661d229608e6704421fdf4e0dabb04da134eb7e0393c715b49cd1892
|