Contributing to Arsxy Theme
Learn how to contribute to the Arsxy Jekyll theme open source project
Contributing to Arsxy Theme
Thank you for your interest in contributing to the Arsxy Theme! This guide will help you get started with contributing to this open source project.
Ways to Contribute
There are many ways to contribute to the Arsxy Theme:
- Reporting bugs: Help identify and report issues
- Suggesting features: Propose new features or improvements
- Improving documentation: Help make the documentation clearer and more comprehensive
- Submitting code: Fix bugs or implement new features
- Sharing feedback: Use the theme and provide feedback on your experience
Getting Started
Prerequisites
To contribute to the Arsxy Theme, you’ll need:
- Git
- Ruby (version 2.5.0 or higher)
- Bundler
- Jekyll (version 4.2 or higher)
- A GitHub account
Setting Up the Development Environment
- Fork the repository on GitHub
- Clone your fork locally:
git clone https://github.com/YOUR-USERNAME/arsxy-theme.git cd arsxy-theme
- Install dependencies:
bundle install
- Start the development server:
bundle exec jekyll serve
- Visit
http://localhost:4000
to see your local copy of the theme in action
Development Workflow
Creating a New Branch
Create a new branch for your changes:
git checkout -b feature/your-feature-name
# or
git checkout -b fix/issue-you-are-fixing
Making Changes
Make your changes to the code, documentation, or both. Be sure to test your changes locally.
Commit Guidelines
Please follow these guidelines for your commits:
- Use clear, descriptive commit messages
- Start with a verb in the present tense (e.g., “Add feature” not “Added feature”)
- Reference issue numbers when relevant (e.g., “Fix #123: Correct header alignment”)
- Keep commits focused and atomic (one logical change per commit)
Example commit message:
Add dark mode toggle animation
Implement smooth transition animation when toggling between light and dark mode.
This enhances the user experience by making the transition less jarring.
Fixes #42
Testing Your Changes
Before submitting your changes, make sure to:
- Test the theme with different types of content
- Verify responsive behavior on multiple screen sizes
- Check that dark mode works correctly
- Ensure accessibility standards are maintained
- Run the test suite (if available):
bundle exec rake test
Submitting a Pull Request
- Push your changes to your fork:
git push origin feature/your-feature-name
-
Go to the original repository on GitHub and create a pull request
-
Provide a clear title and description for your pull request, explaining the changes and the problem they solve
- Wait for maintainers to review your pull request
Reporting Bugs
When reporting bugs, please include:
- A clear, descriptive title
- Steps to reproduce the bug
- Expected behavior
- Actual behavior
- Screenshots (if applicable)
- Your environment (OS, browser, Jekyll version, etc.)
- Any relevant context or notes
Use the GitHub issue tracker to report bugs.
Suggesting Features
Feature suggestions are welcome! When suggesting features:
- Check if the feature has already been suggested or implemented
- Provide a clear use case for the feature
- Explain how the feature would benefit users of the theme
- Consider implementation complexity and potential drawbacks
Code Style Guidelines
Please follow these style guidelines when contributing code:
HTML/Liquid
- Use 2 spaces for indentation
- Use semantic HTML elements
- Keep Liquid tags readable with appropriate spacing
- Comment complex logic
CSS/SCSS
- Use 2 spaces for indentation
- Follow BEM naming convention for classes
- Use CSS variables for themeable properties
- Organize styles by component or feature
JavaScript
- Use 2 spaces for indentation
- Use modern ES6+ syntax where appropriate
- Comment complex logic
- Keep functions small and focused
- Avoid jQuery if possible, prefer vanilla JavaScript
Documentation Guidelines
When contributing to documentation:
- Use clear, concise language
- Include code examples where appropriate
- Follow Markdown best practices
- Organize content logically
- Check spelling and grammar
- Keep examples up-to-date with the current version
Release Process
The Arsxy Theme follows these release practices:
- Semantic versioning (MAJOR.MINOR.PATCH)
- Changelogs for each release
- GitHub releases tagged with version numbers
Community and Communication
- GitHub Issues: Primary place for bug reports and feature requests
- Pull Requests: For submitting contributions
- Discussions: For questions and sharing ideas
Code of Conduct
By participating in this project, you agree to abide by the project’s Code of Conduct. Please report unacceptable behavior to the project maintainers.
License
By contributing to the Arsxy Theme, you agree that your contributions will be licensed under the same MIT License that covers the project.
Thank You!
Thank you for contributing to the Arsxy Theme! Your efforts help make this project better for everyone.