Cirrus UI
The SCSS framework for the modern web.
README
Cirrus
A component-and-utility-centric SCSS framework designed for rapid prototyping. Use beautiful pre-built components to bootstrap your next project and utility classes to polish your final design.
Request Feature
/
Report a Bug/
Examples:sparkles: Features
:art: Beautiful Components - Beautifully designed components come right out of the box for rapid prototyping.
:balloon: Sass First - Forget bundling tons of JavaScript with each component. All styles require no JS for interactions/functionality (see Modals, Dropdowns, etc.).
:rainbow: Configuration at its Core - Add additional components, remove utility classes, disable features, etc. Cirrus takes a generative approach to building your stylesheets.
:zap: Lightweight - A large amount of features with a minimal footprint.
:iphone: Responsive - Fully responsive by design.
:dart: Supported Browsers
Cirrus relies on What CSS to prefix? to determine which selectors need prefixes.
[ | [ | [ | [ | [ | [ |
---|---|---|---|---|---|
--- | --- | --- | --- | --- | --- |
IE11, | last | last | last | last | last |
📦 Install
Npm
- ```sh
- npm install cirrus-ui
- ```
Yarn
- ```sh
- yarn add cirrus-ui
- ```
CDN
For CDNs, it is recommended to attach a specific versions to the URLs to avoid unexpected updates to maintain consistency in your project.
Unpkg
- ``` html
- <link rel="stylesheet" href="https://unpkg.com/cirrus-ui">
- ```
JsDelivr
- ``` html
- <link rel="stylesheet" href="https://www.jsdelivr.com/package/npm/cirrus-ui">
- ```
Check out the Setup guide for more information.
:hammer: Usage
Basic Page
- ``` html
- <!DOCTYPE html>
- <html>
- <head>
- <title>Hello World</title>
- <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=0" />
- <meta charset="UTF-8" />
- <meta http-equiv="X-UA-Compatible" content="IE=edge;" />
- <link href="https://unpkg.com/cirrus-ui" type="text/css" rel="stylesheet" />
- <link href="https://fonts.googleapis.com/css?family=Nunito+Sans:200,300,400,600,700" rel="stylesheet" />
- <link href="https://fonts.googleapis.com/css?family=Montserrat:400,700" rel="stylesheet" />
- </head>
- <body>
- <h1>👋Hello World</h1>
- </body>
- </html>
- ```
React
- ``` js
- import { StrictMode } from "react";
- import ReactDOM from "react-dom";
- import App from "./App";
- import 'cirrus-ui'; // You can import it here if you want
- const rootElement = document.getElementById("root");
- ReactDOM.render(
- <StrictMode>
- <App />
- </StrictMode>,
- rootElement
- );
- ```
Vue
- ``` js
- import Vue from 'vue';
- import App from './App.vue';
- import 'cirrus-ui';
- Vue.config.productionTip = false;
- new Vue({
- render: (h) => h(App),
- }).$mount('#app');
- ```
Svelte
- ``` js
- import App from "./App.svelte";
- import "cirrus-ui";
- const app = new App({
- target: document.body
- });
- export default app;
- ```
Sass/Scss
- ```scss
- @use "node_modules/cirrus-ui/src/cirrus-ext" as * with (
- $config: (
- excludes: (
- ABSOLUTES,
- ),
- opacity: null, // Disable default opacity classes
- extend: (
- // Add your own
- opacity: (
- 25: .25,
- 50: .5,
- 75: .75,
- )
- )
- ),
- );
- ```
Check out the Setup guide for more information.
:computer: Development
Use Gitpod, a free online dev environment for GitHub.
Or clone locally:
- ``` sh
- $ git clone git@github.com:Spiderpig86/Cirrus.git
- $ cd cirrus
- $ yarn install
- $ yarn watch
- ```
:crystal_ball: What's Included
- Base - base styles.
- Animations
- Default
- Font
- Grid
- Layout
- Media
- Modifiers
- Spacing
- Builds - build files for core and ext.
- Components - framework components.
- Accordion
- Avatar
- Breadcrumb
- Button
- Card
- Code
- Footer
- Forms
- Frames
- Header
- Links
- Lists
- Modal
- Pagination
- Placeholder
- Progress
- Table
- Tabs
- Tags
- Tiles
- Toast
- Tooltips
- Internal - internal APIs, functions, constants, etc.
- Utils - utility classes.
- Absolute
- Blur
- Border
- Clearfix
- Display
- Flex
- Misc
- Opacity
- Overflow
- Position
- Shadow
- Transitions
- Z-Index
:clap: Related Projects
Project | Description |
---|---|
--------------------------------------------------------- | ------------------------------------------------------------------------------------- |
[vue-cirrus](https://github.com/FlorianWoelki/vue-cirrus) | Cirrus |
cirrus-blocks | A |
[cirrus-reset](https://github.com/Cirrus-UI/Cirrus-Reset) | A |
:newspaper: License and Attribution
Cirrus is licensed under the MIT license. If this frame work has helped you in any way, attribution in the footer of your website would be much appreciated.
Read our contributing guide and improve Cirrus together.
We welcome all contributions. Please read our CONTRIBUTING.md first. You can submit any ideas as pull requests or as GitHub issues. If you'd like to improve code, check out the Development Instructions and have a good time! :)
When creating issues, please follow the templates provided for the issue type you selected. The added detail and formatting will help me understand and resolve your issue faster.
❤️ Sponsors and Backers
I would greatly appreciate any support for the continued development of this project. :smile: