Contributing
Thank you for your interest in contributing to ShopsBuilder documentation!
How to Contribute
Setting Up Locally
-
Clone the repository:
git clone https://git.the-devs.com/virtual-shops/docs/customer-docs.git cd customer-docs -
Install dependencies:
npm install -
Start the development server:
npm run dev -
Open http://localhost:3000 to see your changes.
Workflow
Branch-Based Development
All features must be created via branches. Do not push directly to main.
-
Create a new branch for your work:
git checkout -b feature/your-feature-name # or git checkout -b fix/your-bugfix-name -
Make your changes and test locally.
-
Run linters (see Linting below).
-
Commit your changes with clear messages:
git add . git commit -m "feat: add new section about X" # or git commit -m "fix: correct typo in API docs" -
Push your branch:
git push origin feature/your-feature-name -
Create a merge request in GitLab.
Commit Message Convention
We use semantic commit messages:
feat:- New featuresfix:- Bug fixesdocs:- Documentation changesstyle:- Code style changes (formatting)refactor:- Code refactoringtest:- Adding or updating testschore:- Maintenance tasks
Examples:
feat: add OpenClaw integration guidefix: correct API endpoint URLdocs: update contribution guidelines
Adding Documentation
Adding Agent Documentation
When contributing agent documentation:
- Create the
.mdxfile insrc/content/ - Follow the existing content structure
- Include clear examples and code snippets
- Update
src/content/_meta.jsto add the page to navigation
Example agent doc structure:
# Agent Name
Brief description of what this agent does.
## Capabilities
- Capability one
- Capability two
## Usage
How to use this agent.
## Example
\`\`\`javascript
// Code example
\`\`\`General Documentation Rules
- Keep pages focused and scannable
- Use headings to organize content
- Include code examples when applicable
- Add links to related pages
- Test all links before submitting
Linting
Before pushing, run linters to ensure code quality:
# Run all linters
npm run lintAvailable Lint Commands
npm run lint- Run all lintersnpm run lint:js- Check JavaScript/JSX filesnpm run lint:md- Check Markdown files
Linter Errors
If linting fails, fix the reported issues before pushing. CI will block merge requests with lint errors.
Regular Pushes
Push your work regularly to avoid losing progress. Small, focused commits are preferred over large, monolithic changes.
Suggested Commit Frequency
- Push after completing a logical unit of work
- Push at least daily when working on a feature
- Push after fixing bugs or issues
Merge Request Process
- Ensure all lint checks pass
- Update the CHANGELOG.md with your changes
- Create a merge request with:
- Clear title (e.g.,
feat: Add OpenClaw integration) - Description of what was changed and why
- Screenshots for UI changes (if applicable)
- Clear title (e.g.,
- Request review from the team
Code of Conduct
Be respectful to all contributors. Constructive feedback helps us improve.
Questions?
If you have questions about contributing, reach out to the team via GitLab issues or the development team chat.