Welcome to the DUME repository! This project consists of three main components: Solid Server, BackOffice, and TheiaVision App.
Urban environments face a myriad of challenges, from waste mismanagement to infrastructure deterioration, which necessitate robust monitoring and management systems. Traditional centralized platforms, such as Theia Vision, though effective, often compromise user data sovereignty and privacy. Project DUME addresses these concerns by shifting towards a decentralized framework, thereby enhancing data control, privacy, and user engagement.
To achieve these goals, Project DUME leverages the Solid Protocol to handle large-scale media datasets in a decentralized manner. The key developments implemented include extending the Solid Protocol for efficient media data management to be used on advanced AI models like EfficientDet and YOLO for real-time urban event detection and characterization. These technological advancements enable seamless and efficient management of urban data while maintaining user sovereignty over their contributions.
Below is the architecture diagram of the DUME project:
The Solid Server is an implementation of the Solid Protocol, designed to decentralize data storage and management. Our implementation is based on node-solid-server, which provides secure and scalable decentralized data management.
For more details about Solid, check out the Solid Project.
The BackOffice application is built using Next.js. It serves as the administrative interface for managing the various aspects of the Solid Server and TheiaVision App. The BackOffice provides functionalities for user management, data administration, and system monitoring, allowing administrators to oversee the decentralized network effectively.
The TheiaVision App is a mobile application developed using Flutter. The app is designed to offer a user-friendly interface for interacting with the Solid Server and accessing decentralized data. It supports advanced AI models like EfficientDet and YOLO for real-time urban event detection and characterization. The app is available for download on the Google Play Store.
To get started with any of these components, follow the instructions below.
-
Clone the repository:
git clone https://github.com/NGI-TRUSTCHAIN/DUME.git cd DUME/SolidServer
-
Install dependencies:
npm install
-
Run the server:
npm start
-
Clone the repository:
git clone https://github.com/NGI-TRUSTCHAIN/DUME.git cd DUME/BackOffice
-
Install dependencies:
npm install
-
Run the development server:
npm run dev
-
Open http://localhost:3000 with your browser to see the result.
-
Clone the repository:
git clone https://github.com/NGI-TRUSTCHAIN/DUME.git cd DUME/TheiaVision_App
-
Install dependencies:
flutter pub get
-
Run the app:
flutter run
We welcome contributions from the community. If you would like to contribute, please follow these steps:
- Fork the repository.
- Create a new branch with a descriptive name.
- Make your changes and commit them with descriptive messages.
- Push your changes to your fork.
- Create a pull request with a description of your changes.
If you have any questions or feedback, please feel free to reach out to us.