Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/reloadly/sample-airtime-topup-platform
Open source airtime and data top-up platform for distributors and e-com sites to use as white label. With complete Admin/Reseller/Customer side. Fully loaded with the Reloadly API. Easy to use and can be customized/white-labeled with any company design.
https://github.com/reloadly/sample-airtime-topup-platform
Last synced: 15 days ago
JSON representation
Open source airtime and data top-up platform for distributors and e-com sites to use as white label. With complete Admin/Reseller/Customer side. Fully loaded with the Reloadly API. Easy to use and can be customized/white-labeled with any company design.
- Host: GitHub
- URL: https://github.com/reloadly/sample-airtime-topup-platform
- Owner: Reloadly
- License: mit
- Created: 2020-12-16T07:38:11.000Z (about 4 years ago)
- Default Branch: main
- Last Pushed: 2023-11-08T07:06:36.000Z (about 1 year ago)
- Last Synced: 2023-11-08T09:15:29.912Z (about 1 year ago)
- Language: Blade
- Homepage:
- Size: 3.99 MB
- Stars: 17
- Watchers: 3
- Forks: 20
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
## About Project
Reloadly's Sample Topup project is introduced to enable users to deploy a ready-made solution that is maintained by Reloadly. This solution can be easily deployed on any machine that fulfills the required prerequisites. We have made the deployment as simple as possible and are open to suggestions.
## Requirements
The project is built on PHP Laravel framework and Vue.JS We have made it possible to deploy the project with zero development knowledge. However, in order to install this on your machine/server you will need to install a few key things. The project is based on docker to create a fresh and clean environment. The project also required Make (script installer) to process the installation. The actual installation process after the prerequisites is quite simple.
- [Docker](https://www.docker.com/)
- [Make](https://www.gnu.org/software/make/)You should be able to install both the above requirements on almost all operating systems.
## Installation (local only)
Once the requirements are met. You can execute the following command to clone the repository and start the installation process.
``git clone https://github.com/Reloadly/sample-airtime-topup-platform.git && cd sample-airtime-topup-platform && cp .env.example .env && make install``
Just executing the above command should clone the whole repository into `sample-topup-project` folder and start the installation process.
Once installation is done the project will run on your localhost (port 80) or on which ever IP you server holds.
After completion you can open the project url (localhost or server ip/domain) and simply login using the default credentials
## Recommended Server Installation (Docker and Make)
As this repository is built for both local deployment and server deployment. If you are doing server deployment YOU SHOULD ALWAYS change the credentials for root user and database in the `.env` file before running the `make install` command. For server you should not use the one line code but rather the following steps.
1- Clone the repository (`git clone https://github.com/Reloadly/sample-airtime-topup-platform.git`)
2- cd into project folder (`cd sample-airtime-topup-platform`)
3- Make .env file (`cp .env.example .env`)
4- Edit the .env file( Change root password, database, database user, database user password based on server and database details)
5- Install the project (`make install`)## Recommended Server Installation (cPanel without Docker without Make)
As this repository is built for both local deployment and server deployment. If you are doing server deployment YOU SHOULD ALWAYS change the credentials for root user and database in the `.env` file before running the `make install` command. For server you should not use the one line code but rather the following steps.
1- Clone the repository (`git clone https://github.com/Reloadly/sample-airtime-topup-platform.git`)
2- Change the document root of the account to the public folder inside project. So if your project dir is "/home/something/sample-airtime-topup-platform" The document root should be "/home/something/sample-airtime-topup-platform/public"
3- cd into project folder (`cd sample-airtime-topup-platform`)
4- Make .env file (`cp .env.example .env`)
5- Edit the .env file( Change root password, database, database user, database user password based on server and database details)
6- Install the project dependencies(`composer install`)
7- Create Database with migrations (`php artisan migrate`)
8- Seed the new database with default data (`php artisan db:seed`)
9- Install Passport to manage authentication (`php artisan passport:install`)## Default Credentials
#### System Admin User
```
Email: [email protected]
Password: admin
```#### Database Users For Docker
```
Root Username: root
Root Password: rstp_2as1aszx_bassword@ass
``````
Non-Root Username: rstp_db_user
Non-Root Password: rstp_db_user@rstp@123@A
```## Useful Commands
(execute within the sample-topup-project folder)
You can stop the project at any time using the below command
``make stop``
You can start the project using the bellow command
``make start``
You can restart the project using the bellow command
``make restart``
You can install the project using the bellow command
``make install``
## Advanced Users
The system creates and installed two docker containers. One for MySQL (Using Maria-db. container) No port for this container is opened due to security issues. However, this container does provide an internal port (3306) which you may or may not want to open to allow access from outside network. This can be achieved by tinkering into the `docker-compose.yml` file.
In regard to how the web server is build. The system creates an apache-based container on (php 7.3) the build is made specific to the requirements of the project and complete details of this build can be found within the `DockerFiles\Dockerfile` file. By default, the configuration opens the 80 port on the physical machine for direct access. However, if you want to open the system on a specific port you can change this in the docker-compose file.
Please note that if you are using this system on an open environment accessible to the world, It is highly advised to change these credentials. You can change these in the `docker-compose.yml` and `.env` file. Once these are changed you will be required to remove the `volumes` directory if it was created and then run 'make install' again to reinstall the system based on the new credentials.
## Video Tutorial
- Installation Process Video ([Youtube Video 1](https://youtu.be/pBJ9KrZcGeA))
- After Installation Steps ([Youtube Video 2](https://youtu.be/FRzB6tblauw))