meta: init
This commit is contained in:
commit
06fe4b4b20
3 changed files with 107 additions and 0 deletions
71
CONTRIBUTING.md
Normal file
71
CONTRIBUTING.md
Normal file
|
@ -0,0 +1,71 @@
|
||||||
|
# Contributing
|
||||||
|
|
||||||
|
Before you start working on the codebase **make sure** you have signed the NDA provided by **Difuse**, if you haven't yet please contact Hayzam at [hayzam@difuse.io](mailto:hayzam@difuse.io).
|
||||||
|
|
||||||
|
Join the discord group [here](https://discord.gg/u6RupFDMp9) for general discussions.
|
||||||
|
|
||||||
|
## Contributing Rules for all projects related to Difuse
|
||||||
|
|
||||||
|
### 1. Code of Conduct
|
||||||
|
- Always maintain a professional and respectful tone in discussions.
|
||||||
|
- Any form of harassment, trolling, or abuse is strictly prohibited.
|
||||||
|
|
||||||
|
### 2. Setup and Environment
|
||||||
|
- Ensure you have the recommended development environment set up, including the correct versions of dependencies.
|
||||||
|
- Instructions for setting up the development environment should be documented in the project's README or a separate `CONTRIBUTING.md` file.
|
||||||
|
- We recommend using VSCode, Neovim or WebStorm (or GoLand) as your IDE/Editor.
|
||||||
|
- Test on a live device (apart from unit tests) before commiting to the repository.
|
||||||
|
|
||||||
|
### 3. Branching Strategy
|
||||||
|
- Use feature branches. Create a new branch for each feature or bugfix.
|
||||||
|
- Avoid committing directly to the `main` or `master` branch.
|
||||||
|
- Consider following a branching strategy like Git Flow or GitHub Flow.
|
||||||
|
|
||||||
|
### 4. Commit Messages
|
||||||
|
- Write clear and descriptive commit messages.
|
||||||
|
- Start with a short summary (50 chars or less), followed by a blank line and a detailed description if necessary.
|
||||||
|
- Consider following the conventional commit format: `<type>: <description>`
|
||||||
|
|
||||||
|
### 5. Testing
|
||||||
|
- Add tests for new features and ensure existing tests pass.
|
||||||
|
- Maintain or improve the current code coverage.
|
||||||
|
- Test across multiple browsers or environments if applicable.
|
||||||
|
|
||||||
|
### 6. Coding Standards
|
||||||
|
- Follow the project's coding standards and style guides.
|
||||||
|
- Document functions, methods, and classes.
|
||||||
|
- Ensure code is clear, maintainable, and well-organized.
|
||||||
|
|
||||||
|
### 7. Pull Requests (PRs)
|
||||||
|
- Make PRs small and focused. They should address a single issue or feature.
|
||||||
|
- Describe the changes in the PR description and reference any related issues.
|
||||||
|
- Ensure PRs pass all Continuous Integration (CI) checks.
|
||||||
|
- Request reviews from relevant team members.
|
||||||
|
- Address review feedback promptly.
|
||||||
|
|
||||||
|
### 8. Dependencies
|
||||||
|
- Regularly check and update project dependencies.
|
||||||
|
- When adding a new dependency, ensure it's necessary and doesn't add significant bloat to the project.
|
||||||
|
|
||||||
|
### 9. Documentation
|
||||||
|
- Update documentation in tandem with code changes.
|
||||||
|
- If adding a new feature, provide usage examples and relevant details.
|
||||||
|
|
||||||
|
### 10. Issue Reporting
|
||||||
|
- Check if an issue already exists before creating a new one.
|
||||||
|
- Provide clear details, steps to reproduce, and expected vs. actual behavior.
|
||||||
|
|
||||||
|
### 11. Performance
|
||||||
|
- Ensure that new features do not degrade the performance of the application.
|
||||||
|
- Regularly profile and optimize the codebase.
|
||||||
|
|
||||||
|
### 12. Accessibility
|
||||||
|
- Ensure the web application is accessible to all users, including those with disabilities.
|
||||||
|
- Follow WAI-ARIA guidelines and test with accessibility tools.
|
||||||
|
|
||||||
|
### 13. Responsiveness
|
||||||
|
- Ensure the application looks and functions well on various screen sizes and devices.
|
||||||
|
|
||||||
|
### 14. Feedback Loop
|
||||||
|
- Actively engage with the community and/or customers and address feedback, suggestions, and concerns.
|
||||||
|
|
30
LICENSE.md
Normal file
30
LICENSE.md
Normal file
|
@ -0,0 +1,30 @@
|
||||||
|
# Licenses
|
||||||
|
|
||||||
|
All projects under the difuse projects come under a plethora of (open and closed) licenses. The licenses are as follows:
|
||||||
|
|
||||||
|
## Difuse and DifOS
|
||||||
|
|
||||||
|
### Difuse
|
||||||
|
|
||||||
|
Copyright (C) 2022-20204 Iridia Solutions Private Limited & Alchemilla Ventures Private Limited
|
||||||
|
|
||||||
|
No part of the Difuse Project, may be copied, modified, propagated, or distributed, except as expressly permitted by a license agreement between Iridia Solutions Private Limited and Alchemilla Ventures Private Limited. No part of the Difuse Project, may be used to create a derivative work or sold, without the express written permission of Iridia Solutions Private Limited and Alchemilla Ventures Private Limited.
|
||||||
|
|
||||||
|
Unless otherwise specified in a written agreement, all rights pertaining to the Difuse Project remain with Iridia Solutions Private Limited and Alchemilla Ventures Private Limited. The Difuse Project is provided "as is" without warranty of any kind, either expressed or implied, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose. Hardware warranty is provided for a period of 1 year from the date of purchase of the hardware in question.
|
||||||
|
|
||||||
|
### DifOS
|
||||||
|
|
||||||
|
DifOS is a derivative the Open Source project, [OpenWRT](https://openwrt.org/). DifOS is licensed under the [GPLv2](https://www.gnu.org/licenses/old-licenses/gpl-2.0.html) license. The source code for DifOS can be found [here](https://git.difuse.io/difuse/difos).
|
||||||
|
|
||||||
|
### Kalmia
|
||||||
|
|
||||||
|
Kalmia is a documentation CMS written in Go, Rust and JavaScript. Kalmia is licensed under the [AGPLv3](https://www.gnu.org/licenses/agpl-3.0.html) license. The source code for Kalmia can be found [here](https://github.com/DifuseHQ/kalmia).
|
||||||
|
|
||||||
|
### DDDNS
|
||||||
|
|
||||||
|
DDDNS is a simple DNS server to provide subdomains to authenticated users. DDDNS is licensed under the [MIT](https://opensource.org/licenses/MIT) license. The source code for DDDNS can be found [here](https://github.com/DifuseHQ/dddns).
|
||||||
|
|
||||||
|
### AT-Sender
|
||||||
|
|
||||||
|
The at_sender program is a simple command-line tool written in Rust, designed to send AT commands to 4G/5G modems on embedded devices. It is intended to be used as a diagnostic tool for testing the modem's AT command interface. It's licensed under the GPLv3 license. The source code for AT-Sender can be found [here](https://git.difuse.io/Difuse/at-sender).
|
||||||
|
|
6
index.md
Normal file
6
index.md
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
# Meta
|
||||||
|
|
||||||
|
This repository contains some documentation regarding the Difuse project, namely:
|
||||||
|
|
||||||
|
- [CONTRIBUTING.md](CONTRIBUTING.md): Guidelines for contributing to Difuse projects.
|
||||||
|
- [LICENSE.md](LICENSE.md): Licensing information for Difuse (and associated) projects.
|
Loading…
Reference in a new issue