1. Introduction
This documentation covers the functionalities and usage of the National Plant Diagnostic Information System system. This system is designed to manage users and the various forms related to national plant diagnostics.
2. System Requirements
Software Dependencies:
- blinker==1.6.2
- certifi==2023.7.22
- charset-normalizer==3.3.0
- click==8.1.7
- colorama==0.4.6
- dnspython==2.4.2
- email-validator==2.0.0.post2
- Flask==2.3.3
- Flask-Assets==2.0
- Flask-Login==0.6.2
- Flask-Mail==0.9.1
- Flask-SQLAlchemy==3.1.1
- Flask-WTF==1.1.1
- greenlet==3.0.0
- idna==3.4
- itsdangerous==2.1.2
- Jinja2==3.1.2
- MarkupSafe==2.1.3
- requests==2.31.0
- SQLAlchemy==2.0.21
- typing_extensions==4.8.0
- urllib3==2.0.6
- webassets==2.0
- Werkzeug==2.3.7
- WTForms==3.0.1
3. Role-Based Features
3.1 Superuser Features:
- Ability to create admin accounts.
- Enable or disable admin accounts.
- View each user created by admins.
- View system-generated charts.
- Setup and modify forms.
- CRUD operations on form values in the database.
3.2 Admin Features:
- Create user accounts.
- Enable or disable user accounts.
- View and edit list of forms created by users.
- View system-generated charts.
- Setup and modify forms.
- CRUD operations on form values in the database.
- Send messages to farmers.
- View list of sent messages.
- Download forms as PDF and Excel.
3.3 User Features:
- Fill out the National Plant Diagnostic Form.
- Send messages to farmers.
- Edit and view list of forms they've created.
- View list of received messages.
- Download forms as PDF and Excel.
4. Installation Guide
This guide will walk you through the process of setting up the required dependencies for the National Plant Diagnostic Information System system.
1. Setting up a Virtual Environment (Optional but Recommended):
Before installing the dependencies, it's a good practice to set up a virtual environment to keep your project's dependencies isolated:
python -m venv myenv
source myenv/bin/activate # On Windows, use: myenv\Scripts\activate
2. Installing Dependencies:
With your environment set up and activated, you can install the required dependencies:
pip install blinker==1.6.2 certifi==2023.7.22 charset-normalizer==3.3.0 and so on
3. Setting up the Flask Application:
Once all dependencies are installed, navigate to the root directory of your project and execute the following:
export FLASK_APP=app.py # Use set FLASK_APP=app.py on Windows
flask run
Or,
python app.py
This will start the Flask server, and your application should be accessible at http://127.0.0.1:5000/
.
5. User Guide
1. Superuser Guide:
The superuser has the highest level of access and control over the system. As a superuser, you can:
- Create, enable, or disable admin accounts.
- View each user created by admins.
- View charts and analytics related to system use.
- Setup forms, with the ability to add, delete, or edit form values in the database.
2. Admin Guide:
Admins have extensive control over the system but slightly less than the superuser. As an admin, you can:
- Create, enable, or disable user accounts.
- View and edit the list of forms created by each user.
- View charts and analytics related to form submissions and user activity.
- Setup forms, with the ability to add, delete, or edit form values in the database.
- Send messages to farmers and view a list of all sent messages.
- Download each form as a PDF or Excel file for offline access and reporting.
3. User Guide:
General users have specific access rights geared towards data submission and communication. As a user, you can:
- Fill out the National Plant Diagnostic Form.
- Send messages to farmers and view a list of all sent and received messages.
- Edit and view the list of forms you've submitted.
- Download each form as a PDF or Excel file for offline access and reference.
6. Technical Specifications
Hardware Requirements:
- Processor: Minimum dual-core, recommended quad-core or better.
- Memory: Minimum 4GB RAM, recommended 8GB or higher.
- Storage: SSD with at least 50GB of free space.
- Network: Stable internet connection for online features.
Operating System:
Compatible with Windows, Linux, and macOS. Ensure that you have the latest patches and updates installed for your OS.
Supported Browsers:
- Google Chrome (latest version)
- Mozilla Firefox (latest version)
- Microsoft Edge (latest version)
- Safari (latest version for macOS)
Additional Requirements:
Ensure you have administrative rights on your machine to install necessary software and libraries. An active internet connection is also required for certain online functionalities.
7. Tips and Best Practices
Always keep your software dependencies updated to benefit from the latest security patches and feature updates. Regular backups of the system database are highly recommended to prevent data loss. Ensure to maintain confidentiality and privacy when handling user data and communications.