Skip to content

Commit

Permalink
docs: add installation and setup guides
Browse files Browse the repository at this point in the history
  • Loading branch information
im-machakata committed May 13, 2024
1 parent 665dcdb commit e4aeb3c
Showing 1 changed file with 48 additions and 2 deletions.
50 changes: 48 additions & 2 deletions .github/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,52 @@ The accounts can disburse funds to any approved requisitions. They can not appro

The supervisor is the only one who can approve or reject requisitions. This leaves the requisition open for the accounts team to disburse the funds.

## Design System
### The User

The documentation provided had a desktop theme and some effort were made to make it look good on desktops than on mobile devices. The entire system was built using Bootstrap 5.
A (general) user can interact with the system as a normal employee with no special rights or roles. This was done so that you can experience the system from their perspective.

## System Design

The documentation provided had a desktop theme and some effort were made to make it look good on desktops than on mobile devices. The entire system was built using Bootstrap 5, jQuery and uses CodeIgniter 4 as the sole PHP framework. It follows the MVC (Model-View-Controller) architect.

### Views

Views, which are basically the frontend html are located in `app/Views`. You can edit them to add beautiful designs and more.

### Controllers

Controllers, which basically allows us to handle request separately and not in the frontend code. It makes our code nicer :)

These can be found in `app/Controllers`

### Models

Models provide an easy interaction with the database, providing helper functions to manipulate the database. These can be found in `app/Models`

### Database Migrations

Database migrations contain the definitions of our database tables. These can be found in `app/Database/Migrations`.

## Installation (5 mins)

To install the system, clone or download the project zip file from the **Code** button at the top. You should have PHP 8.1 or greater already installed (either via XAMPP, WAMP, or MAMP)

You will also need to download [composer](https://getcomposer.org) and install it.

When the installation is done, you have to move into your working directory eg. `cd C:/xampp/htdocs/requisition_system`

## Database Configurations (3 min)

Database configurations have to be stored in a **.env** file. The system will throw an error when these configurations are missing so you can copy the **env** to **.env** and adjust your `database.*` and `default.login` configurations to match your servers and to your linking respectively.

You will also need to create an empty database for the system through your `PHPMyAdmin` => [http://localhost/phpmyadmin](http://localhost/phpmyadmin) matching the provided `database.default.database`.

## Database Seeding (1 min)

Once you have installed and configured the system, you can open the following web page to seed the database `http://localhost/requisition_system/sys/install`. If all goes well, you'll see a very comforting message.

## Admin Auth

Once the preceding step is completed, you will be able to login as an admin using the username and password in the .env file

> **NB:** Additional features may be added at a much later time but is not guaranteed. If you would like to see that, kindly star this project and perhaps create an issue :) - TIA

0 comments on commit e4aeb3c

Please sign in to comment.