1
0
mirror of https://github.com/jaandrle/deka-dom-el synced 2025-04-01 11:45:53 +02:00
deka-dom-el/CONTRIBUTING.md
Jan Andrle 4c450ae763
🐛 🔤 v0.9.4-alpha (#42)
* 🐛 fixes #41

*  adjust package size limits

* 🔤

* 📺 requestIdleCallback doesn need to be global

* 🔤 corrects irland page headers

* 📺 version

*  Signal ← SignalReadonly

* 🐛 ensures only one disconncetd listener

…for cleanup

*  🔤 Better build and improve texting

* 🐛 logo alignemt (due to gh)

* 🔤 md enhancements

* 🔤  products
2025-03-19 17:10:43 +01:00

4.6 KiB

Contributing to Deka DOM Elements

Thank you for your interest in contributing to Deka DOM Elements (dd or DDE)! This document provides guidelines and instructions for contributing to the project.

Table of Contents

Code of Conduct

Please be respectful and inclusive in your interactions with other contributors. We aim to foster a welcoming community where everyone feels comfortable participating.

Getting Started

  1. Fork the repository:

    • Click the "Fork" button on the GitHub repository
  2. Clone your fork:

    git clone https://github.com/YOUR-USERNAME/deka-dom-el.git
    cd deka-dom-el
    
  3. Set up the development environment:

    npm ci
    
  4. Add the upstream repository:

    git remote add upstream https://github.com/jaandrle/deka-dom-el.git
    

Development Workflow

  1. Create a new branch:

    git checkout -b your-feature-branch
    

    Use descriptive branch names that reflect the changes you're making.

  2. Make your changes:

    • Write clean, modular code
    • Follow the project's coding standards (see Coding Standards)
    • Include relevant tests for your changes
  3. Run tests:

    #npm test
    
  4. Build the project:

    npm run build
    #or
    bs/build.js
    
  5. Preview documentation changes (if applicable):

    npm run docs
    #or
    bs/docs.js
    

…see BS folder for more info.

Categorizing git3moji

We use git3moji for commit messages, issue titles, pull request titles and in other areas. To make categorizing quick and consistent.

Commit Guidelines

We use git3moji for commit messages. This helps keep the commit history clear and consistent.

:emoji: Short summary of the change

…for example:

:bug: Fix signal update not triggering on nested properties
:zap: Improve event delegation performance
:abc: Add documentation for custom elements

Pull Request Process

  1. Push your changes:

    git push origin your-feature-branch
    
  2. Open a Pull Request:

    • Go to the repository on GitHub
    • Click "New Pull Request"
    • Select your branch
    • Provide a clear description of your changes
  3. PR Guidelines:

    • Use a clear, descriptive title with the appropriate git3moji
    • Reference any related issues
    • Explain what the changes do and why they are needed
    • List any dependencies that are required for the change
    • Include screenshots or examples if applicable
  4. Code Review:

    • Address any feedback from reviewers
    • Make necessary changes and push to your branch
    • The PR will be updated automatically
  5. Merge:

    • Once approved, a maintainer will merge your PR
    • The main branch is protected, so you cannot push directly to it

Issue Guidelines

When creating an issue, please use the appropriate template and include as much information as possible:

Bug Reports

  • Use the :bug: emoji in the title
  • Clearly describe the issue
  • Include steps to reproduce
  • Mention your environment (browser, OS, etc.)
  • Add screenshots if applicable

Feature Requests

  • Use the :zap: emoji in the title
  • Describe the feature clearly
  • Explain why it would be valuable
  • Include examples or mockups if possible

Documentation Improvements

  • Use the :abc: emoji in the title
  • Identify what documentation needs improvement
  • Suggest specific changes or additions

Coding Standards

  • Follow the existing code style in the project
  • Use meaningful variable and function names
  • Keep functions small and focused
  • Add comments for complex logic
  • Use TypeScript types appropriately

Documentation

  • Update the documentation when you add or modify features
  • Document both API usage and underlying concepts
  • Use clear, concise language
  • Include examples where appropriate

Thank you for contributing to Deka DOM Elements! Your efforts help make the project better for everyone.