Contributing to Bootstrap-select
We welcome contributions from everyone! Following these guidelines helps to make the contribution process easy and effective for everyone involved.
Using the Issue Tracker
The issue tracker is the preferred channel for bug reports, feature requests, and submitting pull requests.
- Please do not use the issue tracker for personal support requests. Use Stack Overflow instead.
- Please do not derail or troll issues. Keep the discussion on topic and respect the opinions of others.
Bug Reports
A good bug report is a demonstrable problem caused by the code in the repository. Please follow these steps:
- Search existing issues: Check if the issue has already been reported.
- Use the latest version: Try to reproduce the bug using the latest
master
ordev
branch. - Provide environment details: Include your OS, browser, jQuery version, Bootstrap version, and bootstrap-select version.
- Create a reproducible test case: An isolated example is extremely helpful. You can use this Plunker debugging template.
Feature Requests
Feature requests are welcome. Please provide as much detail and context as possible to make a strong case for your idea.
Pull Request Guidelines
- Base your Pull Request on the
dev
branch and target thedev
branch. - Do not edit the generated or minified files in the
dist/
directory. Edit the original source files injs/
andless
/sass
. - If possible, add relevant tests to cover your changes.
- Write a clear and convincing description of your PR.
Development Setup
To contribute code, you'll need to set up a local development environment.
-
Prerequisites: Install Node.js (which includes npm) and Grunt CLI.
npm install -g grunt-cli
-
Install Dependencies: Clone the repository and install the project's development dependencies.
git clone https://github.com/snapappointments/bootstrap-select.git cd bootstrap-select npm install
-
Build the Project: Use Grunt to build the distribution files from the source.
grunt
: Cleans and rebuilds all distribution files.grunt dist
: Builds the distribution files (dist/
).grunt build-css
: Builds only the CSS files.grunt build-js
: Builds only the JavaScript files.grunt dev-watch
: Watches for changes in source files and automatically rebuilds them.grunt lint
: Runs ESLint to check for code quality issues.
Running Documentation Locally
This documentation site is built with mkdocs
. You can run it locally to preview your changes.
-
Install dependencies: You'll need Python and pip. Install MkDocs and the Bootstrap theme.
pip install mkdocs mkdocs-bootstrap
-
Serve the documentation: From the
docs/
directory within the project, run themkdocs serve
command.cd docs mkdocs serve
-
Open
http://127.0.0.1:8000/
in your browser to view the local documentation site.