Skip to main content

📋 Update Log

Last Updated: 2026-02-12

This page records the update history of Rabetbase documentation.


2026-02-12​

Documentation Restructure​

  • 📝 Enhanced menu update command documentation - Added iterative update workflow instructions

Lovrabet CLI​

  • ✨ i18n Internationalization Support - v1.3.3 adds internationalization capabilities

    CLI now supports multi-language switching, enhancing global user experience:

    # Switch display language
    lovrabet config set locale en # English
    lovrabet config set locale zh # Chinese (default)

    Core Features:

    • Built-in Chinese and English support
    • All prompt messages and documentation support multiple languages
    • Easy to extend with new languages

Lovrabet SDK​

  • ✨ Filter Multi-table Query Support - Filter API now supports cross-table relational queries

    Implement table joins without writing SQL, using dot notation for automatic association:

    const result = await client.models.orders.filter({
    // Use dot notation in select to get related table fields
    select: [
    "id",
    "order_date",
    "total_amount",
    "customer.name", // Related customer name
    "customer.phone", // Related customer phone
    "customer.company", // Related customer company
    ],
    // Dot notation also works in where
    where: {
    status: { $eq: "completed" },
    "customer.is_signed": { $eq: true }, // Only signed customers
    },
    // orderBy also supports dot notation
    orderBy: [{ order_date: "desc" }, { "customer.name": "asc" }],
    currentPage: 1,
    pageSize: 20,
    });

    // Results automatically include related data
    result.tableData.forEach((order) => {
    console.log(order.customer?.name); // Direct access to related fields
    });

    Core Features:

    • Use table_name.field_name syntax, no additional configuration needed
    • Automatic LEFT JOIN, ensuring main table data is preserved
    • Works in select, where, and orderBy
    • Supports up to 5 levels of nested associations
    • Field selection reduces data transfer
    • Fully compatible with filter conditions and sorting

    👉 Filter API Complete Guide


2026-01-26​

Lovrabet SDK​

  • ✨ New Model Alias Configuration Documentation - Detailed guide on human-friendly model access

    Core Features:

    • Use aliases instead of complex datasetCode to access datasets
    • CLI auto-generates configuration, no manual writing needed
    • Complete TypeScript type support

    Access Method Comparison:

    // Using alias (Recommended) - Clear and readable
    const orders = await client.models.orders.filter();
    const customers = await client.models.customers.filter();

    // Using datasetCode - Less readable
    const orders = await client.models.dataset_8d2dcbae08b54bdd84c00be558ed48df.filter();

    CLI Auto-generation:

    lovrabet api pull

    Generated configuration includes:

    • datasetCode - Dataset unique identifier
    • tableName - Database table name
    • alias - Human-friendly alias (camelCase format)

    👉 Model Alias Configuration Documentation

  • 📝 BFF API Documentation Release - Complete BFF API usage guide

    BFF (Backend For Frontend) API is supported from v1.3.0:

    // Call backend function
    const result = await client.bff.execute({
    scriptName: 'calculatePrice',
    params: { productId: '123', quantity: 10 }
    });

    👉 BFF API Reference

  • 📝 Syntax Sugar Documentation Release - Complete guide for safe and sqlSafe

    Version Requirements:

    • safe function: v1.3.0+
    • sqlSafe function: v1.3.0+

    Simplified error handling:

    import { safe, sqlSafe } from "@lovrabet/sdk";

    // safe - Regular API
    const { data, error } = await safe(() => client.models.users.filter());
    if (!error) {
    console.log(data);
    }

    // sqlSafe - SQL queries
    const { data, error } = await sqlSafe(() =>
    client.sql.execute({ sqlCode: "xxx" })
    );
    if (!error) {
    console.log(`Found ${data.length} records`);
    data.forEach(row => console.log(row));
    }

    👉 Syntax Sugar Documentation

  • 📝 SQL API Change Note - Recommend using new namespace approach

    From v1.1.19, it's recommended to use client.sql.execute() instead of the old client.api.executeSql():

    // ✅ Recommended: Use client.sql namespace
    const data = await client.sql.execute({
    sqlCode: "fc8e7777-06e3847d",
    params: { userId: "123" }
    });

    // âš ī¸ Compatible: Old method still works
    const data = await client.api.executeSql("fc8e7777-06e3847d", {
    userId: "123"
    });

    👉 SQL API Usage Guide

Lovrabet Toolchain​

  • 🤖 AI Vibe Coding System - CLI, SDK, MCP trinity, fully empowering AI-assisted development

    Three Core Tools:

    ToolCore FeaturesUser Value
    Lovrabet CLIProject initialization, code generation, menu sync, AI integrationOne-click completion of tedious configuration, saving 80% initialization time
    Lovrabet SDKTypeScript SDK with CRUD, Filter, SQL, BFF four major APIsType-safe data access, reducing 60% interface debugging time
    Lovrabet MCPAI IDE dataset access capability, automatic code generationAI directly understands business models, code generation accuracy 90%+

    🔧 Lovrabet CLI (v1.2.5+) - Development Efficiency Multiplier

    # Project initialization
    lovrabet init # Quick appCode configuration
    lovrabet api pull # Auto-generate SDK config (api.ts)

    # AI integration (New)
    lovrabet mcp install --cursor # Configure Cursor MCP
    lovrabet skill install --cursor # Install development standards Skill

    # Menu management
    lovrabet menu sync # Sync local pages to platform menu

    User Value:

    • ⚡ Quick Start: New project configured in 5 minutes, not 1 hour of manual setup
    • đŸŽ¯ Zero Configuration Errors: Auto-generated config files, avoiding appCode, datasetCode typos
    • 🔄 Auto Sync: One-click menu sync, no need to manually create on platform
    • 🤖 AI Ready: One-click install MCP and Skill, AI immediately understands project structure

    đŸ“Ļ Lovrabet SDK (v1.3.0+) - Type-Safe Data Access Layer

    // CRUD operations
    const users = await client.models.users.filter({ status: 'active' });
    const user = await client.models.users.create({ name: 'Alice' });

    // Advanced queries (Filter API)
    const result = await client.models.orders.filter({
    where: { amount: { $gte: 100, $lte: 500 } },
    select: ['id', 'amount', 'status'],
    orderBy: [{ createTime: 'desc' }]
    });

    // Custom SQL (SQL API)
    const stats = await client.sql.execute({
    sqlCode: 'user-stats',
    params: { startDate: '2025-01-01' }
    });

    // Backend functions (BFF API)
    const price = await client.bff.execute({
    scriptName: 'calculatePrice',
    params: { productId: '123', quantity: 10 }
    });

    User Value:

    • đŸ›Ąī¸ Type Safety: TypeScript hints throughout, catching 90% of errors at compile time
    • 🚀 Development Speed: Unified API style, no need to memorize multiple interface specifications
    • 🎨 Flexible Queries: Filter API supports complex conditions, no need to write SQL
    • 🔌 Business Decoupling: BFF API encapsulates complex logic, frontend focuses on UI

    🧠 Lovrabet MCP - AI's Dataset Knowledge Base

    Enables AI IDEs (Cursor, Claude Code, Windsurf) to:

    • 📊 Understand Data Models: Direct access to dataset fields, types, enum values, relationships
    • 🤖 Generate Accurate Code: Generate SDK call code based on real metadata, 100% correct field names
    • 🔍 Smart SQL Creation: 5-step workflow (validate→confirm→save→test→generate), preventing SQL errors
    • 📝 Follow Standards: Skill guides AI to follow project development standards (API usage, UI standards, error handling)

    Lovrabet Skill Six Modules:

    ModuleFeaturesTechnical ValueBusiness Value
    TypeScript SDK UsageComplete Filter, SQL, BFF usageReduce API misuseLower 30% debugging time
    MCP SQL WorkflowMandatory validation processPrevent SQL errorsAvoid production data issues
    AntD UI StandardsAvoid "AI-flavored" codeUnified UI styleReduce UI rework
    API Integration GuideStandardized call patternsImprove stabilityShorten 50% integration time
    Menu ManagementAutomated syncAvoid configuration errorsImprove ops efficiency
    BFF Script StandardsBest practicesImprove maintainabilityReduce technical debt

    Supported AI IDEs:

    • Cursor (.cursorrules + .cursor/skills/)
    • Windsurf (.windsurf/workflows/)
    • Claude Code (.claude/skills/)
    • Codex, OpenCode, Qoder, CodeBuddy, Trae

    Overall Business Value:

    • 📈 Development Efficiency Increased 3-5x: AI auto-generates code, reducing 60-80% repetitive work
    • đŸŽ¯ Learning Cost Reduced 70%: New developers onboard in 1 day, no need to deeply learn all APIs
    • đŸ›Ąī¸ Error Rate Decreased 80%: AI follows standards, avoiding common errors (SQL injection, field typos, etc.)
    • ⚡ Delivery Cycle Shortened 40%: From requirements to launch, development time significantly compressed
    • 🔄 Code Quality Improved: Unified style, smoother team collaboration, more efficient code reviews

    👉 CLI Command Reference | SDK Quick Start | MCP Configuration Guide

  • 📝 Skill Installation Directory Correction - Cursor skills install to .cursor/skills/ not .cursor/commands/

    Correct File Structure:

    your-project/
    ├── .cursorrules # Cursor general rules
    ├── .cursor/
    │ └── skills/ # Cursor skills ✅
    ├── .windsurf/
    │ └── workflows/ # Windsurf workflows
    ├── .claude/
    │ └── skills/ # Claude Code skills
    └── .lovrabet/
    └── skill/ # Shared guides

    Installation Command:

    lovrabet skill install --cursor

    👉 Skill Installation Documentation

Documentation Internationalization​

  • 🌐 Completed English Translation - All new and updated documentation synchronized to English version

    New English Documentation:

    • Model Alias Configuration
    • BFF API Reference
    • Syntax Sugar
    • Skill Installation

    Updated English Documentation:

    • API Usage Guide - Added BFF API and SQL API change notes
    • All version numbers corrected to v1.3.0

    Access English Version:

    • Visit /en/ path in browser
    • Or use language switcher in top right corner

2026-01-02​

Lovrabet SDK​

  • 🤖 AI-Friendly Error Handling - v1.2.5 enhanced LovrabetError, added description field

    Optimized error messages for AI Coding scenarios, helping LLMs understand error causes and provide fix suggestions:

    try {
    await client.models.users.create({ invalid_field: 'value' });
    } catch (error) {
    if (error instanceof LovrabetError) {
    console.log(error.message); // "Column invalid_field does not exist"
    console.log(error.code); // "SERVER_ERROR"
    console.log(error.description);
    // "Server returned error: Column invalid_field does not exist. Error type: Parameter error. Status code: 400.
    // Suggestion: Field "invalid_field" does not exist, please check if the field name is spelled correctly;
    // Use MCP tool to get the correct field list for the dataset"
    }
    }

    Covered Error Types:

    • MODEL_NOT_FOUND - Model does not exist, provides available model list
    • CONFIG_NOT_FOUND - Configuration does not exist, provides registered configuration list
    • SERVER_ERROR - Server parameter error, provides field fix suggestions
    • 401 Insufficient permissions - Login expired/appCode unauthorized/HTTPS/CORS and other suggestions
    • TIMEOUT - Request timeout, provides timeout configuration suggestions

2025-12-29 🎉 v1.2.0 Major Release​

Lovrabet SDK v1.2.0​

  • ✨ Model Access Method Upgrade - Supports standard and alias methods

    // Standard method (Recommended) - Uses dataset_ prefix + datasetCode
    // Globally unique, convenient for AI tool code generation
    const users = await client.models.dataset_8d2dcbae08b54bdd84c00be558ed48df.filter();

    // Alias method (Syntactic sugar) - Uses configured alias
    // Convenient for human reading, functionally identical to standard method
    const users = await client.models.users.filter();

    Alias is just a pointer, internally still uses datasetCode for access, all features are the same as standard method.

  • ✨ Configuration Structure Redesign - Optimized for AI invocation, redesigned registerModels function parameter structure

    registerModels({
    appCode: "your-app-code",
    models: [
    {
    datasetCode: "8d2dcbae08b54bdd84c00be558ed48df",
    tableName: "users",
    alias: "users", // Optional: Model alias, syntactic sugar
    name: "User Table", // Optional: UI display name
    },
    ],
    });

    New structure is centered on datasetCode as the core identifier, more AI-friendly, generated code is more standardized.

  • ✨ Model Manager Enhancement - Added multiple management methods

    // Get all model details
    const details = client.getModelListDetails();
    // Returns: [{ datasetCode: '8d2dcbae08b54bdd84c00be558ed48df', alias: 'users', name: 'User Table' }, ...]

    // Dynamically add model
    client.addModel({
    datasetCode: 'f7e6d5c4b3a2901234567890fedcba98',
    tableName: 'products',
    alias: 'products'
    });
  • ✅ Fully Backward Compatible - All existing code runs without modification

    👉 SDK Configuration Guide | Quick Start

Lovrabet CLI v1.2.0​

  • ✨ SDK Version Compatibility Check - Automatically detects @lovrabet/sdk version in the project at startup

    • Displays yellow warning to upgrade if version below 1.2.0 is detected
    • Ensures access to latest features like model aliases
  • ✨ API Configuration Structure Optimization - Generated configuration is more AI-friendly, supports model aliases

    // api.ts generated by v1.2.0+
    export const LOVRABET_MODELS_CONFIG = {
    appCode: 'my-app',
    models: [
    {
    datasetCode: '8d2dcbae08b54bdd84c00be558ed48df',
    tableName: 'users',
    alias: 'users', // Model alias, convenient for code reading
    name: 'User Management', // UI display name
    },
    ],
    } as const;

    👉 CLI Command Reference

Lovrabet MCP v1.2.0​

  • ⚡ Significant Performance and Stability Improvements - Full upgrade of underlying architecture, faster response, more stable operation

  • ✨ Further Reduction of AI Hallucinations - Provides more precise field metadata (database type, length, auto-increment, etc.), helping AI generate more accurate code

  • ✨ SDK/CLI Version Compatibility Guidance - Generated code automatically prompts SDK version requirements, guiding users to upgrade to 1.2.0+ to use new features like alias access

    👉 MCP Service Documentation


2025-12-03​

Lovrabet SDK​

  • ✨ New Excel Export Feature - v1.1.24 supports exporting datasets to Excel files

    Export data quickly with excelExport() method:

    // Export all data
    const fileUrl = await client.models.users.excelExport();
    window.open(fileUrl, '_blank');

    // Export with filter conditions
    const fileUrl = await client.models.users.excelExport({
    status: 'active',
    createTime: '2025-01-01'
    });

    Core Features:

    • Returns downloadable file URL (OSS address)
    • Supports passing filter conditions (ListParams)
    • Direct use of window.open() to open download
    • Only WebAPI mode (Cookie authentication) supported

    👉 API Usage Guide | Practical Examples


2025-11-21​

Lovrabet SDK​

  • ✨ Filter API Supports OpenAPI Mode - v1.1.22 extends filter() to full mode support

    Starting from v1.1.22, filter() method supports both OpenAPI mode and WebAPI mode:

    // Using filter in OpenAPI mode
    const client = createClient({
    appCode: "your-app-code",
    accessKey: process.env.LOVRABET_ACCESS_KEY,
    models: { users: { tableName: "users", datasetCode: "ds-001" } },
    });

    const result = await client.models.users.filter({
    where: {
    $and: [
    { age: { $gte: 18, $lte: 45 } },
    { country: { $in: ["China", "United States"] } },
    ],
    },
    select: ["id", "name", "age"],
    orderBy: [{ createTime: "desc" }],
    currentPage: 1,
    pageSize: 20,
    });

    Updates:

    • OpenAPI mode now supports filter() advanced filtering queries
    • Maintains consistent API interface with WebAPI mode
    • Supports all conditional operators and logical combinations

    👉 Filter API Complete Guide


2025-11-15​

Lovrabet SDK​

  • ✨ New Filter API Advanced Filtering Query - v1.1.21 supports more powerful data filtering capabilities

    Perform complex conditional queries via client.models.xxx.filter() method:

    // Range query + fuzzy search + field filtering
    const users = await client.models.users.filter({
    where: {
    age: { $gte: 18, $lte: 35 }, // Age 18-35
    username: { $contain: 'john' }, // Username contains john
    status: { $in: ['active', 'pending'] } // Status is active or pending
    },
    fields: ['id', 'username', 'age'], // Only return these fields
    sortList: [{ createTime: 'desc' }],
    pageSize: 20
    });

    Core Advantages:

    • Supports range queries ($gte, $lte)
    • Supports fuzzy matching ($contain, $startWith, $endWith)
    • Supports set operations ($in, $ne)
    • Supports complex logic ($and, $or)
    • Supports field filtering, reducing data transfer

    Use Cases:

    • Complex data filtering and search features
    • Multi-condition combined queries
    • Advanced data analysis and reporting

    👉 Filter API Complete Guide


2025-11-11​

Lovrabet SDK​

  • ✨ New SQL API Support - v1.1.19 supports executing custom SQL queries

    Execute custom SQL configured on the platform via client.api.executeSql() method:

    // Execute SQL query
    const data = await client.api.executeSql("fc8e7777-06e3847d");

    // Application layer checks execution results
    if (data.execSuccess && data.execResult) {
    data.execResult.forEach((row) => {
    console.log(row);
    });
    }

    Core Features:

    • Supports parameterized queries, preventing SQL injection
    • Complete TypeScript type support

    Use Cases:

    • Complex data statistics and aggregation queries
    • Cross-table relational queries
    • Custom report data retrieval
    • Flexible data analysis needs

    👉 Detailed Usage Guide


2025-11-04​

Lovrabet CLI​

  • ✨ New Menu Sync Command - v1.1.15 added lovrabet menu sync

    After completing new page development, sync to Lovrabet platform with one command, automatically create menus:

    lovrabet menu sync

    Core Features:

    • Automatically scan local src/pages directory, compare with platform menus
    • Visualize differences (green ✓ exists, red ✗ not created)
    • Batch create missing menus
    • Support configuring JS/CSS CDN links
    • Real-time URL format and reachability validation

    Use Cases:

    • Sync to platform after developing new pages
    • Batch manage multiple page menus
    • Ensure local and platform consistency

    👉 Detailed Usage Guide


2025-10-25​

OpenAPI Documentation​

  • 🐛 Fix terminology and example inconsistencies
    • Unified datasetId → datasetCode across the board
    • Unified environment variable name to LOVRABET_DATASET_CODE
  • 🎨 Optimize list return structure description
    • Clarified filter returns include paging/tableData/tableColumns
    • Aligned examples with descriptions, ready for direct copy and run

Lovrabet CLI​

  • 📝 Proofread command documentation
    • Confirmed and supplemented lovrabet api doc and --datasetcode, --params option descriptions (aligned with implementation)

Lovrabet SDK​

  • 📝 README example alignment
    • Unified examples to use datasetCode
    • Supplemented filter return structure reading examples (reading paging and tableColumns)

2025-10-18​

Lovrabet SDK​

  • ✨ New Select Options Interface - v1.1.18 supports quick retrieval of form option data

    • Added getSelectOptions() method for getting dropdown options from data tables

    • Returns standardized { label, value } format, directly applicable to frontend components

    • Automatically maps data table fields to option data

    • Suitable for Select, Radio, Checkbox, and other form components

    • Only WebAPI mode (Cookie authentication) supported

    • Example:

      // Get select options
      const options = await client.models.users.getSelectOptions({
      code: "user_id", // Field name used for option value
      label: "user_name", // Field name used for display text
      });

      // Return format:
      // [
      // { label: 'Zhang San', value: 'user001' },
      // { label: 'Li Si', value: 'user002' }
      // ]

      // Use in React
      <Select>
      {options.map((option) => (
      <Option key={option.value} value={option.value}>
      {option.label}
      </Option>
      ))}
      </Select>;
  • 📋 New Type Definitions - v1.1.17

    • SelectOption interface: { label: string, value: string }
    • SelectOptionsParams interface: { code: string, label: string }
  • âš ī¸ Clarified OpenAPI Mode Limitations - v1.1.18

    • OpenAPI mode does not currently support delete() operation
    • OpenAPI mode does not currently support getSelectOptions() operation
    • If you need these features, please use WebAPI mode (Cookie authentication) or develop custom API interfaces

Lovrabet CLI​

  • 🎨 Optimized Naming Convention - v1.1.13 improved code generation standards

    • Dataset name generation uses camelCase naming (lowercase first letter)
    • Conforms to JavaScript/TypeScript variable naming conventions
    • Examples:
      • order_items table → generates orderItems model (not OrderItems)
      • user_profile table → generates userProfile model (not UserProfile)
    • Ensures consistent style of generated code, improves code readability
  • 🔧 Code Generation Optimization - v1.1.13

    • Simplified model configuration generation logic
    • Improved code generation performance and maintainability

2025-10-17​

Lovrabet CLI​

  • ✨ New lovrabet init Command - v1.1.12 supports quick initialization configuration for existing projects

    • Add Lovrabet configuration support to existing projects

    • Interactive appcode input with real-time format validation

    • Automatically detect and prevent overwriting existing configuration files

    • Inherit global configuration, no need to repeat settings

    • Configuration file includes creation time and CLI version information

    • Usage example:

      # Interactive initialization
      lovrabet init

      # Directly specify appcode
      lovrabet init --appcode my-app-code
  • ✨ Enhanced lovrabet api doc - v1.1.12 supports on-demand generation and custom parameters

    • Added --datasetcode parameter: specify dataset to generate documentation

    • Supports multiple datasets (comma-separated)

    • Intelligent validation: automatically checks if specified dataset codes exist

    • Statistical feedback: shows number of matched datasets and invalid codes

    • Supports passing JSON format additional parameters via --params parameter

    • Usage example:

      # Generate documentation for all datasets
      lovrabet api doc

      # Generate documentation only for specified dataset
      lovrabet api doc --datasetcode ds_001

      # Generate documentation for multiple specified datasets
      lovrabet api doc --datasetcode ds_001,ds_002,ds_003

      # Pass additional parameters
      lovrabet api doc --params '{"customField": "value"}'
  • 📊 Optimized File Naming Strategy - v1.1.12 improved filename uniqueness

    • Extended short code from 4 to 6 digits
    • Reduced possibility of filename conflicts

2025-10-16​

Lovrabet SDK​

  • ✨ New List Sorting Feature - v1.1.16 supports multi-field combined sorting

    • Use SortOrder enum to control ascending/descending order

    • Supports multi-field priority sorting

    • Compatible with both OpenAPI and WebAPI modes

    • Example:

      import { SortOrder } from "@lovrabet/sdk";

      const users = await client.models.users.filter(
      { currentPage: 1, pageSize: 20 },
      [
      { priority: SortOrder.DESC }, // Priority descending
      { createTime: SortOrder.DESC }, // Create time descending
      { name: SortOrder.ASC }, // Name ascending
      ]
      );
  • 🔧 ModelConfig Interface Enhancement - Added optional name field, improved configuration flexibility

  • 🐛 Debug Feature Optimization - v1.1.14 added debug logging feature

    • Supports outputting complete HTTP request details (URL, Headers, Body)
    • Enable via options.debug: true
    • Convenient for troubleshooting API call issues

Lovrabet CLI​

  • ✨ Dataset Management Optimization - v1.1.10 comprehensively improved data management capabilities

    • Intelligent deduplication mechanism: automatically identify and remove duplicate datasets
    • Optimized SDK data retrieval page templates, streamlined UI components
    • Enhanced table data processing capabilities, improved performance
  • 📄 API Documentation Generation - Added automatic API documentation generation feature

    • Automatically generate API usage documentation from datasets
    • Provide complete interface descriptions and example code
    • Support custom documentation templates
  • 📊 Log System Enhancement - CLI log tracking capabilities fully upgraded

    • Full process tracking of command execution
    • Enhanced error localization capabilities
    • Support log level filtering
  • đŸŽ¯ User Experience Optimization

    • Improved API configuration management workflow
    • Optimized interactive prompts
    • Improved command response speed

2025-10-12​

Java OpenSDK​

  • ✨ New Complete Java OpenSDK documentation system

    • 📖 Quick Start - Complete your first CRUD program in 5 minutes
    • 📚 Core Concepts - SDK working principles and authentication mechanism explained in detail
    • 📋 API Reference - Complete interface documentation and parameter descriptions
    • 💡 Business Examples - 5 complete implementations of real scenarios (customer management, order sync, data dashboard, data middle platform, scheduled tasks)
    • 🚀 Best Practices - Production environment deployment and performance optimization guide
    • ❓ FAQ - Covers troubleshooting for installation, configuration, and full development workflow
  • 🎨 Optimized Documentation structure

    • Adjusted menu order, arranged by learning path (Quick Start → Core Concepts → Examples → Best Practices → API Reference → FAQ)
    • API Reference moved to end of menu, convenient for quick reference after getting started

Documentation Experience Optimization​

  • 🐛 Fixed Code block syntax highlighting issues

    • Support for Java, Gradle, YAML, Bash, and other languages
    • Added correct language identifiers for all code examples
  • 🎨 Optimized Single document mode display

    • Fixed page width limitation issue in single document mode
    • Implemented responsive design, adaptive margins for different screen sizes (compressed margins on small screens, comfortable reading width on large screens)

Content Completion​

  • 📝 Updated Rabetbase introduction
    • Supplemented OpenAPI current status description (beta phase, data query function only)
    • Supplemented Java OpenSDK complete feature description (supports complete CRUD operations)
    • Added quick start guide, categorized by tech stack (frontend developers, backend developers)
    • Added technology selection comparison table to help developers choose appropriate solutions

Usage Instructions​

This update log follows the following format:

  • ✨ New - Brand new feature or documentation section
  • 🎨 Optimized - Improved expression or structure of existing content
  • 🐛 Fixed - Corrected errors or issues in documentation
  • 📝 Completed / Updated - Supplemented or enriched existing content
  • 🔐 Security - Security-related updates
  • ⚡ Performance - Performance optimization-related updates
  • 📊 Example - Added or updated code examples
  • đŸ› ī¸ Tools - Development tools or auxiliary function-related
  • 📖 Documentation - Documentation-related improvements