### Install Dependencies Source: https://github.com/multimote/niimblue/blob/main/standalone-apps/capacitor/README.md Navigate to the project root, install main dependencies, then navigate to the capacitor directory and install its dependencies. ```bash cd .. npm i cd capacitor npm i ``` -------------------------------- ### Install Dependencies Source: https://github.com/multimote/niimblue/blob/main/README.md Install project dependencies using npm. ```bash npm i ``` -------------------------------- ### Run Docker Compose Source: https://github.com/multimote/niimblue/wiki/Running-own-instance-with-Docker Starts the services defined in the docker-compose.yml file in detached mode. ```bash docker compose up -d ``` -------------------------------- ### VSCode IDE Setup for Path Aliases Source: https://github.com/multimote/niimblue/blob/main/README.md Configure VSCode settings to use non-relative import module specifiers for TypeScript and JavaScript. ```json { "typescript.preferences.importModuleSpecifier": "non-relative", "javascript.preferences.importModuleSpecifier": "non-relative" } ``` -------------------------------- ### Run NiimBlue with Docker Source: https://github.com/multimote/niimblue/wiki/Running-own-instance-with-Docker Starts a NiimBlue container in detached mode, mapping port 8080. Access NiimBlue via http://localhost:8080. ```bash docker run --name niimblue -p 8080:80 -d ghcr.io/multimote/niimblue:latest ``` -------------------------------- ### Docker Compose Configuration for SSL Source: https://github.com/multimote/niimblue/wiki/Running-own-instance-with-Docker Defines a Docker Compose setup for NiimBlue with SSL. It mounts the custom Nginx configuration and SSL certificates into the container and maps port 8443 to the container's port 443. ```yaml services: niimblue: image: ghcr.io/multimote/niimblue:latest volumes: - ./niimblue-ssl.conf:/etc/nginx/conf.d/default.conf - ./cert.pem:/etc/nginx/ssl/cert.pem - ./key.pem:/etc/nginx/ssl/key.pem ports: - "8443:443" ``` -------------------------------- ### Build Release APK for Android Source: https://github.com/multimote/niimblue/blob/main/standalone-apps/capacitor/README.md Prepare for building a release APK. Ensure `apksigner` is in your PATH and set the necessary keystore environment variables. ```bash export KEYSTORE_PATH=/path/to/keystore.jks export KEYSTORE_ALIAS=your_alias_name export KEYSTORE_PASSWORD=pa$$word export KEYSTORE_ALIAS_PASSWORD=pa$$word npm run build-android ``` -------------------------------- ### Build Project for Static Files Source: https://github.com/multimote/niimblue/blob/main/README.md Build the project to generate static files for deployment. The output is placed in the 'dist' directory. ```bash npm run build ``` -------------------------------- ### Run Development Server (with check) Source: https://github.com/multimote/niimblue/blob/main/README.md Run the development server with code checks enabled. ```bash npm run dev-check ``` -------------------------------- ### Run Development Server Source: https://github.com/multimote/niimblue/blob/main/README.md Run the development server without explicit checks. ```bash npm run dev ``` -------------------------------- ### Build NiimBlue Static Files Source: https://github.com/multimote/niimblue/blob/main/standalone-apps/capacitor/README.md Build the static files for the NiimBlue web application. ```bash npm run build-www ``` -------------------------------- ### Generate SSL Key and Certificate Source: https://github.com/multimote/niimblue/wiki/Running-own-instance-with-Docker Creates a self-signed SSL certificate and private key for secure connections, valid for 10 years. Used for the domain 'niim.lan'. ```bash openssl req -x509 -newkey rsa:4096 -keyout key.pem -out cert.pem -sha256 -days 3650 -nodes -subj "/CN=niim.lan" -addext "subjectAltName=DNS:niim.lan" ``` -------------------------------- ### Run Debug Build on iPhone Simulator Source: https://github.com/multimote/niimblue/blob/main/standalone-apps/capacitor/README.md Execute the command to run a debug build of the NiimBlue app on an iPhone Simulator. ```bash npm run run-ios ``` -------------------------------- ### Build iOS App Source: https://github.com/multimote/niimblue/blob/main/standalone-apps/capacitor/README.md Execute the command to build the NiimBlue app for iOS. Note that running on a physical device requires setting `DEVELOPMENT_TEAM` in Xcode. ```bash npm run build-ios ``` -------------------------------- ### Capture USB Traffic on Windows Source: https://github.com/multimote/niimblue/wiki/Making-packet-capture Use USBPcapCMD to capture USB traffic. Specify the hub number and filename for the capture. Ensure a NIIMBOT app is running and a print job is initiated during capture. ```bash USBPcapCMD.exe ``` -------------------------------- ### Clone NIIMBLUE Repository Source: https://github.com/multimote/niimblue/blob/main/README.md Clone the NIIMBLUE repository to your local machine using Git. ```bash git clone https://github.com/MultiMote/niimblue.git ``` -------------------------------- ### Run Debug Build on Android Device Source: https://github.com/multimote/niimblue/blob/main/standalone-apps/capacitor/README.md Execute the command to run a debug build of the NiimBlue app on an connected Android device via ADB. ```bash npm run run-android ``` -------------------------------- ### Generate Bug Report on Android Source: https://github.com/multimote/niimblue/wiki/Making-packet-capture Generate a bug report on an Android device after enabling Bluetooth HCI logs and performing a print operation. This command is part of the Android SDK Platform Tools. ```bash adb bugreport ``` -------------------------------- ### Nginx Custom SSL Configuration Source: https://github.com/multimote/niimblue/wiki/Running-own-instance-with-Docker Nginx server block configuration to enable SSL on port 443 using provided certificate and key files. It serves static content from /usr/share/nginx/html. ```nginx server { listen 443 ssl; ssl_certificate /etc/nginx/ssl/cert.pem; ssl_certificate_key /etc/nginx/ssl/key.pem; # ssl_trusted_certificate /etc/nginx/ssl/cert.pem; location / { root /usr/share/nginx/html; index index.html; } error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html; } } ``` -------------------------------- ### Granting Serial Port Access on Linux Source: https://github.com/multimote/niimblue/wiki/Frequently-asked-questions This command grants the current user access to serial ports, which is often required for Linux systems to communicate with devices like label printers. You must log out and back in after running this command for the changes to take effect. ```bash sudo usermod -a -G dialout $USER ``` === COMPLETE CONTENT === This response contains all available snippets from this library. No additional content exists. Do not make further requests.