SyncGuardian: Your data's trusted guardian, connecting mobile and desktop for seamless backup, access, and peace of mind.
- Features
- Getting Started (Pending)
- Installation (Pending)
- Usage (Pending)
- Contributing
- Testing
- License
- Acknowledgements (Pending)
- Contact (Pending)
Discover the robust set of features that make SyncGuardian a powerful tool for managing your files effortlessly. From seamless synchronization to intuitive user controls, SyncGuardian offers:
-
Real-time File Synchronization: Keep your files updated in real-time across devices and platforms.
-
Selective Folder Monitoring: Choose specific folders to monitor and sync, providing flexibility and efficiency.
-
Cross-Platform Compatibility: Utilize SyncGuardian on Windows, Android, and upcoming support for Linux, macOS, iOS, and iPadOS.
-
Intuitive User Interface: An easy-to-use interface ensuring smooth navigation and a seamless user experience.
-
Secure and Private: Your data remains protected, and privacy is a priority with SyncGuardian.
-
Customizable Settings: Tailor settings according to your preferences, optimizing the synchronization process.
We welcome contributions from the community to enhance SyncGuardian. If you'd like to contribute, please follow these guidelines:
- Fork the Repository: Fork this repository to your own GitHub account.
- Create a Branch: Create a branch with a descriptive name to work on the proposed changes (
git checkout -b <BranchName>). - Make Changes: Make the desired changes, add features, or fix bugs.
- Run Tests: Ensure that your changes do not break existing functionality and include any necessary tests.
- Commit Changes: Commit your changes with a clear and concise commit message (
git commit -m 'Add new feature'). - Push Changes: Push your changes to the branch (
git push origin <Branchname>). - Open a Pull Request: Create a pull request from your branch to the
mainbranch of this repository.
For proper details please check Code Guidelines and ensure that your contributions adhere to our standards.
Thank you for contributing to SyncGuardian! Your support helps make this project better and more useful for everyone.
We maintain a comprehensive set of tests to ensure the stability and functionality of SyncGuardian. We have separate test projects for the Desktop and Mobile applications.
Testing Project is named "SG.Tests"
Over there you will find 2 folders, "Server" and "Client.Android" respectively. When ever you create a new functionality or service, you will need to create test cases for those.
Test project is a "NUnit Test Framework". Please follow the instructions to create a test case
- Open "SG.Tests" project in Visual Studio.
- Create a new test class in the appropriate folder.
[TestFixture]
public class YourComponentTests
{
// Your test cases will go here
}
- Write test methods:
[Test]
public void YourTestMethod()
{
// Arrange: Prepare necessary data or set up the test environment
var someComponent = new SomeComponent();
// Act: Perform the action you want to test
var result = someComponent.DoSomething();
// Assert: Check the result or behavior
Assert.AreEqual(expectedValue, result);
}
-
Arrange, Act, and Assert (AAA):
- Arrange: Set up the necessary preconditions and inputs for the test.
- Act: Perform the action or method that you want to test.
- Assert: Verify the expected results or behavior.
-
Run specific test case
-
Once every new test cases are created, Run All test cases.
We strongly encourage contributors to create and run tests relevant to the changes they are making. Before submitting a pull request, please make sure to run all the relevant tests to verify that the changes do not introduce any regressions or issues. This helps maintain the stability and quality of SyncGuardian.
Thank you for your contributions and for ensuring the integrity of the project through rigorous testing!
SyncGuardian is licensed under Apache License 2.0. Click on the following link to read the full license details: Read License