💲 Budgeting app for Nextcloud
Find a file
William Brawner e4a3855d83 Implement super basic user sharing for budgets
Signed-off-by: William Brawner <me@wbrawner.com>
2020-03-21 14:09:14 -06:00
appinfo Build out more frontend views 2020-03-15 20:22:27 -06:00
css Build out more frontend views 2020-03-15 20:22:27 -06:00
img Crop icon to match others 2020-03-07 19:27:04 -06:00
lib Implement super basic user sharing for budgets 2020-03-21 14:09:14 -06:00
src Implement super basic user sharing for budgets 2020-03-21 14:09:14 -06:00
templates Start frontend vue implementation with budget list in app navigation 2020-03-13 08:43:58 -05:00
tests Initial commit 2020-03-07 12:36:23 -06:00
.eslintrc.js Build out more frontend views 2020-03-15 20:22:27 -06:00
.gitignore Start frontend vue implementation with budget list in app navigation 2020-03-13 08:43:58 -05:00
.stylelintrc.js Start frontend vue implementation with budget list in app navigation 2020-03-13 08:43:58 -05:00
.travis.yml Initial commit 2020-03-07 12:36:23 -06:00
composer.json Initial commit 2020-03-07 12:36:23 -06:00
COPYING Initial commit 2020-03-07 12:36:23 -06:00
Makefile Initial commit 2020-03-07 12:36:23 -06:00
package-lock.json Update packages 2020-03-15 21:17:52 -06:00
package.json Update packages 2020-03-15 21:17:52 -06:00
phpunit.integration.xml Initial commit 2020-03-07 12:36:23 -06:00
phpunit.xml Initial commit 2020-03-07 12:36:23 -06:00
README.md Initial commit 2020-03-07 12:36:23 -06:00
webpack.common.js Start frontend vue implementation with budget list in app navigation 2020-03-13 08:43:58 -05:00
webpack.dev.js Start frontend vue implementation with budget list in app navigation 2020-03-13 08:43:58 -05:00
webpack.prod.js Start frontend vue implementation with budget list in app navigation 2020-03-13 08:43:58 -05:00

Twigs

Place this app in nextcloud/apps/

Building the app

The app can be built by using the provided Makefile by running:

make

This requires the following things to be present:

  • make
  • which
  • tar: for building the archive
  • curl: used if phpunit and composer are not installed to fetch them from the web
  • npm: for building and testing everything JS, only required if a package.json is placed inside the js/ folder

The make command will install or update Composer dependencies if a composer.json is present and also npm run build if a package.json is present in the js/ folder. The npm build script should use local paths for build systems and package managers, so people that simply want to build the app won't need to install npm libraries globally, e.g.:

package.json:

"scripts": {
    "test": "node node_modules/gulp-cli/bin/gulp.js karma",
    "prebuild": "npm install && node_modules/bower/bin/bower install && node_modules/bower/bin/bower update",
    "build": "node node_modules/gulp-cli/bin/gulp.js"
}

Publish to App Store

First get an account for the App Store then run:

make && make appstore

The archive is located in build/artifacts/appstore and can then be uploaded to the App Store.

Running tests

You can use the provided Makefile to run all tests by using:

make test

This will run the PHP unit and integration tests and if a package.json is present in the js/ folder will execute npm run test

Of course you can also install PHPUnit and use the configurations directly:

phpunit -c phpunit.xml

or:

phpunit -c phpunit.integration.xml

for integration tests