mirror of
https://github.com/MasterAcnolo/Freedom-Loader.git
synced 2026-07-29 18:25:47 +02:00
164 lines
4.5 KiB
Markdown
164 lines
4.5 KiB
Markdown
# Contributing to Freedom Loader
|
|
|
|
Welcome! Thanks for your interest in Freedom Loader. Your contributions—bug reports, feature ideas, or code improvements—are always appreciated. Every contribution makes Freedom Loader better.
|
|
|
|
---
|
|
|
|
## Quick Links
|
|
|
|
- [Code of Conduct](CODE_OF_CONDUCT.md)
|
|
- [Issue Templates](.github/ISSUE_TEMPLATE/)
|
|
- [Pull Request Templates](.github/PULL_REQUEST_TEMPLATE/)
|
|
- [Security Policy](SECURITY.md)
|
|
|
|
---
|
|
|
|
## Ways to Contribute
|
|
|
|
### 1. Report a Bug
|
|
|
|
Found a bug or unexpected behavior? Open an [**issue**](https://github.com/MasterAcnolo/Freedom-Loader/issues) using the **Bug Report** template.
|
|
|
|
**Please include:**
|
|
- Clear description of the bug
|
|
- Steps to reproduce
|
|
- App version and environment (Windows version, Firefox version if relevant)
|
|
- Logs from: `C:\Users\[USERNAME]\AppData\Local\FreedomLoader\logs\LOGS-YYYY-MM-DD.log`
|
|
- Screenshots if applicable
|
|
|
|
### 2. Request a Feature
|
|
|
|
Have an idea to improve Freedom Loader? Open a [**Feature Request**](https://github.com/MasterAcnolo/Freedom-Loader/issues/new/choose).
|
|
|
|
**Tips:**
|
|
- Describe the problem it solves
|
|
- Explain your proposed solution
|
|
- Include use cases and examples
|
|
|
|
### 3. Submit Code Changes
|
|
|
|
**Before starting:**
|
|
- Check existing issues and PRs to avoid duplicates
|
|
- For major changes, open an issue first to discuss
|
|
- Follow the project's code style and conventions
|
|
|
|
**Process:**
|
|
1. Fork the repository
|
|
2. Create a feature branch: `git checkout -b feature/your-feature-name`
|
|
3. Make your changes
|
|
4. Test thoroughly on Windows 10/11
|
|
5. Commit with clear messages: `git commit -m "Add feature X"`
|
|
6. Push to your fork: `git push origin feature/your-feature-name`
|
|
7. Open a Pull Request using the appropriate template
|
|
|
|
**Code Guidelines:**
|
|
- Use camelCase for variables and functions
|
|
- Comment complex logic
|
|
- Keep commits focused and atomic
|
|
- Update documentation if needed
|
|
- Don't modify version numbers (done during release)
|
|
|
|
### 4. Improve Documentation
|
|
|
|
Documentation improvements are always welcome:
|
|
- Fix typos or unclear sections
|
|
- Add missing examples
|
|
- Update outdated information
|
|
- Improve README, wiki, or guides
|
|
|
|
Small contributions matter—don't hesitate to submit documentation PRs.
|
|
|
|
---
|
|
|
|
## Development Setup
|
|
|
|
### Prerequisites
|
|
- Node.js 16.x or higher
|
|
- npm or yarn
|
|
- Git
|
|
- Windows 10/11 (for testing)
|
|
|
|
### Setup
|
|
```bash
|
|
# Clone your fork
|
|
git clone https://github.com/YOUR-USERNAME/Freedom-Loader.git
|
|
cd Freedom-Loader
|
|
|
|
# Install dependencies
|
|
npm install
|
|
|
|
# Run in development mode
|
|
npm start
|
|
|
|
# Build for production
|
|
npm run build
|
|
```
|
|
|
|
### Project Structure
|
|
```
|
|
Freedom-Loader/
|
|
├── main.js # Electron main process
|
|
├── preload.js # Electron preload script
|
|
├── config.js # Global configuration
|
|
├── server/ # Express backend
|
|
│ ├── routes/ # API routes
|
|
│ ├── controller/ # Business logic
|
|
│ └── helpers/ # Utility functions
|
|
├── public/ # Frontend (HTML, CSS, JS)
|
|
└── resources/ # Binaries (yt-dlp, ffmpeg, etc.)
|
|
```
|
|
|
|
---
|
|
|
|
## Testing
|
|
|
|
Before submitting a PR, verify:
|
|
- [ ] Download functionality works (video/audio)
|
|
- [ ] Playlist downloads work
|
|
- [ ] Settings panel functions correctly
|
|
- [ ] Custom path selection works
|
|
- [ ] No errors in application logs
|
|
- [ ] UI changes work on all themes (if applicable)
|
|
- [ ] Tested on Windows 10 and/or Windows 11
|
|
|
|
---
|
|
|
|
## Pull Request Review Process
|
|
|
|
1. **Submission**: Open PR with clear description using the template
|
|
2. **Review**: Maintainers review code and provide feedback
|
|
3. **Updates**: Address feedback and push updates
|
|
4. **Approval**: Once approved, PR will be merged
|
|
5. **Release**: Changes included in next release
|
|
|
|
**Response times:**
|
|
- Bug fixes: Usually reviewed within 2-3 days
|
|
- Features: May take longer depending on complexity
|
|
- Documentation: Often reviewed quickly
|
|
|
|
---
|
|
|
|
## Code of Conduct
|
|
|
|
Be respectful and constructive in all interactions. We welcome everyone as long as discussions remain polite and productive.
|
|
|
|
See [CODE_OF_CONDUCT.md](CODE_OF_CONDUCT.md) for details.
|
|
|
|
---
|
|
|
|
## Questions?
|
|
|
|
- Check the [FAQ](https://masteracnolo.github.io/Freedom-Loader-Site/faq)
|
|
- Review the [Wiki](https://masteracnolo.github.io/Freedom-Loader-Site/wiki)
|
|
- Open a [Question issue](https://github.com/MasterAcnolo/Freedom-Loader/issues/new/choose)
|
|
|
|
---
|
|
|
|
## Credits
|
|
|
|
Thanks to **Zakaria** for the website icon design.
|
|
Check out his work: [IG @designmark_studio](https://www.instagram.com/designmark_studio/)
|
|
|
|
---
|
|
|
|
**Thank you for contributing to Freedom Loader!** |