Platform Prerequisites
Before building or integrating applications on the Milesoft Platform, you must configure your local workstation with two essential command-line tools. These utilities handle secure repository access, identity management, and platform administration.
1. Workstation & Core Toolset
We utilize a modern development environment and a dual-CLI strategy to keep infrastructure-level operations separate from platform-level configurations.
1.1 Local Development Environment
Before initializing or compiling a project, ensure your local workstation meets the following runtime specifications:
- Java Development Kit (JDK) 17+: Spring Boot 3.x and the Milesoft core stack are compiled with Java 17 bytecode compatibility. We highly recommend Azul Zulu or Eclipse Temurin. Verify your local environment and
JAVA_HOMEvariable:java -version echo $JAVA_HOME - Gradle 8.0+: Our standard microservice and backend application scaffolds use Gradle for dependency management and compilation. (Projects bootstrapped by our CLI come with a pre-configured Gradle Wrapper (
./gradlew)).
2. Command Line Interfaces (CLIs)
2.1 Google Cloud CLI (gcloud)
The gcloud utility serves as our primary security and transport layer. Because Milesoft libraries are hosted securely in Google Cloud Artifact Registry, the local build plugins (such as Gradle or Maven) leverage gcloud's credential helper to fetch short-lived authorization tokens.
- Primary Use Case: Authenticating with Maven repositories, pulling private SDK dependencies, inspecting system logs, and executing secure deployments.
- Installation: Refer to the official Google Cloud CLI Installation Guide to download and install the package manager for your operating system.
- Authentication:
# Authenticate primary developer identity gcloud auth login # Generate local Application Default Credentials (ADC) for build tools gcloud auth application-default login
2.2 Milesoft CLI (milesoft)
The milesoft CLI is our specialized, high-performance administrative bridge. It allows human developers and automated AI agents (via the Model Model Context Protocol server mode) to interact directly with the Milesoft gateway APIs.
- Primary Use Case: Bootstrapping a brand new backend project (
milesoft init <app-name>), switching active application contexts, provisioning tenant accounts, updating email/MFA credentials, compiling Liquid template libraries, and configuring OAuth integrations. - Installation:
# Install the native CLI binary using our universal installer script curl -fsSL https://milesoft.io/cli/install.sh | sh - Authentication: Authenticate securely in the terminal. The CLI will prompt you through email, password, and MFA challenge steps, caching short-lived access tokens and securing refresh keys natively in your OS Keychain:
# Establish your administrative session securely milesoft login
3. Typical Development Workflow
When working on a Milesoft application, both CLIs and your local build environment are used in tandem:
- Authorize GCloud Repository: Run
gcloud auth application-default loginso your local Gradle/Maven build tool can successfully pull dependencies from our secure Artifact Registry. - Authorize Milesoft Gateway: Run
milesoft logininside your terminal to establish an active administrative session with the central gateway. - Bootstrap Your Project: Execute the bootstrap command to generate a pre-configured, production-ready Spring Boot microservice structure:
milesoft init my-innovative-app - Configure & Synchronize Environment: Use commands like
milesoft settings app getormilesoft template listto verify templates or sync parameters of your target app.
4. Next Steps
With your CLI environment and Java runtimes fully configured, proceed to:
- Platform Architecture Overview — Understand the service topology, multi-tenant isolation, and core integration flows of the Milesoft Platform.
- Artifact Registry Setup — Learn how Gradle resolves Milesoft SDKs and platform libraries under the hood.
- Getting Started Guide — Dive into building your first application, configuring properties, managing secrets with Secret Manager, and extending base configurations.