Spectre.css is a lightweight, responsive and modern CSS framework for faster and extensible development.
- Lightweight (~10KB gzipped) starting point for your projects
- Flexbox-based, responsive and mobile-friendly layout
- Carefully designed elements and components
Spectre is a side project based on years of CSS development work on a large web service project. Spectre only includes modern base styles, responsive layout system, CSS components and utilities, and it can be modified for your project with LESS compiler.
Read the documentation to learn more.
There are 5 ways to get started with Spectre CSS framework in your projects. You can either manually install or use NPM, Yarn and Bower.
Download the compiled and minified Spectre CSS file. And include spectre.css
located in /docs/dist
in your website or Web app <head> part.
<link rel="stylesheet" href="spectre.min.css" />
Alternatively, you can use the unpkg CDN to load compiled Spectre.css.
<link rel="stylesheet" href="https://unpkg.com/spectre.css/dist/spectre.min.css" />
$ npm install spectre.css --save
$ yarn add spectre.css
$ bower install spectre.css --save
You can compile your custom version of Spectre.css. Read the documentation.
- Typography - headings, paragraphs, semantic text, blockquote, lists and code elements, optimized for east asian fonts
- Tables - organize and display data
- Buttons - button styles in different types and sizes, and even button groups
- Forms - input, radio, checkbox, switch and other form elements
- Icons - single-element, responsive and pure CSS icons
- Labels - formatted text tags for highlighted, informative information
- Codes - inline and multiline code snippets
- Media - responsive images, figures and video classes
- Flexbox-grid - flexbox based responsive grid system
- Responsive - responsive grid and utilities
- Navbar - layout container that appears in the header of apps and websites
- Panels - flexible view container layout with auto-expand content section
- Empty states - empty states/blank slates for first time use, empty data and error screens
- Accordions - used to toggle sections of content
- Autocomplete - form component provides suggestions while you type
- Avatars - user profile pictures or name initials rendered avatar
- Badges - unread number indicators
- Bars - progress of a task or the value within the known range
- Cards - flexible content containers
- Chips - complex entities in small blocks
- Menus - list of links or buttons for actions and navigation
- Modals - flexible dialog prompts
- Navigation - breadcrumb, tabs, pagination and navs
- Popovers - small overlay content containers
- Steps - progress indicators of a sequence of task steps
- Tiles - repeatable or embeddable information blocks
- Toasts - showing alerts or notifications
- Tooltips - simple tooltip built entirely in CSS
- Utilities - colors, display, divider, loading, position, shapes and text utilities
- Calendars - date or date range picker and events display
- Carousels - slideshows for cycling images
- Comparison Sliders - sliders for comparing two images, built entirely in CSS
- Filters - CSS only content filters
- Meters - representing the value within the known range
- Parallax - acting like Apple TV/tvOS hover parallax effect, built entirely in CSS
- Progress - indicators for the progress completion of a task
- Sliders - selecting values from ranges
- Timelines - ordered sequences of activities
Spectre uses Autoprefixer to make most styles compatible with earlier browsers and Normalize.css for CSS resets. Spectre is designed for modern browsers. For best compatibility, these browsers are recommended:
- Chrome (last 4)
- Microsoft Edge (last 4)
- Firefox (last 4)
- Safari (last 4)
- Opera (last 4)
- Internet Explorer 10+
Designed and built with ♥ by Yan Zhu. Feel free to submit a pull request. Help is always appreciated.