
JOpt.TourOptimizer is an enterprise optimization engine for route planning, scheduling, and resource allocation across logistics, transportation, dispatch, and field service operations. It is built for organizations that need to solve complex planning problems under real-world business constraints rather than simple consumer-grade route calculation. The platform supports vehicle routing and scheduling scenarios such as VRP, CVRP, VRPTW, pickup and delivery, multi-depot planning, heterogeneous fleets, and workforce scheduling.
JOpt.TourOptimizer can model time windows, working hours, visit durations, capacities, skills and expertise levels, territories, zone governance, overnight stays, alternate destinations, and custom business rules. This makes it suitable for production deployments where feasibility, transparency, and operational reliability matter. It is designed to generate practical plans that help teams balance travel time, service commitments, workload distribution, and operational cost in demanding enterprise environments.
The solution is available both as an embedded Java SDK and as a Docker-based REST API with OpenAPI and Swagger support. This allows software vendors, enterprise developers, and system integrators to embed advanced optimization into TMS, ERP, CRM, WMS, dispatch systems, customer platforms, and field service applications. With support for scalable integration and modern service architectures, JOpt.TourOptimizer helps organizations improve planning efficiency, service quality, SLA compliance, transparency, and operational resilience at scale. It also supports enterprise integration strategies that require reproducible optimization runs, structured outputs, and flexible deployment models.
Learn more

SurveyJS is a set of four open-source JavaScript libraries that offer the benefits of a tailor-made in-house survey application, while considerably reducing the time and resources needed to deploy the system. These libraries are independent of specific server code or database requirements and seamlessly integrate with popular JavaScript frameworks, including React, Angular, Vue.js, jQuery, Knockout, and more. They are designed to communicate with any server that can handle JSON requests, ensuring compatibility with various server architectures and databases.
The product family is composed of:
- An open-source MIT-licensed rendering library that renders dynamic JSON-based forms in your web application, and collects responses.
- A self-hosted drag & drop form builder that features an integrated CSS-based theme editor and a GUI for conditional rules. It automatically generates JSON definitions (schemas) of your forms in real time.
- PDF Generator, a library that renders SurveyJS surveys and forms as PDF files in a browser;
- The Dashboard library that allows you to simplify survey data analysis with interactive and customizable charts and tables.
Visit our website to try out and evaluate our full-scale demo for free.
Learn more
jQuery
jQuery is a lightweight and powerful JavaScript library that offers a plethora of features. It simplifies tasks such as manipulating and traversing HTML documents, handling events, creating animations, and making Ajax calls through a user-friendly API that is compatible with various web browsers. For those who are just starting with jQuery, it allows you to return a collection of matched elements that are either retrieved from the DOM using specified criteria or generated by providing an HTML string. Additionally, it is important to note that certain methods of the API have been deprecated in the latest versions of jQuery, affecting how developers interact with DOM attributes of elements. Familiarizing yourself with these changes is essential for effective jQuery usage.
Learn more
waiting
Waiting is a compact library designed to facilitate the process of waiting for specific conditions to be met. It fundamentally pauses execution until a designated function returns True, offering various operational modes. Additionally, Waiting is designed to work seamlessly with flux for simulating timelines. The simplest way to utilize it is by providing a function to monitor. It’s straightforward to wait indefinitely; if your predicate yields a value, that value will be returned as the output of wait(). You can also set a timeout, and if this period lapses without the predicate being satisfied, an exception will occur. The library polls the predicate at a default interval of one second, which can be adjusted using the sleep_seconds parameter. When dealing with multiple predicates, Waiting offers two efficient methods for aggregation: any and all. These methods are similar to Python's built-in any() and all(), but they ensure that a predicate is not invoked more than necessary, which is particularly beneficial when working with predicates that are resource-intensive and time-consuming. By streamlining these functions, Waiting enhances both the efficiency and user experience of handling asynchronous operations.
Learn more