B2sharebridge
Nextcloud plugin that is providing a integration from B2DROP with B2SHARE
Install / Use
/learn @EUDAT-B2DROP/B2sharebridgeREADME
EUDAT B2SHARE integration app
Table of Contents
- Plugin Description - What the plugin does provide
- Install - How to install the B2SHAREBRIDGE
- Development - Guide for contributing to the plugin
Module Description
This owncloud/nextcloud plugin allows the user to directly publish files from his personal cloud store to EUDAT B2SHARE. The user interface of B2DROP is extended with an icon to publish files, and with a table view that shows the last published files. If a user wants to publish a file, this transfer is done via the B2DROP server in the background.
Install
- on your B2DROP server go to the <owncloud/nextcloud>/apps directory
cd nextcloud/apps
- git clone this repository
git clone https://github.com/EUDAT-B2DROP/b2sharebridge.git b2sharebridge
- then install the dependencies using:
make composer
- enable the app on the B2DROP owncloud/nextcloud web interface or in the console with:
sudo -u <www-data/your webserver user> php occ app:enable b2sharebridge
- configure a B2SHARE endpoint in the B2DROP owncloud/nextcloud admin menu
Development
There are no formal requirements to participate. If there are questions, feel free to contact the authors mentioned in AUTHORS.md
Frontend development
The app is implemented with Vue.js. Build the frontend code after doing changes to its source
in src/ which requires to have Node and npm installed:
- :woman_technologist: Run
make dev-setupto install the frontend dependencies - :building_construction: To build the Javascript whenever you make changes, run
make build-js
To continuously run the build when editing source files you can make use of the make watch-js command.
Testing
In order to run tests you have to install nextcloud.
Unit testing
Make sure you have the dependencies installed with make composer.
warning
If you don't put the b2sharebridge-app at
nextcloud/appsyou need to
- Set the
NEXTCLOUD_ROOTvariable to your nextcloud directory, for exampleexport NEXTCLOUD_ROOT=/var/www/nextcloud
You can now run all tests with make test, which runs unit and integration tests.
Manual (Frontend-) Testing
For manual testing you need to install the b2sharebridge-app and enable it in the nextcloud server.
warning
If you don't put the b2sharebridge-app at
nextcloud/appsyou need to
- Create a softlink at
nextcloud/appswithls -s <your dev directory> b2sharebridgein order to install the app- You may also need to change the owner of the app-files with
sudo chown -R <webserver-user:webserver-group> </path/to/your/>b2sharebridge. Alternatively set the user of your webserver to your own user. This is NOT recommended for your production system!
Style and style-fix
In order to keep the quality of the app higher there are options to automatically check your files for styling issues and other code smells:
make phplintto show andmake phplint-fixto automatically fix some php issuesmake stylelintto show andmake stylelint-fixto automatically fix some css, scss or vue issuesmake lintto show andmake lint-fixto automatically fix some javascript issues
Additional Notes
You need to at least use charset utf8mb4 (or similar) in your database, because the fetched communitites contain the 🔒-emoji in their name. Otherwise this causes mysql (or similar) to show a question mark ? instead. This bug only causes visual issues.
Related Skills
node-connect
329.0kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
81.1kCreate 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
329.0kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
commit-push-pr
81.1kCommit, push, and open a PR
