A forward-thinking library of web components.
- Works with all frameworks 🧩
- Works with CDNs 🚛
- Fully customizable with CSS 🎨
- Includes an official dark theme 🌛
- Built with accessibility in mind ♿️
- Open source 😸
Designed and developed in Hamburg by Circular Team
Inspired by shoelace.style Designed in New Hampshire by Cory LaViska.
Documentation: Circular docs
Source: github.com/circular-o/circular
Circular makers can use this documentation to learn how to build Circular from source. You will need Node >= 16.20 to build and run the project locally.
You don't need to do any of this to use Circular! This page is for people who want to contribute to the project, tinker with the source, or create a custom build of Circular.
If that's not what you're trying to do, the documentation website is where you want to be.
Components are built with LitElement, a custom elements base class that provides an intuitive API and reactive data binding. The build is a custom script with bundling powered by esbuild.
Start by forking the repo on GitHub, then clone it locally and install dependencies.
git clone https://github.com/YOUR_GITHUB_USERNAME/circular
cd circular
npm install
Once you've cloned the repo, run the following command.
npm start
This will spin up the Circular dev server. After the initial build, a browser will open automatically. There is currently no hot module reloading (HMR), as browser's don't provide a way to reregister custom elements, but most changes to the source will reload the browser automatically.
To generate a production build, run the following command.
npm run build
To scaffold a new component, run the following command, replacing o-tag-name
with the desired tag name.
npm run create o-tag-name
This will generate a source file, a stylesheet, and a docs page for you. When you start the dev server, you'll find the new component in the "Components" section of the sidebar.
Circular is an open source project and contributions are encouraged! If you're interesting in contributing, please review the contribution guidelines first.
Circular is designed and develop in Hamburg by Circular Team. It’s available under the terms of the MIT license.
If you’re using Circular to make a profit, We respectfully ask that you help fund its original development by becoming a sponsor. There are multiple tiers to choose from with benefits at every level, including prioritized support, bug fixes, feature requests, and advertising.
👇 Your support is very much appreciated! 👇
Whether you're building Circular or building something with Circular — have fun creating! 🥾