Project image

GoKidz Amusement Park

The interactive system of engagement/play kiosks encourages active play and turns traditional amusement parks into one-of-a-kind destinations. Combining innovative technological infrastructure with a fun-filled experience. We make children's active time fun at its best.

    Technologies
  • Java
  • React
  • JavaScript
    Team size
  • 2
    Team size
  • 6 months

The interactive system of engagement/play kiosks encourages active play and turns traditional amusement parks into one-of-a-kind destinations. Combining innovative technological infrastructure with a fun-filled experience. We make children's active time fun at its best.

Management methodology: Working from an agile model using Scrum methodology. We provided the client with transparency in the work performed.

Problem definition: Upgrading the existing system at the amusement park to more strongly engage users and encourage active play. By creating animations, adding gamification elements and refreshing the existing interface.

Requirements: Time, budget, transparency of the workflow, cyclical presentation of the work, working in an Agile model to be prepared for improvements, integration with the existing system supporting the game logic and external devices based on RFID and NFC technology, core functionality of the application should be ready for changes

Technology: React.js v17.0, Node.js v16.0, Python 3.10, RestAPI for communication with .NET backend, communication with the node server via EventStream (?), optimization of "heavy" animations by creating image sequences ability to run any instance of the application on any kiosk (interchangeability, "swappability") caching of the application through a service-worker to minimize the computing power of the browser and eliminate the need to repeatedly download large amounts of Internet resources

The application's architecture was designed primarily in a way that ensures the interchangeability of kiosks. This means that all instances of the application (each instance is personalized for one kiosk) can be run on any kiosk.

Among the interesting proprietary solutions, it is worth mentioning the optimization of complex animations by converting it into a sequence of images and then displaying them at appropriate time intervals, or, for example, saving the application in the browser cache (cache) to speed up its operation. Optimal performance of the application was both a difficult and very important task, due to the limited hardware capabilities of the production environment. (I mean, the computers are weak). Support for external devices, such as RFID readers and NFC, was solved by implementing a server that listens for signals, records user identification data (wristband id) from the devices, and then sends it to the application via streaming communication (EventStream).

Testing: Running the application in a test environment, checking integration with the backend system Verification of functionality by stakeholders After approval, we installed the application at the theme park, where we underwent user testing in the target environment

Let's talk about your project. We will be happy to contact you and think together about how to help you