GithubHelp home page GithubHelp logo

openedx / frontend-app-enterprise-public-catalog Goto Github PK

View Code? Open in Web Editor NEW
2.0 50.0 10.0 9.86 MB

A site for public browsing of enterprise catalogs, also called the Explore Catalog

License: GNU Affero General Public License v3.0

JavaScript 96.36% Makefile 0.85% HTML 0.21% SCSS 2.58%

frontend-app-enterprise-public-catalog's Introduction

Build Status Codecov license

frontend-app-enterprise-public-catalog

Introduction

This application is a public facing catalog page for use by edX consumers to find courses in catalogs before deciding to enroll.

The dev server is running at http://localhost:8735. The staging server is running at https://explore-catalog.stage.edx.org/.

Project Structure

The source for this project is organized into nested submodules according to the ADR Feature-based Application Organization.

Build Process Notes

Local Development

To run this project locally:

  1. Clone this repository

  2. From repository root folder, run:

    npm install

    Note: locally this app will default to open edX branding, so colors and formatting might look a little different than what will be deployed. To combat this, you can optionally run:

    npm install --save @edx/brand@npm:@edx/brand-edx.org

  3. This project requires Algolia developer keys. Once you have them, make the following local modifications to the .env.development file and replace the keys:

    ALGOLIA_APP_ID=''
    ALGOLIA_SEARCH_API_KEY=''
    ALGOLIA_INDEX_NAME=''
    
  4. You will also need to replace the following variables with valid Catalog Query Titles that are present in your Algolia index:

    EDX_FOR_SUBSCRIPTION_TITLE='' # default = 'Subscription'
    EDX_ENTERPRISE_ALACARTE_TITLE='' # default = 'A la carte'
    
  5. From repository root folder, run:

    npm start

    to start your local server at http://localhost:8735.

Helpful Testing Commands

  • npm run tests
  • npm run lint
  • npm run lint:fix to automatically fix errors

Production Build

The production build is created with npm run build.

Internationalization

Please see edx/frontend-platform's i18n module for documentation on internationalization. The documentation explains how to use it, and the How To has more detail.

frontend-app-enterprise-public-catalog's People

Contributors

abdullahwaheed avatar adamstankiewicz avatar alex-sheehan-edx avatar arbrandes avatar bcitro avatar bilalqamar95 avatar binodpant avatar caplan188 avatar edx-abolger avatar feanil avatar jajjibhai008 avatar jawayria avatar johnnagro avatar katrinan029 avatar kiram15 avatar mahamakifdar19 avatar marlonkeating avatar mashal-m avatar nedbat avatar omarithawi avatar renovate-bot avatar renovate[bot] avatar saleem-latif avatar sarina avatar syed-ali-abbas-zaidi avatar taliaedx avatar timmc-edx avatar usamasadiq avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

frontend-app-enterprise-public-catalog's Issues

Upgrade React JS to v17

This repo is currently using React JS v16. We need to upgrade it to React 17 before moving to latest React version(v18).
React 17 doesn’t add any new developer-facing features, so its upgrade might not cause any breaking changes. Our end goal is to upgrade React to v18 but v18 no longer support enzyme, so we are upgrading to React 17 and then we’ll migrate from enzyme.

Epic Link

React 17 upgrade

Dependency Dashboard

This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.

Warning

These dependencies are deprecated:

Datasource Name Replacement PR?
npm react-instantsearch-dom Unavailable
npm redux-devtools-extension Available

Rate-Limited

These updates are currently rate-limited. Click on a checkbox below to force their creation now.

  • fix(deps): update dependency @edx/frontend-component-footer to v7.1.2
  • fix(deps): update dependency @edx/frontend-component-header to v8.6.0
  • fix(deps): update dependency @edx/frontend-enterprise-catalog-search to v10.6.0
  • fix(deps): update react-router monorepo to v6.26.0 (react-router, react-router-dom)
  • chore(deps): update dependency prettier to v3
  • chore(deps): update testing-library monorepo (major) (@testing-library/jest-dom, @testing-library/react, @testing-library/react-hooks, @testing-library/user-event)
  • fix(deps): update dependency @edx/frontend-platform to v8
  • fix(deps): update dependency @openedx/paragon to v22
  • fix(deps): update dependency algoliasearch to v5
  • fix(deps): update dependency npm to v10
  • fix(deps): update dependency query-string to v9
  • fix(deps): update dependency react-redux to v9
  • fix(deps): update dependency redux to v5
  • fix(deps): update react monorepo to v18 (major) (react, react-dom, react-test-renderer)
  • 🔐 Create all rate-limited PRs at once 🔐

Open

These updates have all been created already. Click a checkbox below to force a retry/rebase of any.

Detected dependencies

github-actions
.github/workflows/add-depr-ticket-to-depr-board.yml
.github/workflows/add-remove-label-on-comment.yml
.github/workflows/ci.yml
  • actions/checkout v2
  • actions/setup-node v1
  • codecov/codecov-action v4
.github/workflows/commitlint.yml
.github/workflows/lockfileversion-check.yml
.github/workflows/self-assign-issue.yml
.github/workflows/update-browserslist-db.yml
npm
package.json
  • @edx/brand ^1.2.2
  • @edx/brand-openedx ^1.1.0
  • @edx/frontend-component-footer ^7.0.1
  • @edx/frontend-component-header ^8.3.3
  • @edx/frontend-enterprise-catalog-search 10.3.0
  • @edx/frontend-enterprise-hotjar 7.1.0
  • @edx/frontend-enterprise-utils 9.1.0
  • @edx/frontend-platform 7.1.4
  • @edx/openedx-atlas ^0.6.0
  • @openedx/paragon ^21.0.0
  • algoliasearch 4.24.0
  • axios ^1.6.7
  • babel-polyfill 6.26.0
  • classnames 2.5.1
  • core-js 3.18.1
  • file-saver ^2.0.5
  • history 5.3.0
  • lodash.debounce 4.0.8
  • lodash.escaperegexp 4.1.2
  • npm ^8.19.3
  • postcss-loader ^8.1.1
  • prop-types 15.8.1
  • query-string 7.1.3
  • react ^17.0.2
  • react-dom ^17.0.2
  • react-helmet 6.1.0
  • react-instantsearch-dom 6.40.4
  • react-redux 7.2.9
  • react-router 6.24.1
  • react-router-dom 6.24.1
  • react-test-renderer 17.0.2
  • redux 4.2.1
  • redux-devtools-extension 2.13.9
  • redux-logger 3.0.6
  • regenerator-runtime 0.13.9
  • style-loader ^4.0.0
  • @edx/browserslist-config ^1.1.0
  • @openedx/frontend-build 13.1.4
  • @edx/reactifex ^2.1.1
  • @testing-library/jest-dom 5.17.0
  • @testing-library/react 12.1.5
  • @testing-library/react-hooks 7.0.2
  • @testing-library/user-event 13.5.0
  • glob 7.2.3
  • husky 6.0.0
  • jest ^25.1.0
  • prettier 2.8.8
  • reactifex 1.1.1
nvm
.nvmrc
  • node 18

  • Check this box to trigger a request for Renovate to run again on this repository

bug: no translations are found when running `make extract_translations`

This repository needs to use react-intl pattern similar to frontend-app-learning.

Run `npm audit` for details.
# Pulling display strings from .jsx files into .json files...
rm -rf ./temp/babel-plugin-formatjs
npm run-script i18n_extract

> @edx/[email protected] i18n_extract
> BABEL_ENV=i18n fedx-scripts babel src --quiet > /dev/null

# Gathering JSON messages into one file...
./node_modules/.bin/transifex-utils.js ./temp/babel-plugin-formatjs ./src/i18n/transifex_input.json
/home/runner/work/openedx-translations/openedx-translations/translations/frontend-app-enterprise-public-catalog/node_modules/@edx/frontend-platform/i18n/scripts/transifex-utils.js:42
  throw new Error('Found no messages');
  ^

Error: Found no messages
    at Object.<anonymous> (/home/runner/work/openedx-translations/openedx-translations/translations/frontend-app-enterprise-public-catalog/node_modules/@edx/frontend-platform/i18n/scripts/transifex-utils.js:42:9)
    at Module._compile (node:internal/modules/cjs/loader:1198:14)
    at Object.Module._extensions..js (node:internal/modules/cjs/loader:1252:10)
    at Module.load (node:internal/modules/cjs/loader:10[76](https://github.com/openedx/openedx-translations/actions/runs/9491561897/job/26157757304#step:5:77):32)
    at Function.Module._load (node:internal/modules/cjs/loader:911:12)
    at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:81:12)
    at node:internal/main/run_main_module:22:47
make: *** [Makefile:23: i18n.concat] Error 1

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.