- #481 Update and sync the translations (from the spreadsheet).
- #470 Add Lippupiste ticket system
- #466 Support embedded videos in CMS pages. The feature is provided by a new version of React-Helsinki-Headless-Cms -library.
- #461 Show localized language names in parentheses on main page
- #460 Fix the URL locale handling
- #458 Fix registration page redirect when profile exists
- #445 Add enrolled Ticketmaster event page
- #443 #451 Update Azure-pipeline configurations
- #446 Implement new Ticketmaster password acquring flow
- #449 Update Ticketmaster texts and translations
- #448 Remove occurrences from unenrolled Ticketmaster event page
- #450 Hide enrolment limit
- #439 Browser tests with github login
- #436 Update rhhc and change link props + updated/refactored default configuration
- #437 Replace Hurjaruuth's logo with a new one
- #409 The venue address under the venue name
- #411 The amount of the enrolment are limited by the values set in project. The full program can always be seen
- #413 Support for defining menu and pages in the CMS
- #419 Show notifications from the CMS
- #422 Don't show new event label if child can't enrol into upcoming events.
- #423 Use new upcomingWithOngoing filter
- #414 Inaccessible modal content when it overflowed container
- Show new event label only when child has upcoming events they cane enrol into
- #402 Azure-pipeline configurations
- #407 Update QR-code content to have a link to the Admin-UI's ticket validation endpoint
- Only support the amount of enrolments that's defined for the project
- List upcoming events and event groups even if the child has enrolled in them
- #398 Disallow API requests until user is authenticated
- #398 Use new error codes when checking auth errors
- #396 Occurrence refetching failing when occurrence did not have an event group
Also dependencies are updated to the newest possible versions.
- #391 Fixed left arrow buttons
- #392 Removed Ticketmaster notice from past events
- #388 Render newlines in event groups descriptions
- #386 Fix profile refetching after unenrol mutation
- #384 Prevent users from accessing event group reservations when they are already enrolled
- #376 Removed corona info
- #370 Fix broken authentication: Users accessing the www prefixed address of the production version of the service will now be redirected to the service address without the www prefix
- #365 Coronavirus notice to the front page
- #367 Tanssintalo logo
- #361 Links into partner logos
- #349 Into using a translation sheet that is managed by executive office
- #350 Adjusted some translations
- #360 Service description to allow for children born after 2020
- #354 [Accessibility] Use same text content for screen readers and visual users in child list
- #357 [Accessibility] Announce title on page changes
- #356 [Accessibility] Incorrect tab order in occurrence list table
- #358 Missing Finnish translation
- #359 [Accessibility] Add contrast to checkbox input tick icon
- #341 Use GitHub flow instead of GitFlow
- #345 Privacy policy link
- #318 More context information to "No matching state found" error
- #326 Temporary link for giving feedback
- #319 Hide clear all button from languages spoken at home
- #325 Child forms are no longer validate with browser validation
- #328 Use GitHub actions instead of Travis
- #320 Missing ResizeObserver throwing an error on some platforms
- #324 Profile link being visible on home page when user was not authenticated
- #329 Broken error styles for some forms
- #329 Overflowing time picker in event details view
- #329 Occurrence info visual glitch in occurrence detail page
- #302 Error handling for child already enrolled error
- #305 Logo of Finnish National Gallery to the home page
- #303 Option to subscribe to places once they become available
- #312 Languages spoken at home field into the interface
- #299 Show no other button than log out for logged in unregistered users
- #301 Update accessibility statement
- #304 Show events as upcoming events also for a while after they have started
- #313 No longer display an error when a user subscribes to notifications for an occurrence they have already subscribed to, instead refresh the page to fetch current most data
- #313 Display a more specific error message when a user subscribes to notification for an occurrence which has available capacity
- #299 Redirect to registration for users who don't have a profile yet
- #307 Postal code validation
- #308 Crashes on iPhones with iOS version older than 11.3
- #309 Can not read property year of undefined error
- #314 User being asked child's birthday twice while registering
- #315 Back to event selection button not working when accessing the enrolment confirmation page through an invitation link
- Child list not showing changes without a refresh
- #289 Event invitation card to only have one link on mobile
- #289 Event invitation card to list button as its last element
- #293 Registration form final approval text
- #291 Provide better accessible name for profile menu
- #290 Mobile layout for event enrollment
- #294 Profile view missing children on mobile
- #285 When users access a child's information that is not attached to their account, they are redirected into a view that asks them to authenticate again
- #284 Use three letter week day abbreviations in English and Swedish
- #284 Use the same date and time format everywhere with leading zeros removed
- #279 Enable event participants CHILD_AND_1_OR_2_GUARDIANS choice
- #273 Refactor from our custom form components to HDS
- #280 Make modal background semi-transparent grey
- #277 Use Finnish time format
- #278 Allow also LF as a line break in text content coming from API
- #281 Fix a TypeScript error on profile page
- #270 Update links to rekisteriseloste/description of the file
Most notable changes:
- #267 Improve usability by updating UI texts
- #264 Add a title to brochure download link with the language translated
- #266 Refactor the last local colour variables and add koros from HDS
See full list at https://github.com/City-of-Helsinki/kukkuu-ui/milestone/10?closed=1
If a user clicks the link in the invitation email after they have signed up, the event page looks like the sign up page. It should just show information about the event.
- #256 Users can also change the email address when signing up
- #257 Fix missing focus outline after upgrading HDS
Some notable changes:
- Users can now edit their email address
- Accessibility is improved by adding alt texts for icons that convey meaning (#247 )
- Usability improvement on number fields: Hide confusing arrows
See https://github.com/City-of-Helsinki/kukkuu-ui/milestone/8?closed=1 for the full list of changes and fixes
Some notable changes:
- It should now be possble to sign up for events
- Users should now stay logged in as long as the browser tab is open
- Show a video on the front page
- Add pdf files with information about the project in many languages
- Support for Culture Kids projects coming after 2020
- Use Helsingfors logo in Swedish
- Upgrade all dependencies to their latest version
- Usability improvements with usage of the back button
See https://github.com/City-of-Helsinki/kukkuu-ui/milestone/7?closed=1 for all fixes
See https://github.com/City-of-Helsinki/kukkuu-ui/milestone/6?closed=1
- #182 Display guardian name and child name same with user's input.
- #181 Ensure that login page is in user's chosen language.
- #175 Update CRA, node-sass and apollo to latest, fix dependency security warning.
- #151 Enhance authentication flow, reduce token fetched on every
- #159 Add child edit information button
- #160 Edit profile modal & mutation
- #161 Add edit child modal
- #162 Add modal and mutation to edit guardian's information
- #163 Add edit and delete child mutation
- #167 Add delete prompt when user try to delete child from edit child modal.
- #172 Adjustments for small screens and modal fixes
- #170 Change the MFA logo
- #169 Improve analytics
- #166 Add max-width for pages with text in them, fix footer links
- #165 Profile adjustments: Use adult icon and smaller header
- #164 Add Dot and remove Oodi as partners, shrink svg icons
- #151 Enhance authentication flow, reduce token fetched on every route changes.
- #158 Add production NODE_ENV to Travis CI to equivalent with Docker infra build
- #151 Enhance authentication flow, reduce token fetched on every route changes.
3.13.0 (2025-11-26)
- Add csp report-uri Ref: KK-1474 (4f89797)
- Enable cloud Sentry Ref: KK-1474 (03c22ed)
- Generate sourcemaps Ref: KK-1474 (03c22ed)
- Don't expose entire process.env to define (43b2a22)
- Links to privacy policy (0200bcd)
- Use correct release variable Ref: KK-1474 (e53bcaa)
3.12.2 (2025-10-06)
- Stricter yarn configuration (2f3a899)
3.12.1 (2025-09-12)
- React-router 7.5.2 fix imports (b051f33)
- Bump form-data from 4.0.1 to 4.0.4 (c759d10)
- Bump react-router from 7.1.3 to 7.5.2 (af5fb12)
- Jsdom to 26.1.0 (0ff4460)
3.12.0 (2025-06-05)
- Unenrolment should be available only over 48h before occurrence (d1f836c)
- Define default locale for external authentication process (b9d0804)
- docker: Add VITE_ENROLMENT_CANCELLATION_TIME_LIMIT_HOURS buildarg (b2a24b1)
- error: Add missing error element to router (074e8f8)
- error: Add missing HTTP50X page for Nginx (79d7d84)
- Improve child notes explanation text in means of privacy policy (31b61bf)
3.11.2 (2025-05-28)
- Configure commitlint to ignore dependabot commits & set more rules (ed32114)
- Layout test by using useLocation consistently from react-router-dom (d3f2379)
- Set dependabot reviewers for ratkaisutoimisto (1767f44)
3.11.1 (2025-03-11)
3.11.0 (2025-02-25)
- Hardcode CMS languages for faster language rendering in header (1fc343d)
- Use apollo client local storage cache persister (c1569f5)
- Use react-router Link in scope of RHHC (4635583)
- csp: Allow cms images (2806516)
- hotreload: Use eslint-plugin-react-refresh, refactor code to comply (8cd5d25)
- sonarcloud: Conditional render in JSX with {!!x && x}, not {x && x} (36ce44f)
- sonarcloud: Fix removeSurroundingSlashes regex & test it works (143851c)
- sonarcloud: Show toast error when onClick navigation promise fails (4a2ff2f)
3.10.0 (2025-02-06)
- Add csp meta-tag (cd13607)
- Upgrade to Vite 6 & typescript 5.7, move icons & images to /public (5ce9bec)
- Use polling in docker development to enable hot reload (913a425)
- "yarn generate:graphql" by using CMS for notification query (f4caed1)
- Add digiaiiris.com to csp (46fcf7a)
- Browser tests in CI/CD pipeline by fixing polling interval/timeout (10e65f0)
- Browser tests, use existing project year 2020 as child's birthyear (f7b6778)
- config: Admin ui url (f7acbba)
- Consistency between pre-commit & non-pre-commit linting (0d997dd)
- Dart Sass @import/global built-in function deprecation warnings (bef6e02)
- Dependabot issue #140 i.e. cookie <0.7.0 security vulnerability (0d5dc6b)
- Deprecation warning, change react-transition-group → react-toastify (1b50099)
- Docker-compose.yml VITE_CMS_URI by //graphql → /graphql (def2137)
- End time fallback value in zero duration should be the start time (8ca4a2d)
- Hero English description, living in Helsinki rather than born in (464f084)
- Husky pre-commit run vitest related with lint-staged (d4f052a)
- Lint-staged should use format:code with max-warnings flag (e05edfe)
- localdev: Add localhost:, 127.0.0.1: to CSP connect-src (a374913)
- Mobile navigation (74c6a9c)
- Mock warning in EditProfileModal.test.tsx by adding mock (9d3d168)
- Most warnings in Layout.test.tsx by matching apollo & MSW mocks (c35da36)
- Remove "resolutions" from package.json, update related packages (af147bb)
- Sass nested rule deprecation warnings by moving CSS parts (ac2529e)
- Show "can't enrol" notification also with external ticket systems (b6710fa)
- Show "can't enrol" notification in EventRedirect component (60ff390)
- Some warnings in RegistrationForm.test.tsx (e04fb68)
- time-utils: Fix all dates and times to Helsinki timezone (fa344c8)
- Warning in AddNewChildFormModal.test.tsx by using Modal appElement (f3b0df6)
- Warning in EventOccurrence.test.tsx by not spreading
keyproperty (47748b9) - Warnings in Enrol.test.tsx by fixing mocks (a492e1f)
- Warnings in EventIsEnrolled.test.tsx by matching mocks (e50a856)
- Warnings in EventOccurrenceList.test.tsx by using unique IDs (53757c2)
- Warnings in ProfileEvents.test.tsx by fixing mocks (adc875a)
- Warnings in ProfileEventsList.test.tsx by fixing mocks (1c608bc)
3.9.0 (2024-11-26)
- Fix checking if event has any free passwords (5c42e47)
- "yarn lint" & "yarn typecheck" errors and warnings (5a8ff91)
- Env mode improvements (b17fb64)
- Env mode improvements (45250c5)
- Hds 3.11 upgrade (9f21c7a)
- Remove console log (45250c5)
3.8.1 (2024-11-11)
- .env* files by removing trailing comments that don't work (08ecc9d)
- Languages Українська → Українська мова, Davvisámi → Davvisámegiella (4eb28fb)
3.8.0 (2024-10-31)
- Add canonical URL as meta property to the Head (4483f28)
- Add North Sámi & Ukrainian language PDFs to front page (dca9c68)
- Add Tixly external ticket system (7a1de36)
- Docker compose (f4f3bb7)
- Logout idle user after timeout (#591) (759c997)
- Emove prefilled birthyear (#587) (4110a64)
- GenerateTestJwt should use configurated audience by default (6faa4d8)
- Helsinki profile url env var name (381c7a3)
- Improve PageMeta's Helmet-rendering to include canonical and alternative urls (0cff0ec)
- Linter (4c4dda4)
- Login improvements with hki profile link (#585) (5a5d5b9)
- Matomo configuration (b56cb3e)
- Matomo vards to dockerfile (2c68bc4)
- Navigation render without data fetched (#590) (2aeb7c9)
- New matomo configuration (abd41c9)
- Page meta of the CMS pages (13e85b8)
- Remove needless ngingx rules (1246de6)
- Upgrade apollo client to fix navigation issues (2623e5a)
3.7.0 (2024-09-19)
- Add Sointi Jazz Orchestra logo to the partners' logos (e0cb139)
- "Kultuurin" typo with "Kulttuurin" (4523b98)
3.6.0 (2024-09-03)
- Use new staging CMS url https://kukkuu.app-staging.hkih.hion.dev/ (23301cb)
3.5.0 (2024-07-05)
- Add required * and explanation text to Modal & RegistrationForm (eb985a0)
3.4.0 (2024-06-12)
- Make RegistrationForm's hasAcceptedCommunication checkbox opt-out (463d33e)
3.3.0 (2024-06-05)
- Renamed "has accepted marketing" to "has accepted communication" (87d873d)
- Use authorization flow and HDS login handler (e055eac)
- Add color to hero background when image not given (d41afb8)
- Add unauthorized translations (2d7041f)
- Body margin removed (#561) (4954c82)
- Child enrolment count should update when enrolled or unenrolled (75e9e5e)
- Children list should update from CRUD-operations (c4a2a36)
- Clear profile from redux when not authenticated (882604f)
- Disable editing email field in registration form (b5df22f)
- Header and footer (partial) menu localized routing (#564) (e111749)
- Locale route navigate should use the location hash (1dd7c92)
- Md editor and preview force light theme (#568) (c6f94d6)
- Mobile view should show the back button (8ec445e)
- Profile fetcher is fully called even in error situations (7ae9c02)
- Profile page redirects to home when no registrated user (2951df6)
- Profile provider should not reload when tokens are renewed (012ee06)
- Registration before authentication flow (5ed3149)
- Remove profile from redux persistor (ea20d8e)
- Token renewal reloaded page when user had no profile (6e88a0c)
3.2.0 (2024-03-27)
- Add "has accepted marketing" -field to the edit my profile form (613129b)
- Add a manage subscriptions route to manage marketing subscriptions (d884053)
- Add the "has accepted marketing checkbox to registration form (5b1e99b)
- Add missing page not found handler for pages under profile-path (950c669)
- auth: Add unauthorized-route for users without login information (0a8d024)
- Kids events search links (#543) (c31d251)
- Show a toast of successfull edit of "my profile" form (4661e76)
- Verification checkbox of the home preliminary form (90f19fa)
3.1.1 (2024-03-14)
- Correct a compound word (c3d17dd)
- Logos and translations (#539) (7bbc71c)
- Text correction on the frontpage (56f87f5)
3.1.0 (2024-02-29)
- Send the email update verification token to the new email (2aea1e2)
- Update my email form (2244c21)
- Verification tokens for an email update (f9bcdd4)
- Enrollements count (#534) (8f51b96)
- Graphql codegen generated 2 types with same name (836d9a8)
- Helper text in the formik text input component (9088549)
- Invite link and notification (#529) (1ca21b5)
- Languages focus on load removed (#527) (ac4e5b5)
- Removed console log (#530) (d9ff08b)
3.0.0 (2024-02-01)
- Children has only 1 name field and birthyear instead of date (ac5c9ae)
- Convert to HDS v3 breakpoints & container widths, not all (101ca43)
- Make UserNavigation use HDS v3 (fe16447)
- Use HDS v3 Footer component for footer (dee4964)
- Use HDS v3.3.0 release's HDS Favicon kit, remove old favicons (9c21a58)
- cookies: Set cookie domain to hostname (e.g. kummilapset.hel.fi) (e432eee)
- Fix delete child button's underline style (5e93cb0)
- header: Make user dropdown items look more like before HDS v3 (fa3950c)
- Hide header action bar items' labels on mobile (i.e. below small) (d8377d1)
- Remove "as unknown as" type unsafe cast, fix useRHHCConfig (63edab8)
- Remove unused icons, replace similar icons with HDS v3 icons (21337d5)
- Running generate:graphql, replace REACT_APP_API_URI -> VITE_API_URI (4448a65)
- Update Helsinki partner logo URLs (5dc58be)
- Update snapshots & fix tests (5bd0c3e)
- Update UI to match API child name & birthyear changes (KK-1023) (#523) (22182fe)
- Upgrade to HDS v3.4 & RHHC using it, fix clicking header's buttons (d1502f1)
- Use official SVG JAES logos from jaes.fi (591b949)
- Release 3.0.0 (91f932f)
2.1.1 (2024-01-05)
- Registration form preferred language type (0323203)
2.1.0 (2023-12-22)
- Show "No free ticket system passwords" error & labels (145e369)
- Fix "yarn generate:graphql" by using graphql-codegen (4ea1fea)
- Set correct background color behind hero image's lower grey part (7deecab)
- Use https instead of http in partner links, fix security warning (aedceab)
2.0.1 (2023-12-11)
- Front page info links to brochure pdf's (f429f17)
2.0.0 (2023-10-30)
- vite: replace the CRA with the Vite
- router: migrate to router provider
- migrate to react-router v6
- Cookie consent (#497) (b346a42)
- Cookie consent page (#503) (1f6f496)
- vite: Replace the CRA with the Vite (8c130a1)
- cms: Headless cms page route (bf9d7b6)
- dockerfile: Development environment launching (4c67fdd)
- Enrol page cancel url (9354e58)
- Formik dropdown component in mobile view mode (b5807ba)
- Language sync (e8efc16)
- Linter warnings (f057331)
- Linter warnings and errors (5993199)
- Navigation confirm prompt (be7857e)
- navigation: Language change (e40d304)
- routes: React-router can have only route-components as children (c95f86a)
- Sass-path needs to be absolute in the latest version of sass (ccf4efa)
- vite: Linter issues (a38596a)
1.14.1 (2023-08-31)
- dockerfile: Add VITE_ADMIN_TICKET_VALIDATION_URL argument (7642b17)
1.14.0 (2023-08-31)
- logos: Add Tiedemuseo Liekki & update Hotelli- ja ravintolamuseo (4d4bfee)
Special thanks to @hugovk for the first contributions from outside our team!
- #154 Add usage analytics (Matomo)
- #153 Use fully qualified url for og:image and twitter:image
- #145 Sudo is no longer required in Travis
- #150 Submit button should always be clickable
- #143 Simplify and improve English translation
- #135 Reduce download size by running logo pngs through TinyPNG
- #137 Ensure that users with profile cannot register again
- Initial public release
- Users can sign their children up for the service