Irradiare's DevTrack App is an internal tool designed to monitor the performance and efficiency of the company’s implemented projects over time, utilizing key indicator data. In addition to tracking, the app facilitates forecasting project outcomes, enabling the company to optimize the timing of new initiatives based on predicted values for these indicators.
Project impact can be analyzed across multiple geographical levels, including parishes, municipalities, districts, and the national level. Additionally, the app supports tracking indicators based on NUTS (Nomenclature of Territorial Units for Statistics) levels.
The app's database is populated with indicator data sourced from E-REDES, Eurostat, INE, and The World Bank.
pip install -r requirements.txt
It is recommended to set up a virtual environment (venv) first.
The development of the DevTrack App is driven by Irradiare's strategic commitment to leveraging data for more informed decision-making. As the company continues to implement diverse projects, it has become increasingly important to have a precise, data-driven summary of project evolution over time.
By integrating key economic, social, and environmental indicators, the app provides a comprehensive view of project performance and potential. Furthermore, the ability to forecast these indicators offers the company valuable insights into the future impact of its initiatives, allowing for better prioritization of upcoming projects. This data-backed approach enables the company to assess, with greater accuracy, which projects to bid on next, ensuring more logical, safer, and efficient project selection and execution.
SQLite for the database creation (currently).
As explained in the docs for each data source, many different data retrieval and processing techniques were applied.
app: Folder containing all the logic for the application.
- api: Folder containing all the scripts needed to set up the FastAPI project.
- db: Folder containing the logic needed to create and fill the database of the app once the data is already extracted, processed and saved.
- indicators_data: This folder contains the scripts required for extracting and transforming data, organized by data source. Each dedicated subfolder includes a corresponding .md file redirecting to additional detailed Readme files available in the docs section. These Readme files provide step-by-step explanations of the processes followed for each data source.
- utils: This folder contains various files that are reused throughout the application. It includes both one-time-use scripts and supplementary information that is valuable for a deeper understanding of the project.
docs: Folder for documentation and images.
Other files:
- .gitignore: Specifies the files that are present in the local repository but not in the remote version.
- requirements.txt: Needed libraries to execute the program. It is important to have them all installed.
- .gitattributes: Ensures consistent line endings across different platforms in the project. It automatically converts text files to native line endings (CRLF for Windows, LF for Unix), while specifying that certain file types, like .sh and .csv, always use LF, and .bat files always use CRLF. This prevents line-ending issues and keeps the project consistent across environments.
To set up the application and proceed with execution, check here.
Upcoming Steps to be Implemented:
- Enhancing the API: Adding more endpoints to improve functionality.
- Tagging Indicators: Implementing tag values for better categorization of indicators.
- User Permissions: Establishing exclusive permissions for specific users based on their department and type of indicator.
- Database Migration: Migrating the application to use a PostgreSQL database instead of SQLite.
- Forecasting Integration: Connecting the database to forecasting methods, potentially using R or Python, to populate the database with parameters such as forecasted_Value, which are currently absent.