MCPcopy Index your code
hub / github.com/enactjs/enact

github.com/enactjs/enact @5.5.1

Chat with this repo
repository ↗ · DeepWiki ↗ · release 5.5.1 ↗ · + Follow
1,096 symbols 3,074 edges 299 files 103 documented · 9%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

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-2025 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.

Core symbols most depended-on inside this repo

render
called by 411
packages/core/internal/WithRef/tests/WithRef-specs.js
fn
called by 318
packages/ui/useScroll/ScrollAnimator.js
testScenario
called by 116
packages/spotlight/src/tests/utils.js
configureContainer
called by 101
packages/spotlight/src/container.js
handle
called by 65
packages/core/handle/handle.js
checkPropTypes
called by 63
packages/core/util/util.js
getContainerConfig
called by 55
packages/spotlight/src/container.js
done
called by 53
packages/i18n/I18nDecorator/getI18nClasses.js

Shape

Function 696
Method 285
Class 115

Languages

TypeScript100%

Modules by API surface

packages/ui/useScroll/useScroll.js79 symbols
packages/spotlight/src/container.js50 symbols
packages/ui/Touchable/Touch.js33 symbols
packages/ui/VirtualList/VirtualListBasic.js27 symbols
packages/ui/Marquee/MarqueeDecorator.js24 symbols
packages/spotlight/src/spotlight.js23 symbols
packages/spotlight/src/target.js22 symbols
packages/ui/resolution/resolution.js20 symbols
packages/ui/Media/Media.js19 symbols
packages/ui/ViewManager/View.js16 symbols
packages/core/util/util.js14 symbols
packages/i18n/Text/Text.js12 symbols

For agents

$ claude mcp add enact \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact