An expense tracking app that aims to promote transparency in the handling of public funds by public officers in Nigera. Visit our website at expenseng.com
For quick navigation:
Please read FG Expense Tracker's Code of Conduct. It is important that you follow the code to ensure that we all remain professional and fair to each other.
Before running this app, locally make sure you have the following software installed:
- XAMPP or it's equivalent
- NPM
- Composer
Now, follow this steps to start contributing:
- Clone this repository with
git clone https://github.com/hngi/expenseng.git
- Run
cd expenseng
- Run
composer install
- Run
npm install
- Run
php artisan key:generate --show
to retrieve a base64 encoded string for Laravel'sAPP_KEY
in.env
- Run
php artisan serve
from your terminal and the app will be running onhttps://127.0.0.1:8000/
- This project makes use of Laravel mix, and so all scripts and stylesheets are in the resources folder. When you run
npm run dev
, they will be compiled and written to thepublic
folder.
To ensure that only production-ready, properly tested and syntax error-free code is merged, this project uses PHP Sniffer to identify erroneous or error-prone PHP code, JsHint to identify javascript errors, and unit tests are run with PHPUnit. This means a pull request(PR) that does not pass all these error checkers or breaks any existing unit tests will be rejected. Convenience composer scripts have been provided to enable you run these tests locally before pushing your changes or making a PR, to enable you fix these errors first. You are encouraged to run all these tests first before a commit or before pushing new commits:
composer run-php-test
to run unit tests with PHPUnitcomposer run-php-sniffer
to run PHP sniffer to check for PHP syntax errors and repair auto-fixable errorscomposer run-js-test
ornpm run lint
to check for javascript errorscomposer run-all-tests
to run all 3 tests (Note: this is the same test that will be run on CI)
If you are new to Laravel, this quick guide will help you get started.
- All your
CSS
orSASS
or files should be in theresources/sass
orresources/css
directory - The above applies to images as well, there is a
resources/img
folder which house all images for this project - !Important References to your images in your Stylesheet should use the format
url('/img/<image-name>')
- All links must use the naming convention of
route('name')
, learn more about Laravel named routes
Laravel has the most extensive and thorough documentation and video tutorial library of all modern web application frameworks, making it a breeze to get started with the framework.
If you don't feel like reading, Laracasts can help. Laracasts contains over 1500 video tutorials on a range of topics including Laravel, modern PHP, unit testing, and JavaScript. Boost your skills by digging into our comprehensive video library.
The Laravel framework is open-sourced software licensed under the MIT license.