Water.css becomes better for everyone when people like you help make it better!
Have any questions or concerns? Did I forget an element or selector? Does something look ugly? Feel free to submit an issue or pull request.
Before contributing, please read the code of conduct. Also you agree that your contributions will be licensed under its MIT License.
- Get a copy of repository. It is recommended to fork it first and clone to your machine using
git
. - Make sure that you have yarn and install dependencies listed in
package.json
using it.yarn
- Then you can run development server with live reloading out of the box and play around with the framework.
yarn dev
So you can access the index.html
in browser by visiting localhost:3000
Note. A script that builds distribution ready files is also available but it is not the part of development workflow, it is designed to be triggered automatically while publishing a new version of a package. The script itself could be run manually:
yarn build
If you are new to contributing open-source software, you can starty by picking any relevant issue that is tagged with good first issue
there.
Also everyone is welcome to contribute on issues tagged with help wanted
, you can find it filtered here.
It is a few general rules of thumb about making pull requests:
- Make sure that your pull request covers a small and well defined scope
- Make small commits with clear and explainful messages
- You need to provide a clear description about your contribution on GitHub
Before making a pull request, make sure you lint your code and generate a changelog.
Linting
If you aren't familiar, a linter is a program that automatically checks your code for formatting issues and potential bugs. Our linters are configured to automatically fix what they can so you can typically run one command and be done with it:
yarn lint
Changelogs
We use software called Changesets to keep track of what changes have been made between versions. Make sure to create a changelog before creating your pull request!
Just run this command for each change you made, and then answer a few questions:
yarn changeset
If you're not sure what kind of change you're making, pick patch.
.
├── dist
└── docs
└── icons
└── src
├── assets
├── builds
└── parts
dist
directory is ignored by git and it contains built assets for distribution
docs
directory contains the documentation and demo page
docs/icons
directory contains water.css favicons used in the documentation
src
directory contains all the source stylesheets groupped into folders and variables
src/assets
directory contains images used for UI elements styling
src/builds
directory contains base style files prepared for different kind of builds (i.e. light and dark themes, supporting legacy browsers, etc)
src/parts
directory contains the whole source organized in separate files by its kind like forms, links, typography