Skip to content

Releases: trakli/webservice

Release 1.1.0

19 Apr 14:15
b938914

Choose a tag to compare

Release Notes

Added

  • Budgets with polymorphic owner (user today, workspace/couple tomorrow) and polymorphic targets across categories, groups, and wallets; weekly / monthly / yearly / custom period types; opt-in rollover with a budget_period_states history and a manual close-period endpoint; threshold and forecast alerts surfaced through the existing Reminder pipeline
  • Explicit refund tracking via a Refund model and Refundable trait — marked refunds reduce net spend on matching budgets
  • Syncable refunds and budget period states with paginated sync endpoints so mobile clients can mirror the tables offline
  • Schema conformance service with schema:verify / schema:conform commands (auto-applied on migrate) and a middleware that returns 503 on drift
  • AI chat sessions with messages and async processing, a Prism-based classifier that routes questions to SmartQL with a language-model fallback, and AI-generated chat titles after the first reply
  • Advanced document importer with pluggable processors and configurable auto-creation of entities during import
  • Transaction index now supports filtering and returns totals alongside the list
  • Transfers gained show, destroy, update and soft-delete endpoints; transactions are embedded in Transfer responses and responses include the transfer client-generated id
  • Insights and inactivity emails are now sent by default

Changed

  • Polymorphic Remindable trait replaces the one-off budget_id column on reminders, so future subjects can opt in without another migration
  • Stats extracted from the controller into a dedicated StatsService; transfer transactions are excluded from aggregation
  • Transfer relations are eager-loaded with cascade deletes, and transfer-transaction serialization is optimized
  • Dev Docker setup migrated to the laravel-docker-dev image; obsolete dev Docker build CI job removed
  • SmartQL is wired for Gemini and now requires an LLM key; LLM defaults harmonized across AI services; chat plumbing simplified
  • OpenAPI docs regenerated

Fixed

  • Chat authorization hardened and data extraction made null-safe; classifier and fallback prompts made more data-aware; assistant replies are now reliably paired with the correct user question
  • Exchange rates greater than zero are accepted during transfers
  • Transfer and transaction responses return a fresh syncState on write

Deployment

Download the attached archive and extract to your web server:

# Extract archive
unzip trakli-webservice-v1.1.0.zip -d /var/www/your-app
cd /var/www/your-app

# Configure environment
cp .env.example .env
# Edit .env with your database credentials, app key, etc.

# Generate application key
php artisan key:generate

# Set permissions
chown -R www-data:www-data storage bootstrap/cache
chmod -R 775 storage bootstrap/cache

# Run database migrations
php artisan migrate --force

# Clear and cache config/routes (optional, for production)
php artisan config:cache
php artisan route:cache
php artisan view:cache

Documentation

See the README for usage instructions.

Full Changelog

View the complete version history in CHANGELOG.md.

Release 1.0.2

06 Mar 17:18
ece17db

Choose a tag to compare

Release Notes

Added

  • Account deletion, admin endpoints, and CLI commands
  • Locale-based translation for default categories and groups
  • File access endpoint with link attribute on transactions
  • Index and update endpoints for transfers
  • Duplicate transaction prevention during transfer sync
  • Code coverage checks and test database configuration
  • Static analysis tooling (phpmd, phpstan, phpcs)

Fixed

  • Transactions and transfers now ordered by datetime desc, created_at desc
  • Flaky test failures in StatsControllerTest by freezing time
  • Integer ID handling via PDO options and wallet ID casting
  • Multipart/form-data encoding for transaction file uploads
  • Duplicate transfers prevented during mobile sync

Changed

  • Updated OpenAPI documentation
  • Customized phpcs rules for less aggressive linting

Deployment

Download the attached archive and extract to your web server:

# Extract archive
unzip trakli-webservice-v1.0.2.zip -d /var/www/your-app
cd /var/www/your-app

# Configure environment
cp .env.example .env
# Edit .env with your database credentials, app key, etc.

# Generate application key
php artisan key:generate

# Set permissions
chown -R www-data:www-data storage bootstrap/cache
chmod -R 775 storage bootstrap/cache

# Run database migrations
php artisan migrate --force

# Clear and cache config/routes (optional, for production)
php artisan config:cache
php artisan route:cache
php artisan view:cache

Documentation

See the README for usage instructions.

Full Changelog

View the complete version history in CHANGELOG.md.

Trakli v1.0.0 🎉

13 Jan 20:09
3696c6a

Choose a tag to compare

Release Notes

Added

  • REST API for transactions, wallets, categories, groups, and parties
  • User authentication via Laravel Sanctum
  • OAuth support for social login
  • File attachments for transactions
  • Transfer support between wallets
  • Statistics and reporting endpoints
  • CSV/JSON import functionality
  • AI chat integration
  • OpenAPI documentation
  • Syncable trait for offline-first mobile support

Deployment

Download the attached archive and extract to your web server:

# Extract archive
unzip trakli-webservice-v1.0.0.zip -d /var/www/your-app
cd /var/www/your-app

# Configure environment
cp .env.example .env
# Edit .env with your database credentials, app key, etc.

# Generate application key
php artisan key:generate

# Set permissions
chown -R www-data:www-data storage bootstrap/cache
chmod -R 775 storage bootstrap/cache

# Run database migrations
php artisan migrate --force

# Clear and cache config/routes (optional, for production)
php artisan config:cache
php artisan route:cache
php artisan view:cache

Documentation

See the README for usage instructions.

Full Changelog

View the complete version history in CHANGELOG.md.