Skip to content
/ enact Public

An app development framework built atop React that’s easy to use, performant and customizable.

License

Notifications You must be signed in to change notification settings

enactjs/enact

Repository files navigation

Enact

An app development framework built atop React that’s easy to use, performant and customizable.

Enact is to provide the building blocks for creating robust and maintainable applications. To that end, we’ve pulled together the best solutions for internationalization (i18n), accessibility (a11y), focus management, linting, testing and building. Then, we created a set of reusable components and behaviors on top of that. We combined these pieces and ensured that they work together seamlessly, allowing developers to focus on implementation.

Travis npm (scoped) license Gitter PRs Welcome

A mono-repo containing Enact framework modules

  • core The set of essential building blocks for an Enact-based application.
  • ui A set of reusable behaviors and a library of unstyled components for creating Enact themes.
  • spotlight An extensible library for 5-way navigation and focus control.
  • i18n Internationalization library based on iLib.
  • webos Utility functions for working with webOS devices.

Enact uses lerna to manage the individual modules within this repo.

Getting Started

Developers should use the individual npm modules hosted under the @enact namespace.

For local framework development, this mono-repo can be setup using the bootstrap command:

npm run bootstrap

Alternatively, if you wish to install and setup package dependencies for global usage on a system, the bootstrap-link command can be used:

npm run bootstrap-link

That command will npm link the packages into global NPM userspace, for use in other projects via npm link <package> or enact link.

Documentation

Copyright and License Information

Unless otherwise specified, all content, including all source code files and documentation files in this repository are:

Copyright (c) 2012-2024 LG Electronics

Unless otherwise specified or set forth in the NOTICE file, all content, including all source code files and documentation files in this repository are: Licensed under the Apache License, Version 2.0 (the "License"); you may not use this content except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.