ecome-earth / SFW-Microorganism-App

Soil Food Web Microorganism App
GNU General Public License v3.0
5 stars 0 forks source link

Screenshot 2021-09-21 at 05 10 47 2

Welcome to Soil-Food-Web Microorganism App.

This open-source app is made for the SFW-Community. It is currently in development phase. The App helps users to identify soil microorganisms with each other. You cam upload photos or short 10 second static videos, see how other people voted and even have a chat about the organisms.

figma discord faq

Table of Contents

  1. Tech stack used
  2. Cloning this project
  3. Project Structure
  4. Testing
  5. Roadmap
  6. Support us
  7. License

1 Tech stack used

Flutter (Mobile + Web) - Firebase

The UI for this project is built with Flutter for cross-platform mobile apps and web. The backend is created with firebase.

2 Cloning this project

To clone this project you need a firebase account and create a new firebase app.

After cloning this app, go to firebase.com and create and account if you don't have one. Then, create a new app with analytics (optional).

STEP 1: Setting up the application name: First you will need to change the name of the project to be able to publish it on Google Play and App Store. Usually the app name starts with com.companyname.appname. Depending on your default code editor, you can find out how to do that.

STEP 2: Firebase configuration for Android: You will need to download the google-services.json file from firebase Android app configuration and place it in the directory ./android/app/

STEP 3: Firebase configuration for iOS: You will need to download the GoogleService-Info.plist file from firebase iOS app configuration and place it in the directory. ./ios/runner/

STEP 4: Firebase configuration for web: rename the file firebase-config-sample.js to firebase-config.js and then copy the web configuration you got from firebase ---> new web app. ./web/firebase-config-sample.js

3 Project Structure

./assets The assets folder contains app assets. Those include images, maybe fonts, and other global assets.

./lib Contains the flutter code for the app with the entry point as main.dart file

./lib/screens Contains the screens of the app

./lib/widgets Contains the widgets shared across screens

./lib/utils Contains general app classes and functions.

4 Testing

All tests are placed in the ./test directory. We are using dart and flutter's default testing libraries. More information on testing on Flutter's official docs https://flutter.dev/docs/testing

5 Roadmap

Current Phase:

All our finished and current milestones are published here. The milestones are based on the features mentioned in the wireframe file SFW Microorganism App Wireframes.

Future Milestones:

6 Support us

Developers

If you like this project and want to contribute with code, please check the issues to find tasks you want to do. Please follow the conventional commits rules when committing.

Financial Support

We are using cryptocurrency whenever possible, to guarantee financial trust through transparency. All the invoices can be found here. We plan to give donors governance tokens proportional to their donation, so they can influence the direction the project takes by making proposals and vote on them. We will use Aragon for this. Whenever a proposal is accepted, we will create a milestone made out of issues and attach bounties to each issue proportional to the work it takes to complete them.

7 License

Thanks to kn9ts for summarising the license details below. Original Source

GPL3 LICENSE SYNOPSIS

**TL;DR*** Here's what the license entails:

  1. Anyone can copy, modify and distribute this software.
  2. You have to include the license and copyright notice with each and every distribution.
  3. You can use this software privately.
  4. You can use this software for commercial purposes.
  5. If you dare build your business solely from this code, you risk open-sourcing the whole code base.
  6. If you modify it, you have to indicate changes made to the code.
  7. Any modifications of this code base MUST be distributed with the same license, GPLv3.
  8. This software is provided without warranty.
  9. The software author or license can not be held liable for any damages inflicted by the software.