Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement Local CSV Export for Survey Data #10

Open
brylie opened this issue May 4, 2024 · 0 comments
Open

Implement Local CSV Export for Survey Data #10

brylie opened this issue May 4, 2024 · 0 comments
Labels
enhancement New feature or request good first issue Good for newcomers help wanted Extra attention is needed

Comments

@brylie
Copy link
Member

brylie commented May 4, 2024

To enhance user control over their data and support offline analysis, we will implement a feature to export stored observation data into a CSV file on the user's device. Since the data is stored locally to promote privacy, the focus will be on saving the CSV file locally and providing guidance to users on how to retrieve and utilize the exported data. E.g., how to send it to their personal computer for further analysis via the device share feature.

Tasks:

  • Utilize Drift's CSV recipe:
    • Research and incorporate the recommended Drift recipe or other suitable libraries for generating CSV data from the local data store.
  • File saving mechanism:
    • Investigate file I/O operations in Flutter. Employ appropriate file-saving mechanisms that offer compatibility across iOS and Android.
    • Consider using packages like path_provider to obtain suitable local storage paths (e.g., the device's documents directory).
  • Permissions handling:
    • Request and handle necessary storage permissions on Android and iOS.
  • Clear user instructions:
    • Provide in-app instructions (or a brief README) explaining:
      • The location of the saved CSV file.
      • How users can access and retrieve the file using their device's file manager or by connecting to a computer.

Additional Considerations:

  • File naming: Allow users to customize the file name or implement a logical naming convention (e.g., including a timestamp).

Benefits:

  • Data ownership: Empowers users with greater control over their collected observations.
  • Offline analysis: Facilitates analysis of data outside the application, using spreadsheet software or other analysis tools.
  • Privacy alignment: Respects the privacy-focused design by not requiring cloud storage or transmission of data.
@brylie brylie added enhancement New feature or request good first issue Good for newcomers help wanted Extra attention is needed labels May 4, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request good first issue Good for newcomers help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

1 participant