This application (called 🦎 GAD) was prepared and developed only for testing purposes. It provides:
- GUI
- REST API
- Swagger Doc
This application contains simple logic, statistics, charts, games, different resources, deliberately prepared bugs🐛 and various challenges.
Thanks to this configuration, we are able to reflect real project reality😉
P.S. In addition, the application has some serious design flaws - I wonder if you will notice them?😉
Features of 🦎 GAD:
- GUI (front-end)
- REST API (back-end)
- Swagger Doc
- Simple DataBase (JSON) with REST API endpoints to clear/restore all data
- Authentication and Authorization
- User <-> resources logic (calculations, statistics)
- Different data presentation (charts, tables etc.)
- Feature flags configurable from UI!
- Bug flags to enable/disable different bugs - configurable from UI!
- Dynamic config
- Challenging elements for test automation (iframes, file uploads, drag&drop, likes, labels, surveys, banners, pop-ups, logic on front-end and back-end, dynamic elements, games etc.)
- Admins "backoffice" with additional tools and functionalities (DB reset, SQL Playground)
Instructions how to deploy presented service to various free hosting sites.
Requirements:
- node.js installed in the system
- tested on node.js v18 and v20
- git installed in the system
Steps:
- Open the project root directory in cmd/terminal
- Clone the repository using
git clone ...
- this is the preferred way to use this application
- Run
npm i
- to install modules (don't use node.js global packages!)
- Run
npm run start
- to start GAD
The application will be available at http://localhost:3000
Steps:
- Open the project root directory in cmd/terminal
- Pull latest changes using
git pull
- Run
npm i
- to install new modules
- Run
npm run start
- to start GAD
One possibility is to reset all Your local changes and pull new version.Using this method You will lose all Your local changes and data!
Steps:
- Open the project root directory in cmd/terminal
- Reset local changes and pull latest changes using:
git reset --hard HEAD git pull
- Run
npm i
- to install new modules
- Run
npm run start
- to start GAD
This mode disables all POST, PUT, and PATCH methods, besides login.
To run GAD in Read Only mode, use the following commands:
PowerShell:
$env:READ_ONLY=1; npm run start
Bash:
READ_ONLY=1 npm run start
GAD runs on default port 3000
.
To run GAD on selected port, use the following commands:
PowerShell:
$env:PORT=3001; npm run start
Bash:
PORT=3001 npm run start
No account needed - but your project will be deleted in 5 days.
After clicking button below wait a minute or two to finish deployment.
To see website:
- go to bottom buttons
- click
🔎PREVIEW
- choose
👯Preview in a new window
- Create free account on: https://dashboard.render.com/register
- After successful registration hit the button:
- name your app
- hit
Apply
- wait a while and click link to project
GUI API Demo
- click link to open app (under project name and repository)
- enjoy 750 free hours of service per month
This method can be used:
- locally
- in CI/CD services (GitHub Actions, GitLab CI etc.)
On local environment:
- latest Docker is installed
Just run following command to get latest image:
docker run -p 3000:3000 -d jaktestowac/gad
or specific version:
docker run -p 3000:3000 -d jaktestowac/gad:2.5.5
Application should be running under http://localhost:3000/
Images are available at: 🐋 hub.docker.com/repository/docker/jaktestowac