How
Small plugins, big purposes
This feature available since:
Stay updated and enjoy more convenience!
During deep development of our projects, there are always some requirements that are hard to categorize clearly. Solving them using traditional methods can be tricky, but sometimes a different perspective makes the solution straightforward.
The built-in mini-plugins in Apihug are designed exactly for solving these small issues. With each new version of the IDEA plugin, they will bring you little surprises and small joys during daily development — hopefully adding some fun to your everyday coding experience.
HOP: Health-oriented programming :-)
hope.optional
This plugin introduces support for Maven-style optional dependencies by creating a new configuration
named optional
. Dependencies added to this configuration are included in the project’s compile and runtime
classpaths, but they do not propagate to dependent projects.
This behavior is particularly useful when you want to include certain dependencies for internal use without forcing downstream consumers to include them unnecessarily.
When using the shared template file spring.lib.gradle
, apply the plugin as follows:
apply plugin: "hope.optional"
//or use it standalone:
//id "hope.optional"
optional(libs.spring.context)
This concept was inspired by Spring Framework’s implementation: OptionalDependenciesPlugin
hope.router
This plugin automates the generation of frontend routing structures by scanning the source files in a
designated pages
directory.
It eliminates the need for manual route configuration by detecting page components and dynamically generating a
structured routing file (e.g., router.js
or routes.ts
) based on the folder hierarchy.
For usage examples and detailed configuration instructions, please refer to the frontend documentation:
👉 Vue Router Integration Guide
Sure! Here’s an optimized version of your text while preserving the original style and meaning:
hope.rename
This plugin helps rename package names. As Apihug maintains consistency between proto and implementation package
names,
renaming packages can be a painful process. This plugin aims to relieve that burden.
-DpkgRename
– Specifies how to rename the package from old to new; format: {old}-{new}
-DpkgRename="com.abc-com.xyz"
-DskipModules
– Comma-separated list of modules to skip-DskipModules="module-a,module-b"
⚠️ Important: This plugin makes significant changes. Please BACK UP your project before execution.The results may still require some manual adjustments to ensure full consistency.