Skip to content

Conversation

@Alessandro100
Copy link
Contributor

This PR introduces the migration to a SSR application using NextJs. For this PR, the Feed Detail Page (partially) and the About page were made server components as a proof of concept. This PR is not ready for PROD but as a great benchmark to keep development on SSR.

High Level Changes

  • Introduced NextJs (SSR Library)
  • Updating to React 19
  • Updating to MUI 7
  • Updating to using Node 24
  • Updated i18n library for SSR support
  • Removed Leaflet in favour of maplibre (full cleanup to come)
  • Updated Authentication for SSR support (to continue)
  • Feed Detail page -> started SSR support (to continue)

Important follow up tasks

  • Revisiting Firebase Remote Configs to be SSR ready
  • Updating the Authentication system for Firebase Session Management
  • Setting up CICD

Future Improvements

  • Better use of MUI theme in RSC
  • More use of code splitting / lazy loading

Developer Tooling & Configuration:

  • Added .mcp.json to support next-devtools for improved development experience. (.mcp.json)
  • Updated ESLint configuration to auto-detect React version for better linting compatibility. (.eslintrc.json)
  • Added a Next.js-compatible Jest configuration for improved unit testing support. (jest.config.ts)
  • Removed the old Babel config, which is no longer needed with Next.js. (babel.config.js)

Testing & E2E Updates:

  • Refactored Cypress E2E and support files to use new Next.js environment variable conventions (NEXT_PUBLIC_*), updated test routes to match Next.js routing, and improved test reliability with more robust selectors and timeouts. (cypress.config.ts, cypress/e2e/addFeedForm.cy.ts, cypress/e2e/feeds.cy.ts, cypress/support/commands.ts) [1] [2] [3] [4] [5] [6] [7]
  • Updated fixture data to include new fields for validation reports, supporting new UI features and tests. (cypress/fixtures/gtfs_feed_test-516.json)

Documentation Improvements:

  • Overhauled README.md to reflect the migration to Next.js, updated environment variable instructions, added new scripts, and documented API type generation and E2E testing workflows. (README.md) [1] [2] [3]

These changes collectively modernize the project, streamline development and deployment, and ensure tests and documentation are aligned with the new Next.js architecture.

@Alessandro100 Alessandro100 self-assigned this Jan 21, 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.

2 participants