.github | ||
app | ||
bootstrap | ||
config | ||
database | ||
public | ||
resources | ||
routes | ||
storage | ||
tests | ||
.env.example | ||
.gitattributes | ||
.gitignore | ||
.travis.yml | ||
artisan | ||
composer.json | ||
composer.lock | ||
gulpfile.js | ||
LICENSE | ||
package.json | ||
phpunit.xml | ||
readme.md | ||
server.php | ||
version |
BookStack
A platform for storing and organising information and documentation. General information and documentation for BookStack can be found at https://www.bookstackapp.com/.
- Installation Instructions
- Documentation
- Demo Instance
- Username:
admin@example.com
- Password:
password
- Username:
- BookStack Blog
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:
- Node.js v6.9+
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:
- Laravel
- AngularJS
- jQuery
- TinyMCE
- highlight.js
- jQuery Sortable
- Material Design Iconic Font
- Dropzone.js
- ZeroClipboard
- TinyColorPicker
- Marked
- Moment.js
- BarryVD
- WKHTMLtoPDF
Additionally, Thank you BrowserStack for supporting us and making cross-browser testing easy.