Beam
General Purpose 2D barcode scanning for ERPNext
Install / Use
/learn @agritheory/BeamREADME
BEAM
Barcode Scanning for ERPNext
Codespace
To run this project in a Github Codespace, click on the button below.
After the codespace is ready, you can run the following command in the terminal to start the Frappe server:
bench start
You can also build the project by running the following commands in the terminal:
cd apps/beam
yarn install
bench build --app beam && bench clear-cache
If you're trying to review a pull request inside the codespace, you can follow the instructions in the official guide.
Install Instructions
Set up a new bench, substitute a path to the python version to use, which should be 3.10 latest
# for linux development
bench init --frappe-branch version-15 {{ bench name }} --python ~/.pyenv/versions/3.10.13/bin/python3
Create a new site in that bench
cd {{ bench name }}
bench new-site {{ site name }} --force --db-name {{ site name }}
bench use {{ site name }}
Download the ERPNext app
bench get-app erpnext --branch version-15
Download this application and install all apps
bench get-app beam --branch version-15 git@github.com:agritheory/beam.git
Set developer mode in site_config.json
cd {{ site name }}
nano site_config.json
"developer_mode": 1,
Enable server scripts
bench set-config -g server_script_enabled 1
Update and get the site ready
bench start
In a new terminal window
bench update
bench migrate
bench build
Setup test data
bench execute 'beam.tests.setup.before_test'
# for complete reset to run before tests:
bench reinstall --yes --admin-password admin --mariadb-root-password admin && bench execute 'beam.tests.setup.before_test'
To run mypy and pytest
source env/bin/activate
mypy ./apps/beam/beam --ignore-missing-imports
pytest ./apps/beam/beam/tests -s --disable-warnings
Printer Server setup
sudo apt-get install gcc cups python3-dev libcups2-dev -y
# for development it helps to have the CUPS PDF printer installed
# sudo apt-get -y install printer-driver-cups-pdf
bench pip install pycups
sudo usermod -a -G lpadmin {username} # the "frappe" user in most installations
Go to {server URL or localhost}:631 to access the CUPS web interface
Configuration on a remote server will take extra steps to secure:
https://askubuntu.com/questions/23936/how-do-you-administer-cups-remotely-using-the-web-interface
License
MIT
Related Skills
node-connect
346.4kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
107.2kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
346.4kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
346.4kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
