BookStack/readme.md
2017-01-01 12:51:23 +00:00

3.7 KiB

BookStack

GitHub release license Build Status

A platform for storing and organising information and documentation. General information and documentation for BookStack can be found at https://www.bookstackapp.com/.

Development & Testing

All development on BookStack is currently done on the master branch. When it's time for a release the master branch is merged into release with built & minified CSS & JS then tagged at it's version. Here are the current development requirements:

SASS is used to help the CSS development and the JavaScript is run through browserify/babel to allow for writing ES6 code. Both of these are done using gulp. To run the build task you can use the following commands:

# Build and minify for production
npm run-script build

# Build for dev (With sourcemaps) and watch for changes
npm run-script dev

BookStack has many integration tests that use Laravel's built-in testing capabilities which makes use of PHPUnit. To use you will need PHPUnit installed and accessible via command line. There is a mysql_testing database defined within the app config which is what is used by PHPUnit. This database is set with the following database name, user name and password defined as bookstack-test. You will have to create that database and credentials before testing.

The testing database will also need migrating and seeding beforehand. This can be done with the following commands:

php artisan migrate --database=mysql_testing
php artisan db:seed --class=DummyContentSeeder --database=mysql_testing

Once done you can run phpunit in the application root directory to run all tests.

Website and Docs

The website and project docs are currently stored in the BookStackApp/website repo. The docs are stored as markdown files in the resources/docs folder

License

BookStack is provided under the MIT License.

Attribution

These are the great projects used to help build BookStack:

Additionally, Thank you BrowserStack for supporting us and making cross-browser testing easy.