Welcome to Concise! We are not only here to make it as simple as possible to build websites, but also to contribute to the project.
By following this guide to contributing, we can make sure that everything is up to code (pun intended), everything is formatted properly, and we are posting bug reports, feature requests, and questions in the proper area.
Sound good? Let's move on...
** Thanks to thoughtbot for this great way to handling questions for an open source project.
In lieu of a mailing list, we are going to manage all specific questions through Stack Overflow.
Members of the Concise team are subscribed to specific tags via Stack Exchange Filters so that if a question is properly tagged, we can respond in a timely manner and help.
Which tags?
Ideally, we would like to keep it to just one tag for Concise questions, but we are subscribed to multiple variants to make sure nothing passes by us. However, for everybody asking a question, please use:
Where do I post this?
There are lots of different things that people will want to post regarding the Concise framework. Here is a rough outline of where you should post any given issue, question or contribution:
- Use Stack Overflow if you need help
- Use GitHub Issues if you found a bug
- Use GitHub Issues if you have an idea
- Use GitHub Issues if you want to ask a question
- Submit a pull request if you want to contribute
The project is built with Node.js. To change the styles or the preprocessor, follow these steps:
-
Install Node.js 22.22 or newer.
-
Navigate to the project in the terminal:
cd /path/to/directory
- Install the npm modules:
npm install
- You can now run the following commands:
Run the tests:
npm test
The test suite compiles the fixtures in test/fixtures/ (one .pcss input and its expected .css output per case). It also compares the compiled core, ui and utils stylesheets with the snapshots in test/snapshots/.
Accept changes to the compiled stylesheets:
After changing a style on purpose, review the snapshot diff from npm test, then update the snapshots:
npm run test:update
Build the precompiled stylesheets in dist/:
npm run build
Open playground/core.html or playground/ui.html to check the result visually.
bin/concise.js: theconciseCLIsrc/: the PostCSS plugin (src/index.js) and Concise's own plugins (src/lib/)core/,ui/,utils/: the stylesheets, written in.pcssconcise.pcss: imports core, ui and utilstest/: tests, fixtures and snapshotsplayground/: pages for checking the styles visually
Do you think that there should be something in Concise that isn't already included? Before you start writing code and implementing a feature, make sure that it is something that fits into the idea and scope of the project. We are a lightweight, bloat-free framework that focuses on removing the unnecessary.
If you are unsure of whether or not your feature would be a good fit for the framework, posting in GitHub Issues and tagging it info:feedback-needed or type:idea will help us filter your feature request and evaluate the idea.
Our contributing guidelines are based on this article: http://endoflineblog.com/gitflow-considered-harmful
- Fork us
- Create a new branch (feature, release, hotfix, etc) (
git checkout -b my-feature) - Follow the coding style guide
- Test any and all changes you make or implement.
- Commit changes (
git commit -am "Commit description here")
- Note: If you're referencing a GitHub issue in your commit, please preface the commit with
[ref: #XXX]whereXXXis the issue number.
- Push to your feature branch (
git push origin my-feature) - Create a new Pull Request
- Wait for a response from us (we promise to be semi-prompt)
- Once Your changes have been merged in, you can delete the branch that you've created.
** Thanks to Bootstrap for providing a good outline for coding styles.
Consistency is great, especially when writing code. Here we have a few simple guidelines to follow if you are going to be contributing to Concise.
Concise.CSS project has a .editorconfig file, you can install Editorconfig plugin in your code editor and It will help You to keep your editor configured with our code style.
Follow @mdo's Code Guide. Stylesheets use the .pcss extension and standard /* */ comments. Use the settings (var(--color-*), var(--spacing-*), rlh units, type scale steps) instead of hard-coded values.
The CLI and plugin are ES modules that use only the Node.js standard library and PostCSS plugins. Add a test for each change.
By contributing to Concise, you agree that your code can be released under the MIT license