Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/alimansoor/omcss
OMCSS (Organisable and Maintainable CSS) is an approach towards creating a scalable and modular architecture for your application's stylesheet.
https://github.com/alimansoor/omcss
bem bem-css css css-framework css3 front-end-development frontend frontend-framework modular-css oocss oocss-framework sass sass-framework scss scss-framework smacss
Last synced: 30 days ago
JSON representation
OMCSS (Organisable and Maintainable CSS) is an approach towards creating a scalable and modular architecture for your application's stylesheet.
- Host: GitHub
- URL: https://github.com/alimansoor/omcss
- Owner: alimansoor
- License: mit
- Created: 2018-05-03T03:37:58.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2018-05-05T07:32:38.000Z (over 6 years ago)
- Last Synced: 2024-10-02T03:21:42.818Z (about 1 month ago)
- Topics: bem, bem-css, css, css-framework, css3, front-end-development, frontend, frontend-framework, modular-css, oocss, oocss-framework, sass, sass-framework, scss, scss-framework, smacss
- Language: CSS
- Size: 883 KB
- Stars: 8
- Watchers: 0
- Forks: 5
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
# OMCSS
OMCSS (Organisable and Maintainable CSS) is an approach towards creating a scalable and modular architecture for your CSS that you can expand and maintain with ease.
## Getting Started
OMCSS provides a bootstrap framework that will help you get started with your application's stylesheet. You can download OMCSS framework from the below options available:
* [Download OMCSS framework](https://github.com/alimansoor/omcss/archive/master.zip)
* Clone the repo: `git clone https://github.com/alimansoor/omcss.git`
* Install with npm: `npm install omcss`### Prerequisites
[Sass](https://sass-lang.com) compiler is a must to compile individual files into your application stylesheet.
Please visit [https://sass-lang.com/install](https://sass-lang.com/install) to setup Sass based on your environment i.e. Linux, Windows, Mac OS X.
### File Structure
```
omcss/
├── base/
│ ├── _grid.scss
│ ├── _reset.scss
│ └── _typography.scss
│
├── layout/
│ ├── _header.scss
│ ├── _footer.scss
│ ├── _sidebar.scss
│ └── _form.scss
│
├── modules/
│ ├── _brand.scss
│ ├── _breadcrumb.scss
│ ├── _card.scss
│ ├── _carousel.scss
│ └── _modal.scss│
│
├── pages/
│ ├── _home.scss
│ ├── _about.scss
│ └── _contact.scss
│
├── themes/
│ ├── _default.scss
│ └── _dashboard.scss
│
├── utils/
│ ├── _config.scss
│ ├── _extends.scss
│ ├── _functions.scss
│ ├── _helpers.scss
│ ├── _mixins.scss
│ └── _variables.scss
│
├── vendors/
│ ├── _jquery-ui.scss
│ └── _bootstrap.scss
│
├── shame/
│ └── _shame.scss
│
└── application.scss```
### Installation
OMCSS provides a file structure that your can place in your application's source stylesheet directory and make use of it.
```
application/
├── css/
│ ├── omcss/
│ └── application.css
│
├── js/
│
├── img/
│
└── index.html
```## Deployment
You need to run sass compiler to compile individual scss files into your application into main stylesheet:
```
sass css/omcss/application.scss css/application.css
```an alternative example would be:
```
sass source/stylesheets/omcss/application.scss build/stylesheets/application.css
```## Documentation
OMCSS is an approach that will help designers and developers write code that will be future-clean and scalable at the same time. OMCSS' file structure helps developer organise their stylesheets in a manner that produces understandable and clean css structure that is easy to organise and maintain - OMCSS
### OMCSS File Structure
OMCSS is a modular approach that helps you arrange your css into `theme`, `pages`, `layouts` and `modules`. Along with these, it also provide helper folders i.e. `base`, `utils` and `vendors` to organise your helper css files.
Below is a complete description of OMCSS file structure:
* **Base**
Base contains css styles on base content such as reset, grid, typography etc.* **Themes**
Themes contains css styles for your application themes such as primary, secondary, default, dashboard etc.* **Pages**
Pages contains css styles for your individual pages such as home, about-us, contact etc.* **Layouts**
Layouts contains css style for main application components such as header, footer, sidebar etc.* **Modules**
Modules contains css style for re-usable application ui components such as carousel, navigation, breadcrumb, card etc.* **Utils**
Modules contains utility styles such as mixins, functions, variables etc.* **Vendors**
Vendor contains third-party css libraries and frameworks such as jquery-ui, bootstrap, foundation etc.* **Shame**
Shame contains css styles that you are shame about or you have written as an urgent request and will soon change it and write proper code. Its wise to write messy css for any of the above styles over here.### Naming Convention
OMCSS follows Kebab case naming convention in its core e.g. `.txt-white`, `.nav-item` etc.
For components that contains sub-classes, OMCSS encourages `_underscore` naming convention which add an underscore as it goes within the tree:
```
.parent {
._child {
.__sub-child {
...
}
}
}
```Please note that above convention is not mandatory. It will facilitate developers to write consistent and future-proof code. However you are free to use any convention of your choice.
## Contributing
Please read [CONTRIBUTING.md](https://github.com/alimansoor/omcss/blob/master/CONTRIBUTING.md) for details on our code of conduct, and the process for submitting pull requests to us.
## Versioning
We use [SemVer](http://semver.org/) for versioning. For the versions available, see the [tags on this repository](https://github.com/your/project/tags).
## Creator
**Muhammad Ali Mansoor**
-
-### Special Contributions
**Ruchi Singhal**
-
-**Santanu Satapathy**
-
-## License
This project is licensed under the MIT License - see the [LICENSE.md](LICENSE.md) file for details
## Acknowledgments
* SMACSS, OOCSS, BEM
* Twitter Bootstrap, Foundation CSS, Materialize CSS, Semantic UI, Tailwind, Marvel.