Skip to content
🍹 [WIP] Bar management application to manage transactions and inventory. Mirror from https://gitlab.com/timvisee/barbapappa
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github
docs
res/logo Implement first bar poster PDF generation logic May 27, 2019
webapp Use smarter bunq API context renewal, prevent most concurrent renewals Jun 28, 2019
.gitattributes Add README with LICENSE, update Git related files Aug 15, 2017
.gitignore
.gitlab-ci.yml Remove redundant NPM version number for nvm commands Jun 24, 2019
LICENSE Use stock GNU license, improve license page, add raw license, license… Oct 28, 2018
README.md Minor improvement for CI, update badge URL, change coverage path May 13, 2019
restartWorker Reorganize project, move Laravel webapp into subdirectory Nov 26, 2018
startWorker Fix personalized email recipient collector, set worker retry/delay Jun 12, 2019

README.md

Pipeline status on GitLab CI

BARbapAPPa

BARbapAPPa bar management application.

Installation

This application requires some installation steps.

Initial setup

The project can be installed and configured by running the following commands:

cd webapp

# Install composer dependencies
composer install # or update

# Install npm dependencies
npm install

Environment file

Create a file called .env based on the .env.example file and configure your database and mail credentials.

Database

To initialize the database with tables, the database migration might be invoked: php ./artisan migrate

If the project is updated, the same command should be invoked as well to update the database structure.

Compiling resources

Some resources are compiled, and need to be recompiled before they're used in the public application. Style sheets and client side JavaScript are such files.

To recompile resources, run the following command: npm run dev

Worker

This project makes use of workers to process tasks in the background. Emails are mostly being sent using these queues as it would otherwise drastically increase the response time of the web application. The worker for these queues needs to be started however.

Starting the worker

To start the worker, use the helper script: ./startWorker
Or start it directly (not prioritised): php ./artisan queue:work

Keep the worker running

The worker must be kept running at all times. Check out the Supervisor configuration in the Laravel documentation for more information.

Restart the worker

When the project is updated, the worker must be restarted using the helper script: ./restartWorker
Or run the command directly: php ./artisan queue:restart

This destroy the worker process. It should automatically restart again if the Supervisor is configured correctly.

Development

First make sure the project is successfully installed and configured. See the section above.

When you've made changes to the project, make sure to:

  • Migrate the database
  • Recompile the resources
  • Restart the worker

Compiled resources

Some resources have to be compiled, see the Compiled resources section above.

To watch the resources and automatically recompile on change, use: npm run watch

Builds

This project is currently automatically tested for each commit using CI services.

Service Platforms PHP Branch Build Status
GitLab CI Linux 7.2 master Pipeline status on Travis CI on master View Status

Note: Tests are currently fairly basic, and should be improved at a later time.

About

This project is currently developed and maintained by Tim Visée, www.timvisee.com.

License

This project is released under the GNU GPL-3.0 licence. Check out the LICENSE file for more information.

You can’t perform that action at this time.