Thank you for your interest in contributing to this project! This repository provides comprehensive AL development guidelines for Microsoft Dynamics 365 Business Central, and we welcome contributions from the community.
- Code of Conduct
- How to Contribute
- Getting Started
- Submitting Changes
- Content Guidelines
- Project-Specific Guidelines
- Questions and Support
We are committed to providing a welcoming and inclusive environment for all contributors. By participating in this project, you agree to abide by the following principles:
- Be respectful: Treat all community members with respect and kindness
- Be collaborative: Work together constructively and help others learn
- Be inclusive: Welcome newcomers and foster an environment where everyone can contribute
- Be professional: Keep discussions focused on the project and avoid personal attacks
- Be patient: Remember that everyone has different experience levels and perspectives
There are many ways to contribute to this project:
- Improve documentation: Fix typos, clarify instructions, or add missing information
- Add new content: Contribute new AL development guidelines or best practices
- Update existing content: Keep guidelines current with latest AL/Business Central features
- Report issues: Identify problems or gaps in the documentation
- Review pull requests: Help maintain quality by reviewing contributions from others
- Navigate to the repository on GitHub
- Click the "Fork" button in the top-right corner
- Clone your fork to your local machine:
git clone https://github.com/YOUR-USERNAME/github_copilot_instructions.git
cd github_copilot_instructions- Create a new branch for your changes:
git checkout -b feature/your-feature-name- Make sure you have a text editor that supports Markdown
- Familiarize yourself with the repository structure
Before making changes, please review:
- README.md: Overview and navigation guide
- Workflow-Based Organization: How content is organized
- Contributing Guidelines in README: Technical content guidelines
- Make focused, atomic changes that address a single issue or improvement
- Follow the existing file naming conventions (descriptive, purpose-driven names)
- Ensure your changes align with the project's workflow-based organization
- Test any links or references you add
Write clear, descriptive commit messages following this format:
type: brief description of change
More detailed explanation if needed
- Specific changes made
- Rationale for changes
Commit types:
feat: New content or featuresfix: Bug fixes or correctionsdocs: Documentation improvementsrefactor: Reorganizing content without changing meaningstyle: Formatting or style improvements
Examples:
git commit -m "feat: add error handling patterns for API integration"
git commit -m "fix: correct broken links in testing strategy guide"
git commit -m "docs: clarify naming conventions for page objects"- Push your changes to your fork:
git push origin feature/your-feature-name- Navigate to the original repository on GitHub
- Click "New Pull Request"
- Select your branch and provide a clear description:
Pull Request Template:
## Description
Brief description of what this PR does
## Type of Change
- [ ] Bug fix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds functionality)
- [ ] Documentation update
- [ ] Breaking change (fix or feature that would cause existing functionality to change)
## Testing
- [ ] I have verified all links work correctly
- [ ] I have checked that new content follows the established patterns
- [ ] I have reviewed the content for spelling and grammar
## Checklist
- [ ] My changes follow the project's style guidelines
- [ ] I have performed a self-review of my own changes
- [ ] My changes align with the workflow-based organization
- [ ] I have referenced any related issues- Quality: Ensure content is accurate, well-written, and helpful
- Consistency: Follow existing patterns and terminology
- Clarity: Write for your intended audience with clear, actionable guidance
- Completeness: Include necessary context and examples
- Use proper heading hierarchy (start with
#, then##, etc.) - Include table of contents for longer documents
- Use code blocks for AL code examples with appropriate syntax highlighting
- Include meaningful alt text for any images
- Use relative links for internal references
Follow the existing workflow-based organization:
- CoreDevelopment: AL fundamentals and object patterns
- TestingValidation: Testing strategies and quality assurance
- IntegrationDeployment: Integration patterns and deployment
- PerformanceOptimization: Performance tuning and optimization
- AppSourcePublishing: Marketplace compliance and publishing
- SharedGuidelines: Cross-cutting standards and configuration
This repository has specific technical guidelines for AL development content. Please review the detailed guidelines in README.md, which cover:
- Workflow Integration: How content fits into development workflows
- Cross-References: Linking related content without duplication
- GitHub Copilot Integration: Ensuring AI accessibility
- AL Headers: Proper
applyTo: '**/*.al'configuration
- Meaningful Names: Purpose-driven file naming
- Single Source of Truth: Avoid content duplication
- Practical Examples: Include AL code samples and scenarios
- Workflow Integrity: Maintain clear business purpose
- Documentation Questions: Review the README.md navigation guides
- Technical Issues: Check existing issues
- General Questions: Open a new issue with the "question" label
- Search existing issues to avoid duplicates
- Check the README.md for relevant guidance
- Review the workflow-specific documentation
When opening an issue, please include:
- Clear, descriptive title
- Detailed description of the problem or suggestion
- Steps to reproduce (for bugs)
- Expected vs. actual behavior
- Relevant file paths or sections
Thank you for contributing to the AL/Business Central GitHub Copilot Instructions project! Your contributions help improve AL development practices for the entire community.