liferay-frontend-projects monorepo
Welcome to the monorepo of the Liferay Frontend Infrastructure team.
This is an experimental exploration of the ideas proposed in liferay-frontend-guidelines#88, “Explore consolidation of projects to reduce overhead”.
Issues and Pull Requests
You can file issues for any of the projects contained in this repository using our predefined templates.
Every project has its own CONTRIBUTING.md
file explaining how to contribute to the project or how to setup the local development environment but, as a general rule, before starting to work in any new feature by yourself, file a question issue to discuss it and see if it fits in the backlog.
For bugs, simply comment in the bug issue that you are working on a fix to avoid duplicating work.
We follow some guidelines to format commits and pull requests so that our CHANGELOG
files and Git history are correctly maintained.
You can also check the change logs of the project releases in the releases page.
Now, to the list of projects contained in this repository.
Guidelines
Documentation
These are the documents that used to live in the liferay-frontend-guidelines repository.
- Projects
guidelines/
: High-level introduction to the guidelines.guidelines/general/
: General guidance about working in any Liferay codebase.guidelines/dxp/
: Guidance specific to working on Liferay DXP.guidelines/css/
: Guidance about CSS.
- Issues
- label:
guidelines
,dependencies
: Requests to add new development dependencies - label:
guidelines
,rfc
: Proposals for changes to guidelines - label:
guidelines
,question
: Question about Liferay’s frontend practices
- label:
- Pull requests
Package eslint-plugin
This is an ESLint shareable config that helps enforce the Liferay Frontend Guidelines.
- Project
- Issues
- Pull requests
- npm packages
Projects
Liferay DXP Development Tools
These include the toolkits to deal with themes, JavaScript projects, and the AMD Loader, which is the piece of software that comes with liferay-portal and orchestrates all JS module loading and wiring.
Liferay Themes Toolkit
- Projects
- Themes Toolkit v10.x+: Develop themes for DXP versions 7.2 and above (uses Gulp 4)
- Themes Toolkit v9.x: Develop themes for DXP versions 7.2 and 7.3 (uses Gulp 3)
- Themes Toolkit v8.x: Develop themes for DXP versions 7.0 and 7.1
- Issues
- Pull requests
- npm packages
- generator-liferay-theme: Yeoman generator to create Liferay DXP Theme projects
- liferay-theme-tasks: Gulp tasks to build and deploy Liferay DXP Theme projects
Liferay JS Toolkit
- Projects
- JS Toolkit v2.x: Develop JavaScript portlets and packages suitable for deployment to Liferay DXP
- JS Toolkit v3.x: An experimental and NOT officially released revamp of the JS Toolkit based on webpack
- Issues
- Pull requests
- npm packages
- generator-liferay-js: Yeoman generator to create Liferay JavaScript projects
- liferay-npm-bundler: A webpack-like bundler to process npm packages and make them suitable for deployment to Liferay DXP and its AMD Loader
- liferay-npm-build-support: Some scripts to help building JAR artifacts to be deployed to Liferay DXP
Liferay AMD Loader
- Projects
- amd-loader: The AMD Loader included with Liferay DXP
- Issues
- Pull requests
- npm packages
Internal Development Tools (npm-tools
)
This is a collection of utilities to deal with building liferay-portal.
- Projects
- npm-tools: The yarn workspace holding the projects
- npm-scripts: A collection of npm scripts to build JavaScript projects in Liferay DXP
- changelog-generator: A tool to generate a section inside a
CHANGELOG.md
explaining the changes of a specific release (based on merged PRs) - js-publish: A tool to publish packages to npm based on our standard workflow
- jest-junit-reporter: A JUnit reporter for Jest
- js-insights: A simple dependency analysis reporter that scans ES6 modules for imports and generate a report on used external packages
- Issues
- Pull requests
- npm packages
Maintenance
These are projects that are not under active development but which may receive bug fixes.
- Projects
- Senna.js: Single Page Application engine.
- Issues
- Pull requests
- npm packages
Third-party
In addition to our own projects listed above, we sometimes have the need to apply small patches on top of third-party code.
- Projects
- alloy-ui: A fork of https://github.com/liferay/alloy-ui
- alloy-font-awesome: A fork of https://github.com/liferay/alloy-font-awesome
- jquery-form: A fork of https://github.com/jquery-form/form
- Issues
- Pull requests
- npm packages