No description, website, or topics provided.
Switch branches/tags
Nothing to show
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
app initial commit Aug 1, 2018
bootstrap initial commit Aug 1, 2018
config initial commit Aug 1, 2018
database initial commit Aug 1, 2018
public initial commit Aug 1, 2018
resources initial commit Aug 1, 2018
tests initial commit Aug 1, 2018
.babelrc initial commit Aug 1, 2018
.env.example initial commit Aug 1, 2018
.gitignore initial commit Aug 1, 2018
README.md Path update in README.md Aug 1, 2018
artisan initial commit Aug 1, 2018
composer.json initial commit Aug 1, 2018
docker-compose.yml initial commit Aug 1, 2018
favicon.ico initial commit Aug 1, 2018
license.txt initial commit Aug 1, 2018
package.json initial commit Aug 1, 2018
phpunit.xml initial commit Aug 1, 2018
robots.txt initial commit Aug 1, 2018
server.php initial commit Aug 1, 2018
web.config initial commit Aug 1, 2018
webpack.config.dev.js initial commit Aug 1, 2018
webpack.config.prod.js initial commit Aug 1, 2018

README.md

FAX

With fax you can improve the way your newsroom works with your extensive network of freelance writers. fax enables your editors to set up a database, manage story pitches and automatically inform your freelancers about the status of their articles.

License

fax is Open-source software licensed under the MIT license.

Setup locally using Docker

  1. Copy the .env.example to .env
  2. Load the dependencies composer update
  3. Start the containers docker-compose up
  4. Create basic folders and migrations docker-compose exec web composer prepare
  5. Create the application key docker-compose exec web php artisan key:generate
  6. Setup passport docker-compose exec web php artisan passport:install
  7. Clear config cache docker-compose exec web php artisan config:cache
  8. Create some example users and articles docker-compose exec web php artisan db:seed

Setup on a Webserver

Requirements

  • PHP >= 7.0.0
  • OpenSSL PHP Extension
  • PDO PHP Extension
  • Mbstring PHP Extension
  • Tokenizer PHP Extension
  • XML PHP Extension
  • MySQL Database

Installation

  1. point the DOCUMENT_ROOT of your webserver to the public folder within FAX
  2. load the dependencies composer update
  3. copy the .env.example file to .env and change the database settings to the one of your database server
  4. run composer prepare && php artisan key:generate && php artisan passport:install && artisan config:cache
  5. to create some sample data, run php artisan db:seed

First steps

This will run all the steps needed to get FAX up and running. Two example users and a few example articles will be created as well. You can now login to your own FAX by opening the your webbrowser on http://localhost and using one of the accounts below.

Freelancer: fritz@example.com:secret Editor: eddi@example.com:secret

Setup Frontend

Requirements

Technologies

  • npm
  • React
  • Webpack
  • Babel
  • Browserlist
  • Autoprefixer
  • Apollo
  • SASS
  • UIkit

Taskrunner

To keep dependencies low, we use npm scripts for taskrunner purposes. Some of them run Webpack. There are two Webpack config files, one for development and the other one for production. Right now they only contain Babel for ES5 compatibility.

Installation

  • Run $ npm install.
  • Inside the public/build directory create a all.css symlink targeting all.dev.css or all.prod.css, depending on your environment, e. g.: $ ln -s all.dev.css all.css
  • Inside the public/build directory create a bundle.js symlink targeting bundle.dev.js or bundle.prod.js, depending on your environment, e. g.: $ ln -s bundle.dev.js bundle.prod.js

Other npm scripts

There are some other npm scripts, which can make life easier. Some of those are:

  • $ npm run build. Your build should be compiled into the docroot directory.
  • $ npm run build:css runs the SASS compiler, followed by Autoprefixer and CleanCSS. Since our frontend is based on UIkit, this task won’t probably change a lot.
  • $ npm run build:js runs Webpack in both dev and prod configurations.
  • $ npm run watch:js-dev runs Webpack in watch mode in dev configuration.
  • $ npm run watch:js-prod runs Webpack in watch mode in dev configuration.

There are some other tasks, which aren’t mentioned here. You can have a look at package.json.

Guidelines

To provide your guidelines in fax simply replace the guidelines.pdf file in the public folder with your guidelines.