1 | <p align="center"><img src="https://raw.githubusercontent.com/Spiderpig86/Cirrus/master/img/CirrusLogo.png" width="200"></p>
|
2 | <h1 align="center">Cirrus</h1>
|
3 |
|
4 | <div align="center">
|
5 |
|
6 | [](https://github.com/Spiderpig86/Cirrus)
|
7 | [](https://opensource.org/licenses/MIT)
|
8 | [](https://github.com/Spiderpig86/Cirrus/actions)
|
9 | [](https://snyk.io/test/github/Spiderpig86/Cirrus?targetFile=package.json)
|
10 | [](https://www.npmjs.com/package/cirrus-ui)
|
11 | [](https://houndci.com)
|
12 | [](https://www.jsdelivr.com/package/npm/cirrus-ui)
|
13 |
|
14 | </div>
|
15 |
|
16 | <p align="center">
|
17 | 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.
|
18 | <br />
|
19 | <a href="https://cirrus-ui.netlify.app/"><strong>Check out the docs »</strong></a>
|
20 | <br />
|
21 | <br />
|
22 | <a href="https://github.com/Spiderpig86/Cirrus/issues/new?assignees=&labels=&template=bug-report.md&title=" target="_blank">Request Feature</a>
|
23 | /
|
24 | <a href="https://github.com/Spiderpig86/Cirrus/issues/new?assignees=&labels=&template=bug-report.md&title=" target="_blank">Report a Bug</a>
|
25 | /
|
26 | <a href="https://cirrus-ui.netlify.app/getting-started/examples" target="_blank">Examples</a>
|
27 | </p>
|
28 |
|
29 |
|
30 | ## :sparkles: Features
|
31 |
|
32 | * :art: **Beautiful Components** - Beautifully designed components come right out of the box for rapid prototyping.
|
33 | * :balloon: **Sass First** - Forget bundling tons of JavaScript with each component. All styles require no JS for interactions/functionality (see Modals, Dropdowns, etc.).
|
34 | * :rainbow: **Configuration at its Core** - Add additional components, remove utility classes, disable features, etc. Cirrus takes a generative approach to building your stylesheets.
|
35 | * :zap: **Lightweight** - A large amount of features with a minimal footprint.
|
36 | * :iphone: **Responsive** - Fully responsive by design.
|
37 | * :computer: **Vscode Extension Support** - Install it [here](https://marketplace.visualstudio.com/items?itemName=Spiderpig86.cirrus-intellisense).
|
38 | * 🤹♂️ **Playground** - Try out whatever experiment you want with Cirrus [here](https://www.cirrus-ui.com/playground).
|
39 |
|
40 | ## :dart: Supported Browsers
|
41 | Cirrus relies on [What CSS to prefix?](http://shouldiprefix.com/) to determine which selectors need prefixes.
|
42 |
|
43 | | [<img src="https://raw.githubusercontent.com/alrra/browser-logos/master/src/edge/edge_48x48.png" alt="IE / Edge" width="24px" height="24px" />](http://godban.github.io/browsers-support-badges/)</br>IE / Edge | [<img src="https://raw.githubusercontent.com/alrra/browser-logos/master/src/firefox/firefox_48x48.png" alt="Firefox" width="24px" height="24px" />](http://godban.github.io/browsers-support-badges/)</br>Firefox | [<img src="https://raw.githubusercontent.com/alrra/browser-logos/master/src/chrome/chrome_48x48.png" alt="Chrome" width="24px" height="24px" />](http://godban.github.io/browsers-support-badges/)</br>Chrome | [<img src="https://raw.githubusercontent.com/alrra/browser-logos/master/src/safari/safari_48x48.png" alt="Safari" width="24px" height="24px" />](http://godban.github.io/browsers-support-badges/)</br>Safari | [<img src="https://raw.githubusercontent.com/alrra/browser-logos/master/src/opera/opera_48x48.png" alt="Opera" width="24px" height="24px" />](http://godban.github.io/browsers-support-badges/)</br>Opera | [<img src="https://raw.githubusercontent.com/alrra/browser-logos/master/src/electron/electron_48x48.png" alt="Electron" width="24px" height="24px" />](http://godban.github.io/browsers-support-badges/)</br>Electron |
|
44 | | --- | --- | --- | --- | --- | --- |
|
45 | | IE11, Edge | last 3 versions, ESR | last 3 versions | last 3 versions | last 3 versions | last 3 versions |
|
46 |
|
47 | ## 📦 Install
|
48 |
|
49 | #### Npm
|
50 | ```sh
|
51 | npm install cirrus-ui
|
52 | ```
|
53 |
|
54 | #### Yarn
|
55 |
|
56 | ```sh
|
57 | yarn add cirrus-ui
|
58 | ```
|
59 |
|
60 | #### CDN
|
61 |
|
62 | For CDNs, it is recommended to attach a specific versions to the URLs to avoid unexpected updates to maintain consistency in your project.
|
63 |
|
64 | **Please do not reference the `dist` folder artifacts directly as these are subject to change at any time.**
|
65 |
|
66 | ##### Unpkg
|
67 | ```html
|
68 | <link rel="stylesheet" href="https://unpkg.com/cirrus-ui">
|
69 | ```
|
70 |
|
71 | ##### JsDelivr
|
72 |
|
73 | ```html
|
74 | <link rel="stylesheet" href="https://www.jsdelivr.com/package/npm/cirrus-ui">
|
75 | ```
|
76 |
|
77 | Check out the [Setup](https://www.cirrus-ui.com/getting-started/setup) guide for more information.
|
78 |
|
79 | ## :hammer: Usage
|
80 |
|
81 | #### Basic Page
|
82 |
|
83 | ```html
|
84 | <!DOCTYPE html>
|
85 | <html>
|
86 | <head>
|
87 | <title>Hello World</title>
|
88 | <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=0" />
|
89 | <meta charset="UTF-8" />
|
90 | <meta http-equiv="X-UA-Compatible" content="IE=edge;" />
|
91 | <link href="https://unpkg.com/cirrus-ui" type="text/css" rel="stylesheet" />
|
92 | <link href="https://fonts.googleapis.com/css?family=Nunito+Sans:200,300,400,600,700" rel="stylesheet" />
|
93 | <link href="https://fonts.googleapis.com/css?family=Montserrat:400,700" rel="stylesheet" />
|
94 | </head>
|
95 | <body>
|
96 | <h1>👋Hello World</h1>
|
97 | </body>
|
98 | </html>
|
99 | ```
|
100 |
|
101 | #### React
|
102 |
|
103 | ```jsx
|
104 | import { StrictMode } from "react";
|
105 | import ReactDOM from "react-dom";
|
106 |
|
107 | import App from "./App";
|
108 |
|
109 | import 'cirrus-ui'; // You can import it here if you want
|
110 |
|
111 | const rootElement = document.getElementById("root");
|
112 | ReactDOM.render(
|
113 | <StrictMode>
|
114 | <App />
|
115 | </StrictMode>,
|
116 | rootElement
|
117 | );
|
118 | ```
|
119 |
|
120 | #### Vue
|
121 |
|
122 | ```js
|
123 | import Vue from 'vue';
|
124 | import App from './App.vue';
|
125 |
|
126 | import 'cirrus-ui';
|
127 |
|
128 | Vue.config.productionTip = false;
|
129 |
|
130 | new Vue({
|
131 | render: (h) => h(App),
|
132 | }).$mount('#app');
|
133 | ```
|
134 |
|
135 | #### Svelte
|
136 |
|
137 | ```js
|
138 | import App from "./App.svelte";
|
139 | import "cirrus-ui";
|
140 |
|
141 | const app = new App({
|
142 | target: document.body
|
143 | });
|
144 |
|
145 | export default app;
|
146 | ```
|
147 |
|
148 | #### Sass/Scss
|
149 |
|
150 | ```scss
|
151 | @use "node_modules/cirrus-ui/src/cirrus-ext" as * with (
|
152 | $config: (
|
153 | excludes: (
|
154 | ABSOLUTES,
|
155 | ),
|
156 | opacity: null, // Disable default opacity classes
|
157 | extend: (
|
158 | // Add your own
|
159 | opacity: (
|
160 | 25: .25,
|
161 | 50: .5,
|
162 | 75: .75,
|
163 | )
|
164 | )
|
165 | ),
|
166 | );
|
167 | ```
|
168 |
|
169 | Check out the [Setup](https://www.cirrus-ui.com/getting-started/setup) guide for more information.
|
170 |
|
171 | ## :computer: Development
|
172 |
|
173 | Use Gitpod, a free online dev environment for GitHub.
|
174 |
|
175 | [](https://gitpod.io/#https://github.com/Spiderpig86/Cirrus)
|
176 |
|
177 | Or clone locally:
|
178 |
|
179 | ```bash
|
180 | $ git clone git@github.com:Spiderpig86/Cirrus.git
|
181 | $ cd cirrus
|
182 | $ yarn install
|
183 | $ yarn watch
|
184 | ```
|
185 |
|
186 | ## :crystal_ball: What's Included
|
187 |
|
188 | - **Base** - base styles.
|
189 | - Animations
|
190 | - Default
|
191 | - Font
|
192 | - Grid
|
193 | - Layout
|
194 | - Media
|
195 | - Modifiers
|
196 | - Spacing
|
197 | - **Builds** - build files for `core` and `ext`.
|
198 | - **Components** - framework components.
|
199 | - Accordion
|
200 | - Avatar
|
201 | - Breadcrumb
|
202 | - Button
|
203 | - Card
|
204 | - Code
|
205 | - Footer
|
206 | - Forms
|
207 | - Frames
|
208 | - Header
|
209 | - Links
|
210 | - Lists
|
211 | - Modal
|
212 | - Pagination
|
213 | - Placeholder
|
214 | - Progress
|
215 | - Table
|
216 | - Tabs
|
217 | - Tags
|
218 | - Tiles
|
219 | - Toast
|
220 | - Tooltips
|
221 | - **Internal** - internal APIs, functions, constants, etc.
|
222 | - **Utils** - utility classes.
|
223 | - Absolute
|
224 | - Blur
|
225 | - Border
|
226 | - Clearfix
|
227 | - Display
|
228 | - Flex
|
229 | - Misc
|
230 | - Opacity
|
231 | - Overflow
|
232 | - Position
|
233 | - Shadow
|
234 | - Transitions
|
235 | - Z-Index
|
236 |
|
237 | ## :clap: Related Projects
|
238 | | Project | Description |
|
239 | | --------------------------------------------------------- | ------------------------------------------------------------------------------------- |
|
240 | | [vue-cirrus](https://github.com/FlorianWoelki/vue-cirrus) | Cirrus components for Vue.js with straightforward syntax |
|
241 | | cirrus-blocks | A collection of beautiful components built with Cirrus ready to be copied and pasted. |
|
242 | | [cirrus-reset](https://github.com/Cirrus-UI/Cirrus-Reset) | A simple CSS reset from Cirrus. |
|
243 |
|
244 | ## :newspaper: License and Attribution
|
245 | Cirrus is licensed under the [MIT license](https://github.com/Spiderpig86/Cirrus/blob/master/LICENSE "MIT License"). If this frame work has helped you in any way, attribution in the footer of your website would be much appreciated.
|
246 |
|
247 | [](https://app.fossa.com/projects/git%2Bgithub.com%2FSpiderpig86%2FCirrus?ref=badge_large)
|
248 |
|
249 | ## 🤝 Contributing [](http://makeapullrequest.com)
|
250 |
|
251 | Read our [contributing guide](https://github.com/Spiderpig86/Cirrus/blob/master/.github/CONTRIBUTING.yml) and improve Cirrus together.
|
252 |
|
253 | We welcome all contributions. Please read our [CONTRIBUTING.md](https://github.com/Spiderpig86/Cirrus/blob/master/.github/CONTRIBUTING.md) first. You can submit any ideas as [pull requests](https://github.com/Spiderpig86/Cirrus/pulls) or as [GitHub issues](https://github.com/Spiderpig86/Cirrus/issues). If you'd like to improve code, check out the [Development Instructions](https://www.cirrus-ui.com/getting-started/developing) and have a good time! :)
|
254 |
|
255 | 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.
|
256 |
|
257 | [](https://issuehunt.io/r/Spiderpig86/Cirrus)
|
258 |
|
259 | ## ❤️ Sponsors and Backers
|
260 |
|
261 | I would greatly appreciate any support for the continued development of this project. :smile:
|
262 |
|
263 | [](https://opencollective.com/cirrus#support)
|
264 |
|
265 | [](https://opencollective.com/cirrus#support)
|