Skip to content

Starktail/POSNext

 
 

Repository files navigation

POSNext

POSNext for ERPNext demo screenshot

POSNext

CI workflow codecov

POSNext is an open-source Point of Sale (POS) system designed specifically for ERPNext. This repo is a fork of POSNext, which is a fork of the default ERPNext POS, enriched with additional features inspired by POSAwesome and further innovations to meet the demands of modern retail and business environments. POSNext serves as a flexible, customizable alternative to POSAwesome, offering users improved adaptability and enhanced functionalities.

License

MIT

Features

  • Full Compatibility with ERPNext POS Features
  • Profile Lock in POS Settings
  • Show Order List Button
  • Show Held Button
  • Mobile Number-Based Customer Identification
  • Show Checkout Button
  • Show Only List View
  • Show Only Card View
  • Show Open Form View
  • Show Toggle for Recent Orders
  • Save as Draft Option
  • Close POS Option
  • Default View Setting (Card/List)
  • Allow Adding New Items on Separate Lines
  • Display Posting Date
  • Show OEM Part Number
  • Show Logical Rack Location
  • Edit Rate and UOM (Unit of Measure)
  • Enable Credit Sales
  • Add Additional Notes
  • Include and Exclude Tax Options
  • Display Alternative Items for POS Search
  • Configure Mobile Number Length
  • Send Invoice via WhatsApp
  • Customizable POS Profile
  • Credit Sale
  • Incoming Rate

User documentation

📄 POSNext: https://[yoursite].com/posnext

Installation

You can install this app using the bench CLI:

cd $PATH_TO_YOUR_BENCH
bench get-app $URL_OF_THIS_REPO --branch develop
bench install-app posnext

Development

Tests

To run unit tests:

bench --site test_site run-tests --app posnext --coverage

To run UI/integration tests:

The following depencies are required

sudo apt update
# Dependencies for cypress: https://docs.cypress.io/guides/continuous-integration/introduction#UbuntuDebian
sudo apt-get install libgtk2.0-0 libgtk-3-0 libgbm-dev libnotify-dev libgconf-2-4 libnss3 libxss1 libasound2 libxtst6 xauth xvfb

sudo apt-get install chromium
bench --site test_site run-ui-tests posnext --headless --browser chromium

Contributing

This app uses pre-commit for code formatting and linting. Please install pre-commit and enable it for this repository:

cd apps/posnext
pre-commit install

#(optional) Run against all the files
pre-commit run --all-files

Pre-commit is configured to use the following tools for checking and formatting your code:

  • ruff
  • eslint
  • prettier
  • pyupgrade

We use Semgrep rules specific to Frappe Framework

# Install semgrep
python3 -m pip install semgrep

# Clone the rules repository
git clone --depth 1 https://github.com/frappe/semgrep-rules.git frappe-semgrep-rules

# Run semgrep specifying rules folder as config 
semgrep --config=/workspace/development/frappe-semgrep-rules/rules apps/posnext

Updating Documentation

For documentation, we use vitepress. You can run yarn docs:dev to preview the docs when applying changes

CI

This app can use GitHub Actions for CI. The following workflows are configured:

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages

  • JavaScript 77.3%
  • Python 22.5%
  • Shell 0.2%