Releases: fivenet-app/fivenet
v2026.3.0
Changelog
All notable changes to this project will be documented in this file.
[2026.3.0] - 2026-03-08
🏗️ Breaking changes
- V2026.2.0 changelog and update breaking changes steps
🚀 Features
- Add max duration for citizens and vehicles to UI
- Add max wanted duration for citizens and vehicles
- Make citizen height searchable
- Add browser topic to discord bot /help command
- Add all and own documents tabs to doc list
- Add id copy badge to account list
- Add trigger user sync to settings system service
- Add tiptap suggestion menu and re-gen proto ts files
- Add sync user table for debugging
- Add xxhash logic to dbsync users and vehicles syncers
- Add custom useSounds to replace @vueuse/sound and add custom
- Add search bar to document templates list
- Replace qualifications tabs into separate pages
- Add metrics to dbsync
- Add penalty calculator integration for editor
- Store penaltycalculator data in document
🐛 Bug Fixes
- Change impersonation to original job in auth tokens
- Add original job to debug info
- Pinned document list not appearing on wide screens (2xl)
- Add button component to /fivenet command
- Discord bot modules to use new fivenet_user_jobs table
- Test data type
- Add test case for userinfo discord bot module
- Length based comparisons off by one
- Default config default values for discord bot section
- Dbsync accounts column names
- Nil issue in dbsync state logic
- Dbsync state file upgrades
- Single account group not converted to groups for accounts table
- Dbsync accounts groups issues
- Data separation migration queries
- Account update activity sync
- Discord bot group sync group query
- Document view empty when first child content is empty
- User claims and user info "merge"
- Conduct entry creation
- Colleague info popover causing error notification
- Discord groupsync issues
- Show offset in dbsync log messages
- Add license field to users for faster lookups
- Improve dbsync log fields
- Dbsync user updates not updating license
- Increase tiptap doc limit for now due to base64 images
- Conduct register editor issues
- Adjust sync api user id/identifier "override" logic
- Attempt to fix user sync issue
- Override all columns even for "new" users in sync api
- Issues with source code modal in template editor
- Remove rounding of document list tabs
- Move doc tabs to a toolbar
- Start to streamline dbsync syncer logic
- Db migration info missing when migrations are skipped
- Add debug log for single user sync calls
- Dbsync state init order issue
- Dbsync stream message forwarding
- Dbsync single user sync query
- Sync api incorrectly updating users
- Set user blood type on create in sync api
- Improve user duplication handling logic
- Remove debug output from sync logic
- Vehicle owner identifier not selected correctly for auto query
- Dbsync sync client causing issues on restart
- Add tests to groupsync module for planUser logic
- Rename dbsync tablemanager files
- Improve discord qualifications module
- Improve discord bot base module handling
- Discord qualifications module query issue
- Add tests for leaderelection
- Cleanup foreign key to esx users references
- Groupsync only using account id at the moment
- Discord user's roles sum merging
- Example for dbsync user sex mapping
- Use partial json unmarshal as default
- Only show documents pinned list for xl
- Oauth2 login
- Dbsync user jobs comparison
- Dbsync user jobs and phone number comparison + add tests
- Dbsync single user query issue
- Colleague info page prefix/suffix not having any distance
- Auth password forgot form not unlocking form
- Discord oauth2 connect not working
- Oauth2 connect test case
- Improve yjs editor reconnection not resetting loading state
- Use configured limits for syncers
- Cleanup centrum color funcs
- Remove sound config from nuxt.config.ts
- Dbsync hashes length check issue
- Remove z.coerce()...optional() calls
- Dbsync vehicles hash check not re-checking length after delete
- Livemap marker deletion causing all to disappear
- Attempt to fix infinite document workflow reminders
- Update code comments
- Update code workspace settings to fix code vitest extension
- Qualification view toolbar showing when empty
- Cleanup qualification exam ui handling
- Superuser mode toggle
- Improve auth info box texts when in-game (NUI is enabled)
- Discord qualifications role sync
- Improve auth service error messages
- Oauth2 user store not updating tokens correctly
- Make discord guild/server select menu full width
- Use user jobs table for timeclock colleague job
- Remove debug output
- Change field names of auth service Change* methods
- Discord qualifications module user account id query
- Discord qualifications role user plan logic
- Correctly query accounts and user jobs table in discord
- Fabricjs center/zoom issues
- Contine refining fabric editor components
- Is empty rich content doc check
- Remove synced up state from dbsync state
- Move to db cursor based paging for dbsync users and vehicles data
- Add Resync() func for single syncs
- User phone numbers insert on update query issue
- Make gen-sql
- Cleanup user phone numbers in user dbsync syncer
- Dbsync user sync not running as expected
- Simple dbsync query order by columns
- Improve dbsync batch loop limitation
- Cleanup dbsync log fields
- Dbsync accounts setting last check
- Handle duplicate user in dbsync user creation
- Drop overlapping indexes
- Duplicate indexes migration
- Cleanup otel noop module
- Role deletion not working and add reset role button
- Dispatches not appearing in map cluster picker list
- Get colleague using correct user jobs job condition
- Replace mysql.Exp(mysql.Raw()) with mysql.Raw*() directly
- Move to livemap dispatches_job_JOB layers instead of dispatches_all
- Hide penalty calc button for documents editor
- Missing tooltip in penalty calc view
- Normalize groupsync map
- Search and replace popover result view
- Penalty calculator view showing alert box
v2026.2.0
Changelog
All notable changes to this project will be documented in this file.
[2026.2.0] - 2026-02-16
This version includes changes from v2026.1.3 that had been created to fix module versioning issues.
🏗️ Breaking changes
-
ESX Compatibility mode has been removed in favor of DBSync.
- You need to setup the DBSync to query and sync your gameserver's data.
- Update FiveNet to at least this release.
- Start up your FiveNet server with the new version/release so it runs the latest database migrations.
- Stop your FiveNet instance and stop the DBSync before continuing.
- Take a data only (no
CREATE TABLEstatements) dump of thefivenet_*database tables. - You can use the following queries to migrate ESX data to FiveNet directly:
-- Users INSERT INTO `fivenet_user` ( id, identifier, `group`, job, job_grade, firstname, lastname, dateofbirth, sex, height, phone_number, disabled, visum, playtime, created_at, last_seen ) SELECT id, identifier, `group`, job, job_grade, firstname, lastname, dateofbirth, sex, height, phone_number, disabled, visum, playtime, created_at, last_seen FROM `users`; -- Licenses INSERT INTO fivenet_licenses (`type`, `label`) SELECT `type`, `label` FROM licenses; -- User Licenses INSERT INTO fivenet_user_licenses (`user_id`, `type`, `owner`) SELECT u.id, ul.`type`, ul.`owner` FROM user_licenses ul INNER JOIN users u ON (u.identifier = ul.`owner`); -- Owned Vehicles INSERT INTO `fivenet_owned_vehicles` (`owner`, `user_id`, `job`, `plate`, `model`, `type`) SELECT `owner`, NULL, NULL, `plate`, `model`, `type` FROM `owned_vehicles`;
- Run the DBSync and wait for all data (e.g., users, vehicles) to be synced to the FiveNet table (e.g.,
fivenet_user). - Now you should be able to restore the data only dump of the
fivenet_*tables.
-
Document Editor now uses Tiptap JSON format (wrapped in a basic Proto message).
- It is recommended to migrate any HTML documents to the JSON format, example command:
fivenet migrations docstojson --dry-run, when you are sure that the affected documents are correct, runfivenet migrations docstojson --no-dry-runto actually apply the migrations.
- It is recommended to migrate any HTML documents to the JSON format, example command:
🚀 Features
- Data separation and management design implemented
- Re-organize and split proto files
- Cleanup proto messages and structure
- Update go generated sql models/tables
- Improve account editing logic and data separation migrations
- Add superuser jobs list
- Add table update logic (adding/deleting columns/rows)
- Add basic limiter role perms and attrs templates
- Restructure dbsync code
- Improve jwt token usage on client-side
- Add cayo perico island livemap app toggle
- Introduce user jobs sync for multi job systems
- Add dbsync logic for user phone numbers
- Create index in dbsync tablemanager
🐛 Bug Fixes
- Cleanup oauth2 providers
- Oauth2 test case
- Tablemanager and i18n tests after %s -> %q changes
- Ui inconsistencies and doc post comment error
- Doc comment editing button not showing
- Improve access badges format and info shown
- More translations for fabric editor components
- Improve impersonation integration with superuser
- Move impersonating banner to top and make it slimmer
- Split superuser mode activated/deactivated notification
- Color "green" used where it should "success" color instead
- Remove outdated hint
- Add base html/css named colors to sanitizer
- Doc approval snap date issues and task selection
- Approval task inbox list
- Remove debug print log
- Change housekeeper units comment to FIXME instead of TODO
- Start replacing typed routes and cleanup content funcs on client-
- Use user_id for user locations instead of identifier
- Sql migrations and change test cases as needed
- Sql testdata
- Send ErrNoUserInfo when no account is found
- Add titles to more auth service errors
- Add missing db conn parameter example and add wip v2 sync api
- Proto generated clients.ts using wrong import
- Users sync and add comments count to document meta
- Improve audit log entry copy text button
- Jobs pages permissions
- Citizen activity reason
- Auth perms check superuser logic
- Restart notifications stream on superuser mode switch
- Websocket re-auth logic missing
- Link chars to account ids on login for now
- Improve document references and relations tables
- Update .nuxtrc
- Cleanup app plugins and update nuxt-update
- Move cayo perico overlay coords to separate file
- Split timeclock stats drawer into separate component
- Correct cluster picker hidden marker count
- Add missing icons for document approval feature
- Typecheck complaints
- Js jwt tests
- Issues with user licenses and jobs sync
- Update dbsync example config
- Move sync api details to separate struct in config
- Grpc transport insecure logic
- Document relations by default including documens the user created
- Comment count display in doc view
- Calendar creation issue and add all day events
- Nil issue in dbsync
- Issues with docs not having a meta entry
- Add sync getstatus call on start
- Log synced count
- Dbsync subtract from last check time to prevent data loss
- Livemap overlays not included in images
- Dbsync tablemanager test case
- Update livemap tiles submodule
- Add apple-touch-icon to rel entries
- Filestore admin file list
- Dbsync tablemanager test case failure
- Get mysql image for tests from docker-compose.dev.yaml
v2026.1.2
v2026.1.1
v2026.1.0
Changelog
All notable changes to this project will be documented in this file.
[2025.12.0] - 2026-01-17
🚀 Features
- Add aligning guidelines to fabric
- Add copy debug info button
- Add registered since time to account info
- Migrate html json legacy to tiptap json format
- Add "focus" mode (highlight current block) to tiptap
- Add notification for editor file upload
- Dbsync service arguments and added status command
- Add basic data mode structure
- Add timeclock entry generation to demo data
- Image proxy + iconify api always enabled
- Add v-model to fabricjs editor component
- Add basics for config validation and image proxy minimum cache
🐛 Bug Fixes
- Wiki page toc not showing correctly and cleanup path logic
- Doc relation and reference addition/removal not working
- Penalty calculator warning not respecting new lines
- Port filesystem storage and wrapper changes from feature branch
- Implement tiptap json for more editors
- Continue work on implementing new tiptap json content format
- Filesystem storage test issues
- Fixup issues caused by switch to tiptap json format
- Editor version diff/history modal
- Content detection in content query logic
- Dbsync config loading
- Dbsync not adding database config to base config
- Dbsync applying migrations due to table manager
- Dbsync query issues with "empty" conditions
- Dbsync jobs query issues
- Allow columns to be disabled in dbsync
- Dbsync sql not ignoring columns
- Add missing dbsync started log message
- Dbsync jobs filter causing out of bounds
- UseLogger prefix type check
- Improve dbsync table manager
- Fx opts issue caused by dbsync module changes
- Update fx modules ordering
- Add missing tests-js makefile target
- Add fx modules and re-order in list
- Change dbsync stream "dropped" to warn
- Test issues caused by recent db migrations
- Add char limits to editors
- Show timeclock entries regardless of user's actual job as long as
- Approval signatures getting inserted with "different" snapshot date
- Return document meta with ListApprovalPolicies response
- Update eslint config to ignore no multiple template root errors
- Broken image url
- Backend filestore routing and change some modals to drawers
- Issues with job logo and switch to rounded-md for avatars
- Center document state and approved badges in doc list
- Add line-clamp to qualification tutor list comment and summary
- Qualifications toolbar missing classes
- Start fixing button colors and improve template selection
- Switch to xsync map All() in favor of Range() with funcs
⚙️ Miscellaneous Tasks
- Remove container-build step in favor of matrix container build
v2025.12.0
Changelog
All notable changes to this project will be documented in this file.
[2025.11.0] - 2025-12-30
🏗️ Breaking changes
- Add otelsql breaking changes
🚀 Features
- Add duplicate validation for access entries
- Continue document layouts work
- Use fabricjs to create a svg editor
- Rename layouts pages to forms
- Add basic page structure for forms
- Add wip curved text to fabric editor
- Add toggle to disable event effects in user settings
- Add snow (event) effect to all layouts
- Implement notepad saving and auto save
- Add kbd shortcut to clipboard modal
- Add licenses for images/icons, fonts and update sounds
🐛 Bug Fixes
- Access entry issues and centrum sidebar unit header
- Adjust duplicate access entry warning texts
- Some ui logic issues
- Add hint for snow/holiday effect user settings toggle
- Jobs conduct deletion and restore not working as expected
- Disable notepad feature (still WIP)
- Remove .env.example
- Dashboard shortcuts not working and finalize notepad
- History store not correctly storing entries
- Editor source code textarea height not fitting to modal
- Re-gen proto gen files and show mathcalculator for all users
- Remove mathcalculator quickbutton
- Quickbuttons type issue caused by changes
- Job props proto unmarshal issue
- Fabric editor sidebar type issues
- Use links for templates in templates list page
- Ui job access check not using creatorJob override as expected
- Cleanup some log calls
v2025.11.0
Changelog
All notable changes to this project will be documented in this file.
[2025.11.0] - 2025-11-30
🚀 Features
- Add follow user location to livemap user marker
- Add livemap "smart select" for when a lot of markers are at the
- Replace nanoid with crypto.randomUUID in format builder
- Add document self approve option for approval policies
- Add self approve allowed to approval ui elements
- Hide markers of invisible layers in multi select picker
- Update to nuxt 4.2.1 and nuxt ui 4.1.0
- Improve math and penalty calculator logic
- Query builder using columns + table name for dbsync
- Cleanup app config structure and approval calculation logic
- Add more tests to utils functions
- Add penalty calculator settings and warn message with thresholds
🐛 Bug Fixes
- Remove approval service todo comment
- Generic img disabled style when popover is disabled
- Calendar access check
- Approval policy creation issue from template data
- User marker self follow and unmarshal in userinfo retriever
- Notification stream not being started anymore
- Change livemap multi hit group order
- Livemap single marker not showing popup anymore
- Allow log level toggle in debug info for anyone
- Remove unused vars from debug info
- Jsdoc comments in stores and fine grained livemap subject filters
- Go format issues
- Missing wiki page activity translation and traffic points modal
- Citizens actions double sidebar issue
- Notification list html ui structure
- Don't compile i18n vars replacement regex every call
- Qualification tutor view user search
- Add missing filters logic for users job
- Change self approve default value of table column
- Improve config structs to avoid duplication in dbsync
- Timestamp/datetime mixup
- Approval time/timestamp insert
- Add renamed components
- Cleanup type issues and add basic penaltycalculator config
- Remove leftover generated file
- Livemap centrum sidebar issue on small screens
- Pinned list sizing and showing when it should be closed
- Livemap centrum sidebar showing when it shouldn't
- Check can stream to centrum sidebar
- Update css path for prettier plugin
- Format app files
- Bump helm chart version
- Add additional indexes for user locations table
- Import issue caused by utils import usage
- Add missing description text to penalty calculator app config
- Use intl format options for more number inputs
- Unused trailing-icon attribute
v2025.10.2
Changelog
All notable changes to this project will be documented in this file.
[2025.10.1] - 2025-10-24
🐛 Bug Fixes
- Aliased permissions appearing and type issues
- Approval recalculation and badges in ui
v2025.10.1
Changelog
All notable changes to this project will be documented in this file.
[2025.10.0] - 2025-10-24
🚀 Features
- Add toggle all layers button to livemap controls
- Add content nav to wiki smaller screens
- Add option to use unit color for user marker icon
- Allow multiple root wiki pages and improve wiki nav ui
- Add file list to wiki page view
🐛 Bug Fixes
- Document approved state calculation
- Approval badge showing in ui when it shouldn't
- Approval policy template form issue
- Pagination and sorting issues
- Doc deletion error and wiki root only acces check
- Tiptap editor table popover and add link display
- Remove signature-related columns and fields
- Wiki root only page listing using wrong page
- Wiki page list not showing all accessible pages
- Wiki startpage selection not ordering by parent id nulls first
- Remove debug output from list pages in wiki
- Citizen user docs sorting not working
- Select menu search not working due to key
- Citizen vehicles list showing all vehicles and qol fixes
- Vehicle list user id override
- Document template not creating policy on publish
- Livemap layer issue with users
- Unit housekeeping for unavailable not adding unit data to status
- Editor font selection showing untranslated value
- Grpc permission interceptor test
- Approval data not showing in template editor
- Wiki nav showing dummy page
- Permission multiple names screw up
- Perms cleanup migration
- Remove test json file
- Update helm version in channels file
⚙️ Miscellaneous Tasks
- Remove lucide icon pack
v2025.10.0
Changelog
All notable changes to this project will be documented in this file.
[2025.10.0] - 2025-10-19
🚀 Features
- Major refinement of the documents approval and signature system
(merged signatures into approvals, added expiration, improved UI/UX, and created approval/signing tasks inbox) - Added navigation menu with new document pages and filters for jobs and user’s job
- Revamped audit log system using gRPC interceptor and added related activity entries
- Added permissions order and icons, plus title toggle in document view
- Enhanced dbsync configuration and validation (filters, access checks, load logic)
- Added approvals to templates and refined related API/service behaviors
- Improved editor performance by optimizing toolbar state handling
- Improved FiveM NUI/CEF browser compatibility (styling, transparency, and color handling)
- Added basic jobs access validation
- Removed unused layout code and internal debug output
🐛 Bug Fixes
- Fixed multiple approval/signing migration issues (cascade, duplicate queries, ordering)
- Resolved document deletion reason field causing permission errors
- Fixed Tiptap editor validation and computed error handling
- Corrected template HTML entity escaping (Go HTML template compatibility)
- Fixed wiki pages issues (pagination, logo visibility, access checks, grid layout)
- Addressed CEF 103 BYOB reader pagination and clipboard API compatibility problems
- Fixed dispatch sidebar rendering and livemap superuser logic
- Corrected MySQL helper/migration typos and improved
dbutilspackage - Fixed various UI inconsistencies (task drawers, colors, labels, and design polish)