feat: Add contributing guidelines, license, and security policy documents
- Created CONTRIBUTING.md to outline contribution process and code of conduct. - Added LICENSE file with MIT License and third-party licenses. - Introduced SECURITY.md detailing vulnerability reporting and security measures. - Established README.md in assets directory for asset management and guidelines. - Implemented index.html as the main entry point for the website. - Configured package.json for project dependencies and scripts. - Developed styles.css for custom styles and responsive design. - Set up vite.config.ts for Vite configuration and build settings.
This commit is contained in:
190
CONTRIBUTING.md
Normal file
190
CONTRIBUTING.md
Normal file
@@ -0,0 +1,190 @@
|
||||
# Contributing to Miracles In Motion Website
|
||||
|
||||
Thank you for your interest in contributing to the Miracles In Motion website! This document provides guidelines for contributing to our project.
|
||||
|
||||
## Code of Conduct
|
||||
|
||||
We are committed to providing a welcoming and inspiring community for all. Please read and follow our Code of Conduct:
|
||||
|
||||
- Be respectful and inclusive
|
||||
- Focus on what is best for the community
|
||||
- Show empathy towards other community members
|
||||
- Be collaborative
|
||||
- Gracefully accept constructive feedback
|
||||
|
||||
## How to Contribute
|
||||
|
||||
### Reporting Issues
|
||||
|
||||
If you find a bug or have a suggestion for improvement:
|
||||
|
||||
1. Check if the issue already exists in our [GitHub Issues](https://github.com/Miracles-In-Motion/public-web/issues)
|
||||
2. If not, create a new issue with:
|
||||
- Clear, descriptive title
|
||||
- Detailed description of the issue or suggestion
|
||||
- Steps to reproduce (for bugs)
|
||||
- Expected vs actual behavior
|
||||
- Screenshots if applicable
|
||||
- Browser and device information
|
||||
|
||||
### Contributing Code
|
||||
|
||||
1. **Fork the repository**
|
||||
```bash
|
||||
git clone https://github.com/Miracles-In-Motion/public-web.git
|
||||
cd public-web
|
||||
```
|
||||
|
||||
2. **Create a feature branch**
|
||||
```bash
|
||||
git checkout -b feature/your-feature-name
|
||||
```
|
||||
|
||||
3. **Make your changes**
|
||||
- Follow our coding standards (see below)
|
||||
- Test your changes thoroughly
|
||||
- Update documentation if needed
|
||||
|
||||
4. **Commit your changes**
|
||||
```bash
|
||||
git add .
|
||||
git commit -m "feat: add new donation tracking feature"
|
||||
```
|
||||
|
||||
5. **Push and create a Pull Request**
|
||||
```bash
|
||||
git push origin feature/your-feature-name
|
||||
```
|
||||
|
||||
## Coding Standards
|
||||
|
||||
### HTML/CSS
|
||||
- Use semantic HTML5 elements
|
||||
- Follow accessibility guidelines (WCAG 2.1 AA)
|
||||
- Use consistent indentation (2 spaces)
|
||||
- Write meaningful class names
|
||||
- Optimize for mobile-first responsive design
|
||||
|
||||
### JavaScript/React
|
||||
- Use ES6+ features consistently
|
||||
- Follow React best practices and hooks patterns
|
||||
- Write descriptive variable and function names
|
||||
- Add comments for complex logic
|
||||
- Use consistent formatting (Prettier recommended)
|
||||
|
||||
### Content Guidelines
|
||||
- Use inclusive, accessible language
|
||||
- Maintain a compassionate, professional tone
|
||||
- Ensure all content is factually accurate
|
||||
- Include alt text for all images
|
||||
- Keep content concise and scannable
|
||||
|
||||
## Testing
|
||||
|
||||
Before submitting a PR, please ensure:
|
||||
|
||||
- [ ] Website loads correctly on desktop and mobile
|
||||
- [ ] All forms work properly
|
||||
- [ ] Navigation functions correctly
|
||||
- [ ] No console errors
|
||||
- [ ] Content is accessible via screen readers
|
||||
- [ ] Images have appropriate alt text
|
||||
- [ ] Links work correctly
|
||||
|
||||
### Browser Testing
|
||||
|
||||
Please test your changes in:
|
||||
- Chrome (latest)
|
||||
- Firefox (latest)
|
||||
- Safari (latest)
|
||||
- Edge (latest)
|
||||
- Mobile browsers (iOS Safari, Chrome Mobile)
|
||||
|
||||
## Accessibility
|
||||
|
||||
We strive to make our website accessible to everyone:
|
||||
|
||||
- Use semantic HTML
|
||||
- Provide alt text for images
|
||||
- Ensure proper color contrast
|
||||
- Support keyboard navigation
|
||||
- Test with screen readers
|
||||
- Use ARIA labels when appropriate
|
||||
|
||||
## Performance
|
||||
|
||||
Optimize for fast loading:
|
||||
- Compress images
|
||||
- Minimize CSS/JS
|
||||
- Use appropriate image formats (WebP when possible)
|
||||
- Lazy load images below the fold
|
||||
- Minimize HTTP requests
|
||||
|
||||
## Content Updates
|
||||
|
||||
For content changes:
|
||||
|
||||
### Donation Information
|
||||
- Verify all donation links and amounts
|
||||
- Test payment processing in sandbox mode
|
||||
- Update impact statistics with current data
|
||||
- Ensure EIN and legal information is current
|
||||
|
||||
### Program Information
|
||||
- Work with program staff to verify accuracy
|
||||
- Update statistics and beneficiary counts
|
||||
- Include current testimonials and stories
|
||||
- Maintain privacy of beneficiaries
|
||||
|
||||
### Legal Documents
|
||||
- Have legal team review all policy changes
|
||||
- Update effective dates
|
||||
- Ensure compliance with state regulations
|
||||
- Maintain transparency requirements
|
||||
|
||||
## Deployment
|
||||
|
||||
Our deployment process:
|
||||
|
||||
1. **Development**: Test locally with `npm run dev`
|
||||
2. **Staging**: Deploy to staging environment for review
|
||||
3. **Production**: Deploy to live site after approval
|
||||
|
||||
### Pre-deployment Checklist
|
||||
|
||||
- [ ] Content accuracy verified
|
||||
- [ ] Links tested
|
||||
- [ ] Forms tested
|
||||
- [ ] Mobile responsiveness checked
|
||||
- [ ] Accessibility tested
|
||||
- [ ] Performance optimized
|
||||
- [ ] Legal compliance confirmed
|
||||
|
||||
## Getting Help
|
||||
|
||||
If you need help:
|
||||
|
||||
- Check our [documentation](README.md)
|
||||
- Review existing issues and PRs
|
||||
- Contact the web team: web@miraclesinmotion.org
|
||||
- Join our Slack channel: #website-dev
|
||||
|
||||
## Recognition
|
||||
|
||||
Contributors will be recognized:
|
||||
|
||||
- In our annual report (with permission)
|
||||
- On our volunteer page
|
||||
- In release notes for significant contributions
|
||||
|
||||
## License
|
||||
|
||||
By contributing, you agree that your contributions will be licensed under the same license as the project (MIT License).
|
||||
|
||||
## Questions?
|
||||
|
||||
Feel free to reach out:
|
||||
- Email: web@miraclesinmotion.org
|
||||
- GitHub Issues: [Create an issue](https://github.com/Miracles-In-Motion/public-web/issues/new)
|
||||
|
||||
Thank you for helping us create a better experience for our community! 💙
|
||||
Reference in New Issue
Block a user