Skip to content

Conversation

@JuliRossi
Copy link
Collaborator

@JuliRossi JuliRossi commented Jan 29, 2026

Purpose

Release of the Content Insights App. Dashboard that shows insights about the content the user has in contentful.

Approach

For Page and optionally Home locations, these are the features the dashboard part has:

  • Graphs to show :
    • new entries
    • new entries by content types (up to 5)
    • new entries by creator (up to 5)
  • General metrics
    • Total Published
    • Average Time to Publish (timelapse - configurable in config screen)
    • Scheduled (timelapse - configurable in config screen)
    • Recently Published (timelapse - configurable in config screen)
    • Needs Update (timelapse - configurable in config screen)
  • Table for upcoming releases (for both releases from Launch and Timeline) with the following actions:
    • View release (takes you to the actual release )
    • Unschedule a release
    • Reschedule a release
  • Tab with tables for Entries visualization for:
    • Scheduled Content
    • Recently Published
    • Needs Update

Configuration screen:

  • Allow configuration for Content metrics. Set up: Content "Needs update"(months), "Recently published" (days), Time to publish threshold (days)
  • Allow selecting content types to display in the “New entries” and “By content type” graph.
  • Allow selecting setting top creator, bottom creator and alphabetically for By creator graph
  • Conditionally render releases section
  • Show optional set up for Home page

Testing steps

Grabacion.de.pantalla.2026-01-30.a.las.10.16.58.a.m.mov

JuliRossi and others added 22 commits December 2, 2025 17:00
* initial structure

* removing es lint flag

* adding images sections

* adding tests + refactors

* modifying ranges and styles

* modifying validation checks

* modifying images styles

* removing unused const

* changing description color

* regenerating package lock

* addressing some pr comments

* refactoring error logic

* removing unused import
* First version fetching entries with TanStack Query

* adding error and loading state and formatting

* Adding page location and entries fetch tests

* fixing lint errors

* removing unused library

* Addressing PR comments

* reducing batch size to 15

* changing comments from tests

* solving conflicts with feature branch

* lint fixes

* adding missing import while resolving conflicts

* adding node to the tsconfig types

* addressing last pr comments
* fetching actions

* renaming for consistency

* rename

* Updating to include scheduling
* adding metrics calculator with first metric case

* adding average time to publish metric

* adding scheduled metric

* adding recently published and needs update metrics

* adding installation parameters usage

* adding initial test for components = structure refactor

* adding metrics calculator tests

* changes in card styles

* removing mocked entries and scheduled actions

* mini refactors

* resolving conflicts after merging another PR

* adding Home tests + removing refresh button

* Removing unused refetch

* connecting the scheduled actions

* fixing es-lint error

* prettier fix

* removing status check

* using setDate

* removing metrics file and merging it to MetricsCalculator

* adding date calculator and refactors in metrics calculator

* refactor in DateCalculator and MetricsCalculator

* refactors in MetricsCalculator and useScheduledActions
* first version of maps-190

* correction on metric skeleton

* adding and correcting tests
* Only the hook

* Readding prettier

* Using select to avoid fetching too many times

* Reusing fetch and using aliases EVERYWHERE

* Removing unnecesary filters

* Lint and making sdk more generic

* fix test

* Fix build issue

* fix prettier
* Dividing PR

* lint fixes

* Fix for dashboard

* Runing prettier

* Tests fixing

* Lint

* More fixes

* more fixes

* minor rebase fixes

* Removing unnecesary truncation
* Dividing PR

* Runing prettier

* Tests fixing

* Lint

* More fixes

* adding modal

* Add styles for Dashboard and ReleasesTable components; implement UnscheduleReleaseModal for managing scheduled releases

* Testing table

* Autocomples einstead of selects and

* Separating concerns

* Readding tests

* Fix a few things post rebase

* Prettier

* Removing unnecesary logic

* Fix prettier

* fix lint

* refetchReleases

* removing form

* Update apps/content-production-dashboard/src/utils/Validator.ts

Co-authored-by: Franco Banfi <62450599+FBanfi@users.noreply.github.com>

* refactoring a bit

* Update apps/content-production-dashboard/src/components/RescheduleModal.tsx

Co-authored-by: Franco Banfi <62450599+FBanfi@users.noreply.github.com>

* fixing rename

* tests

* prettier

---------

Co-authored-by: Franco Banfi <62450599+FBanfi@users.noreply.github.com>
…[MAPS-124] (#10452)

* adding hooks required for the content publishing trends

* adding tests for useContentTypes hook
…ucture [MAPS-124] (#10453)

* adding hooks required for the content publishing trends

* adding tests for useContentTypes hook

* wip: base structure for the Content Publishing Trends

* adding code to generate the content type tab line by id but legends by name

* adding connection between config screen and trends chart

* adding tests and refactors

* refactors in tracked content types

* adding dependency and parameter to useMemo

* adding installation parameters hook

* fixing test

* fixing order of async refetch

* removing unused method

* adding mini refactors

* removing chart custom tooltip and moving colors to a style file

* addressing first comments of the PR

* renaming files + moving code to different files + refactors
* Main UI

* Making empty state better

* Pluralizing tabs

* Empty state better

* Lint

* Prettier violation fix

* fix test

* no title

* lint
* adding hooks required for the content publishing trends

* adding tests for useContentTypes hook

* wip: base structure for the Content Publishing Trends

* adding code to generate the content type tab line by id but legends by name

* adding connection between config screen and trends chart

* adding tests and refactors

* refactors in tracked content types

* adding dependency and parameter to useMemo

* adding installation parameters hook

* fixing test

* fixing order of async refetch

* removing unused method

* adding mini refactors

* removing chart custom tooltip and moving colors to a style file

* addressing first comments of the PR

* renaming files + moving code to different files + refactors

* refactoring trendsDataProcessor + tests

* refactoring props and chart line generation

* removing unused prop

* changing fors for forEachs

* adding average time to publish logic and refactors
* adding hooks required for the content publishing trends

* adding tests for useContentTypes hook

* wip: base structure for the Content Publishing Trends

* adding code to generate the content type tab line by id but legends by name

* adding connection between config screen and trends chart

* adding tests and refactors

* refactors in tracked content types

* adding dependency and parameter to useMemo

* adding installation parameters hook

* fixing test

* fixing order of async refetch

* removing unused method

* adding mini refactors

* removing chart custom tooltip and moving colors to a style file

* addressing first comments of the PR

* renaming files + moving code to different files + refactors

* refactoring trendsDataProcessor + tests

* refactoring props and chart line generation

* removing unused prop

* changing fors for forEachs

* adding average time to publish logic and refactors

* adding content types autocomplete

* fixing tests

* adding tests and fixing warnings

* fixing content trends tab test

* fixing config screen test

* fix in rebase

* formatting with prettier

* moving useContentTypes hook from ContentTrendsTabs to Dashboard
* adding hooks required for the content publishing trends

* adding tests for useContentTypes hook

* wip: base structure for the Content Publishing Trends

* adding code to generate the content type tab line by id but legends by name

* adding connection between config screen and trends chart

* adding tests and refactors

* refactors in tracked content types

* adding dependency and parameter to useMemo

* adding installation parameters hook

* fixing test

* fixing order of async refetch

* removing unused method

* adding mini refactors

* removing chart custom tooltip and moving colors to a style file

* addressing first comments of the PR

* renaming files + moving code to different files + refactors

* refactoring trendsDataProcessor + tests

* refactoring props and chart line generation

* removing unused prop

* changing fors for forEachs

* adding average time to publish logic and refactors

* adding content types autocomplete

* fixing tests

* adding tests and fixing warnings

* fixing content trends tab test

* fixing config screen test

* fix in rebase

* adding content types autocomplete

* changing height

* adding tooltip and tests

* formatting with prettier

* formatting with prettier

* removing unnecessary default value fallback
* Main UI

* Pluralizing tabs

* Lint

* moving to utils as we need it for tables

* base table

* wip hook

* prettier

* adding usememos everywhere!

* tests

* Improving wrapper

* fix

* Adding timezone for scheduled for

* Making stuff easier

* removing this

* removing this as well

* more cleanup

* simplifying some more

* fixing test

* fix: scheduled content table spec

* Fixing comments

* Fix merge
* Main UI

* base table

* wip hook

* prettier

* adding usememos everywhere!

* tests

* Improving wrapper

* Making stuff easier

* removing this

* removing this as well

* more cleanup

* wip

* Refactor RecentlyPublishedTable to include error handling and reorder table columns for better clarity. Update useRecentlyPublishedContent hook to return error state and utilize utility functions for unique IDs extraction.

* fix and refactor

* Adding test and

* commit

* tests for table

* fixing post merge

* fixing comments
* base table

* Update content types usage

* sort by age

* Use const for calculating age

* Including content types

* refactoring tables (#10484)

* fix and refactoring tests

* hook tests

* fix
* Changes to config screen

* fix skeleton

* Creator view options

* Fixing users fetching

* wip

* fix styles

* Sorting for real

* fixing tests

* more test fixing

* removing pills

* no initial creators

* remove unused icon

* updating paragraph

* Remove filter by content type for creator data fetchin

* fixing pill issue

* Config screen tooltip and divider for tabs

* Refactor error handling in ContentTable and optimize ContentTypeMultiSelect logic
* Renaming app

* Update ConfigScreen terminology from "Content Production Dashboard" to "Content Insights" for consistency across the application.

* Changing appearance to update naming
* Refactor Empty State Handling in Content Tables

* fix signature issue

* prettier
@wiz-inc-38d59fb8d7
Copy link

wiz-inc-38d59fb8d7 bot commented Jan 29, 2026

Wiz Scan Summary

Scanner Findings
Vulnerability Finding Vulnerabilities -
Data Finding Sensitive Data -
Secret Finding Secrets -
IaC Misconfiguration IaC Misconfigurations -
SAST Finding SAST Findings 3 Medium
Software Management Finding Software Management Findings -
Total 3 Medium

View scan details in Wiz

To detect these findings earlier in the dev lifecycle, try using Wiz Code VS Code Extension.

@JuliRossi JuliRossi marked this pull request as ready for review January 30, 2026 13:20
@JuliRossi JuliRossi requested a review from a team as a code owner January 30, 2026 13:20
@JuliRossi JuliRossi changed the title Content Insights App [] Content Insights App [MAPS-118] Jan 30, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants