Skip to main content

Tech radar

The Dynatrace Tech Radar is a comprehensive and visualized guide on the latest trends, tools, and best practices within the Dynatrace AppEngine community, helping developers and teams make informed decisions.

  • ADOPT — Battle-tested technologies in production environments and at large scale. Everything in this ring is a solid choice, proven low-risk, and mature.
  • TRIAL — Technologies that are more risky and not as proven as those in the ADOPT ring. Use with discretion to confirm benefits or unveil limitations.
  • ASSESS — Technologies worth keeping an eye on. Usually brand new or unproven, we recommend a thorough assessment before adopting.
  • HOLD — Technologies we have tried with little success or think are not worth further investing in. Avoid using technologies in this ring for new projects.

techniques

adopt

  1. Design TokensDesign tokens are the primitive pieces for a design language and system. Use them to share information across various channels and user groups. They help create a cohesive experience.
  2. Compound components patternBuilding React components using this pattern allows for easy composition with a clear connection between the smaller parts of your components.
  3. API proposals & RFC documentsUse API proposals and RFC (Request for Comment) documents to gather early feedback about new features.
  4. Inner source approachesFollow inner source approaches like using RFCs (Request for Comment) or enabling contributions with clear contribution guidelines in your repositories or projects. This allows colleagues to weigh in and help scale the project.

trial

  1. MonoreposA monorepo is a single repository containing multiple distinct projects with well-defined relationships.

assess

(empty)

hold

(empty)

tools

adopt

  1. npmPackage manager for the Node.js ecosystem. Widely used across the industry.
  2. changesetsA tool to manage versioning and changelogs focusing on monorepos. Handles complex scenarios during releasing, cross-package dependencies, multiple changelogs, and changesets affecting multiple packages.
  3. NxExtensible build system geared towards monorepos, with a long list of integrations.
  4. React Testing LibraryTesting library focused on testing components and apps from a user's perspective.
  5. JestA JavaScript unit testing framework.
  6. PlaywrightEnd-to-end testing framework.

trial

(empty)

assess

  1. VitestA fast and modern unit testing framework. Alternative to Jest.

hold

  1. TestCafeEnd-to-end testing framework.

platforms

adopt

  1. Dynatrace App ToolkitThe Dynatrace App Toolkit allows you to conveniently interact with the Dynatrace AppEngine. It provides a local development environment, authentication for your tenant, and helpers for building, testing, and deploying your apps.
  2. Dynatrace Apps VSCode ExtensionExtension to the Dynatrace App Toolkit for a more convenient developer experience.
  3. Dynatrace SDKThe Dynatrace SDK packages provide access to the Dynatrace Platform.
  4. Strato Design SystemThe Dynatrace Strato Design System enables the quick development of applications on the Dynatrace App Engine. It has a rich set of components engineered to make apps fast, accessible, and have a great user experience.
  5. Dynatrace GrailGrail is the Dynatrace database designed explicitly for observability and security data. It acts as a single unified storage solution for logs, metrics, traces, events, and more. All data stored in Grail is interconnected within a real-time model that reflects the topology and dependencies within a monitored environment.
  6. App functionsUse app functions in your apps to extend their functionality. The Dynatrace platform provides the infrastructure and runtime.
  7. JenkinsAn open source automation server that enables developers worldwide to build, test, and deploy their software reliably.
  8. SnykSnyk is a developer security platform that integrates directly into development tools, workflows, and automation pipelines

trial

(empty)

assess

(empty)

hold

(empty)

languages & frameworks

adopt

  1. Dynatrace Query Language (DQL)Dynatrace Query Language (DQL) is a powerful tool to explore your data and discover patterns, identify anomalies and outliers, create statistical modeling, and more based on data stored in Dynatrace Grail.
  2. ReactA JavaScript library for building user interfaces, and the library of choice for the Dynatrace AppEngine.
  3. React QueryPowerful asynchronous state management for React.
  4. ZustandA small, fast and scalable barebones state management solution using simplified flux principles.
  5. TypeScriptTypeScript is a strongly typed programming language that builds on JavaScript, giving you better tooling at any scale.
  6. ZodTypeScript-first schema validation with static type inference. Zod is a great way to ensure that results from external APIs are valid. Use it when you often need to work with external APIs. If you communicate with your own backend or the Dynatrace APIs, you can rely on types instead.
  7. date-fnsJavaScript date library for manipulating JavaScript dates in a browser and Node.js

trial

  1. JotaiPrimitive and flexible state management for React.
  2. React FlowJavaScript library for building Node-based visualizations in React.
  3. D3JavaScript library for building data driven visualizations. Use it in combination with React to generate SVG or Canvas-based visualizations.

assess

  1. CSS modulesLocally scoped class and animation names in CSS. Use them for apps that require few styles on top of the Strato design system. Alternatively, consider importing CSS files if you don't need local scoping.
  2. TailwindUtility-first CSS framework.
  3. Vanilla ExtractZero-runtime stylesheets in TypeScript. Extracted at build time. Type-safe CSS. Use when creating complex apps, and more extensive styles are required.

hold

  1. ReduxRedux is a predictable state container for JavaScript apps fallen out of favor in the community due to the amount of boilerplate. Opt for smaller more flexible state management libraries like Zustand or Jotai.
  2. Emotion CSSPowerful CSS-in-JS library. Prefer libraries with less runtime impact.
  3. styled-componentsPowerful CSS-in-JS library. Prefer libraries with less runtime impact.
Still have questions?
Find answers in the Dynatrace Community