-
Notifications
You must be signed in to change notification settings - Fork 0
Extra Features
-
User Login
When the user first opens the TreePLE mobile application, the first screens he encounters is the login screen. He can either sign in if he already has an account, or he can register for one. Additionally, he can change his password. For the Web frontend, the user must click on the TreePLE logo to show the login and signup options.
-
Resident & Scientist Registration
The first screenshot shows the resident registration menu. The user must create a username, a password, and enter his postal code.
The second screenshot shows the scientist registration menu. The scientist must create a username, a password, enter his postal code, and most importantly enter the access key only known to scientists.
-
Permission System
The TreePLE application makes sure that, depending on your role (resident or scientist), different features are enabled, in order to restrict critical access.
A resident can only plant on his property, as the backend service looks at the postal code the user submitted during account creation. As a resident, you can only cut down trees that belong to you, and cannot alter other trees' information after they have been planted.
A scientist can update the information of any tree that is available in the TreePLE system. He can also plant at any location, as well as add new species and municipalities.
-
User Password Reset
A user that has an account in the TreePLE system can change his password if he wishes. This extra features enables the user to feel in a more secure environment where identity theft is minimized.
-
Database
PostgreSQL database for persistence layer.
-
Password Hashing
Hashing of stored user passwords using BCrypt.
-
Geocoding
Google Maps API integration to turn user postal codes into coordinates.
-
Map Integration
Google Maps API integration allows the app to render trees on a map according to their stored coordinates, where users can add new trees by long-pressing on the map.
-
App Update
APK is signed for release and deployed to tomcat by Jenkins, app can then query server and download to user's device for manual install. The user needs to simply click on the loading wheel, and the APK is downloaded on his device in the downloads folder.
-
Password Hashing
Hashing of passwords using SHA-512 before sending them to backend (due to inability to use HTTPS/SSL).
-
Create Species
Allows scientists to create new tree species. This feature only available for scientists to help populate the database with confirmed species. When planting a tree, the user chooses from a list of declared species stored in the database to prevent errors, duplicates, or lack of knowledge about tree species.
-
Frameworks
ReactJs was used instead of the proposed VueJs framework. For the user interface, and Semantic UI took care of the styling.
-
Map Integration
Trees are rendered on a map using Google Maps API according to their stored coordinates, also allowing users to add new trees by clicking on the map.
-
Password Hashing
Hashing of passwords using SHA-512 before sending them to backend (due to inability to use HTTPS/SSL).
-
Hungarian Language Integration
Users can decide between English and Hungarian calendars when filling forms.
-
HTTPS/SSL Integration (need to install certificate locally)
Created security certificates to allow the Web frontend to be served over HTTPS when running locally.
HOME
THE PROJECT
GETTING STARTED
THE TEAM
PROJECT MANAGEMENT