random_toolkit 0.1.0
random_toolkit: ^0.1.0 copied to clipboard
一个功能强大的Flutter随机数据生成工具包,提供各种类型的随机数据生成功能。
Changelog #
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
0.1.0 #
Release date: 2026-07-13
Changed #
- 📚 Documentation updates
- Updated CHANGELOG.md to English with improved date formatting
- Updated README.md to full English
- Updated README_CN.md with version bump
- Updated pubspec.yaml version from 0.0.9 to 0.1.0
Note #
- No code changes in this release, only documentation updates
0.0.9 #
Release date: 2026-06-18
Added #
-
✨ Simplified dot-syntax API
- Added
randomobject supportingrandom.name(),random.color()and other dot-syntax calls - Added
rtshort alias supportingrt.integer(),rt.user()and other concise calls - Full IDE intellisense support, type
random.to see all available methods - Namespace isolation using
randomto avoid naming conflicts
- Added
-
📚 Complete API documentation
- All public API elements include complete dartdoc comments, 100% coverage
- Each method includes usage examples and parameter descriptions
- Improved README.md usage documentation
Changed #
-
🔧 Code architecture optimization
- Refactored
RandomToolkitclass to singleton pattern, supporting instance method calls - Preserved backward-compatible static accessors (
generators,person,visual, etc.) - Changed
usermethod to instance method, renamed static accessor touserGenerator
- Refactored
-
🧪 Code quality
- Passed complete static code analysis with no issues found
- Code formatting check passed, ensuring style consistency
- All 27 unit tests passed, ensuring code quality
Migration Guide #
// New API (Recommended)
int num = random.integer(1, 100);
String name = random.name();
Color color = rt.color();
Map<String, dynamic> user = random.user();
// Old API (Still available)
int num = RandomToolkit.generators.integer(1, 100);
String name = RandomToolkit.person.name();
Color color = RandomToolkit.visual.color();
0.0.8 #
Release date: 2026-06-18
Added #
- 🧪 Complete test coverage
- Added comprehensive unit test suite covering all public APIs
- All 27 test cases passed, ensuring code quality
- Tests cover basic random data generation, personal information, visual elements, geolocation, date/time and user information generation
Changed #
-
🔧 Code quality improvements
- Passed complete static code analysis with no issues found
- Code formatting check passed, ensuring style consistency
- Improved release process and quality check mechanisms
-
📚 Documentation improvements
- Updated version references in README.md
- Ensured all public API elements include complete dartdoc comments
0.0.7 #
Release date: 2025-08-26
Changed #
-
🔧 Code quality improvements
- Passed complete static code analysis
- Conducted pub.dev pre-scoring using pana tool, achieved 115/130 points
- Fixed code formatting issues, ensuring code style consistency
- All unit tests passed, ensuring code quality
-
📚 Documentation updates
- Updated version references in README.md
- Improved release process and quality check mechanisms
0.0.6 #
Release date: 2025-08-26
Breaking Changes #
- 🔄 Pure Dart package conversion
- Removed all native platform code (Android, iOS, Windows, Linux, macOS)
- Removed platform-related Dart files (platform_interface, method_channel, web)
- Removed
getPlatformVersion()functionality - Updated pubspec.yaml, removed plugin configuration and platform dependencies
- Converted to pure Dart package, improving compatibility and maintainability
Changed #
-
📦 Package structure optimization
- Simplified project structure, removed unnecessary platform code
- Updated example application, removed platform version display feature
- Optimized test files, focused on pure Dart functionality testing
-
🚀 Performance improvements
- Reduced package size and dependency complexity
- Improved cross-platform compatibility
- Simplified integration and usage process
0.0.5 #
Release date: 2025-08-26
Added #
-
✨ Project brand upgrade
- Added professional animated SVG logo (
assets/random_toolkit_logo.svg) - Logo includes rich animation effects: rotating dice, gradient colors, floating elements, etc.
- Integrated logo display in README.md
- Added professional animated SVG logo (
-
🔄 Dual repository sync configuration
- Configured dual repository sync for Gitee (primary) and GitHub (backup)
- Used Git native multi-push URL feature, simplifying sync process
- Added
DUAL_REPO_SYNC.mddocumentation explaining sync mechanism - Updated all repository links in documentation to Gitee addresses
Changed #
-
📚 Documentation optimization
- Updated repository links in pubspec.yaml, README.md, CHANGELOG.md
- Unified use of Gitee as primary code hosting platform
- Improved project visual presentation and brand image
-
🛠️ Development experience
- Simplified code sync process, single
git pushcommand pushes to both repositories - Provided detailed developer guide and usage instructions
- Simplified code sync process, single
0.0.4 #
Release date: 2025-08-26
Breaking Changes #
- 🔄 API function name simplification
- Removed
randomprefix from all function names for cleaner API randomInt()→integer()randomDouble()→decimal()randomBool()→boolean()randomString()→string()randomUUID()→uuid()randomChoice()→choice()randomChoices()→choices()randomColor()→color()randomHexColor()→hexColor()randomMaterialColor()→materialColor()randomImageUrl()→imageUrl()randomAvatarUrl()→avatarUrl()randomName()→name()randomEmail()→email()randomPhoneNumber()→phoneNumber()randomAddress()→address()randomDate()→date()randomTimestamp()→timestamp()
- Removed
Changed #
-
📚 Documentation updates
- Updated all example code in README.md
- Added complete API usage examples
- Improved code comments and documentation structure
-
🧪 Test verification
- Verified correctness of all function name changes
- Ensured example application runs correctly
- Passed complete functional tests
Migration Guide #
If you are using an older version, update your code as follows:
// Old version
int num = RandomToolkit.generators.randomInt(1, 100);
String name = RandomToolkit.person.randomName();
Color color = RandomToolkit.visual.randomColor();
// New version
int num = RandomToolkit.generators.integer(1, 100);
String name = RandomToolkit.person.name();
Color color = RandomToolkit.visual.color();
0.0.3 #
Release date: 2025-08-26
Added #
- 🎯 API namespace support
- Added namespace call methods like
RandomToolkit.visual.color() - Supported unified access entry like
RandomToolkit.person.name() - Preserved all original class call methods for backward compatibility
- Added namespace call methods like
Changed #
- 🧱 Code architecture optimization
- Implemented unified API entry through static delegation
- Added
@nodocannotation to hide internal constructors - Improved readability of documentation comments
Technical Features #
- 📚 Murphy's Law principle:
- All original classes remain independently accessible
- Namespace instances automatically initialized
- Supports mixed usage of old and new APIs
0.0.2 #
Release date: 2025-08-26
Fixed #
- 🔧 Android build issues
- Fixed Android module build failure due to missing
namespaceconfiguration - Added
namespace 'com.example.random_toolkit'configuration inandroid/build.gradle - Resolved "Namespace not specified" error when external projects reference the plugin
- Fixed Android module build failure due to missing
Changed #
- 📦 Release preparation
- Improved project configuration to meet pub.dev release requirements
- Optimized Android Gradle Plugin compatibility
0.0.1 #
Release date: 2025-08-26
Added #
-
🎲 Basic random data generation
- Random integer generation (
randomInt) - Random floating-point generation (
randomDouble) - Random boolean generation (
randomBool) - Random string generation (
randomString) - UUID generation (
randomUUID) - Array random selection (
randomChoice,randomChoices) - Array random shuffle (
shuffle)
- Random integer generation (
-
👤 Personal information generation
- Random Chinese name generation (
randomChineseName) - Random English name generation (
randomEnglishName) - Random email address generation (
randomEmail) - Random phone number generation (
randomPhoneNumber)
- Random Chinese name generation (
-
🎨 Visual element generation
- Random color generation (
randomColor) - Random hex color string (
randomHexColor) - Material Design color generation (
randomMaterialColor) - Random image URL generation (
randomImageUrl) - Random avatar URL generation (
randomAvatarUrl)
- Random color generation (
-
📍 Geolocation generation
- Random Chinese address generation (
randomChineseAddress) - Random English address generation (
randomEnglishAddress)
- Random Chinese address generation (
-
⏰ Date/time generation
- Random date generation (
randomDate) - Random timestamp generation (
randomTimestamp) - Supports custom date ranges
- Random date generation (
-
👥 Complete user information generation
- Generate random user objects containing all information (
generateRandomUser) - Includes ID, name, email, phone, address, avatar, birthday, active status, score, balance, etc.
- Generate random user objects containing all information (
Technical Features #
- ✅ Supports all Flutter platforms (Android, iOS, Web, Windows, macOS, Linux)
- 🏗️ Modular architecture design, clear code organization
- 📦 Pure Dart implementation, no native code dependencies
- 🔧 Easy-to-use API interface
- 📚 Complete example application
- 📖 Detailed documentation
Documentation #
- 📝 Complete README.md documentation
- 🎯 Detailed API usage examples
- 🚀 Quick start guide
- 📱 Example application demonstration
Development Tools #
- 🧪 Basic test framework
- 📋 Code style check
- 🔄 Continuous integration configuration
Version Legend #
- [Added] - New features
- [Changed] - Changes to existing functionality
- [Deprecated] - Features soon to be removed
- [Removed] - Features that have been removed
- [Fixed] - Bug fixes
- [Security] - Security-related changes