Skip to content

SyncGuardian: Your data's trusted guardian, connecting mobile and desktop for seamless backup, access, and peace of mind.

License

Notifications You must be signed in to change notification settings

laykhatri/SyncGuardian

Repository files navigation

SyncGuardian

SyncGuardian: Your data's trusted guardian, connecting mobile and desktop for seamless backup, access, and peace of mind.

Table of Contents

  1. Features
  2. Getting Started (Pending)
  3. Contributing
  4. Testing
  5. License
  6. Acknowledgements (Pending)
  7. Contact (Pending)

Features

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.


Contributing

We welcome contributions from the community to enhance SyncGuardian. If you'd like to contribute, please follow these guidelines:

  1. Fork the Repository: Fork this repository to your own GitHub account.
  2. Create a Branch: Create a branch with a descriptive name to work on the proposed changes (git checkout -b <BranchName>).
  3. Make Changes: Make the desired changes, add features, or fix bugs.
  4. Run Tests: Ensure that your changes do not break existing functionality and include any necessary tests.
  5. Commit Changes: Commit your changes with a clear and concise commit message (git commit -m 'Add new feature').
  6. Push Changes: Push your changes to the branch (git push origin <Branchname>).
  7. Open a Pull Request: Create a pull request from your branch to the main branch 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.

Testing

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

  1. Open "SG.Tests" project in Visual Studio.
  2. Create a new test class in the appropriate folder.
[TestFixture]
public class YourComponentTests
{
    // Your test cases will go here
}
  1. 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);
}
  1. 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.
  2. Run specific test case

  3. Once every new test cases are created, Run All test cases.

Contributing and Testing

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!


License

SyncGuardian is licensed under Apache License 2.0. Click on the following link to read the full license details: Read License

About

SyncGuardian: Your data's trusted guardian, connecting mobile and desktop for seamless backup, access, and peace of mind.

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published