Research

Technology Review

Frontend framework

React, Angular, Vue.js

All three frameworks are popular among developers. React is the most popular one with the largest community support for potential bug search. Angular is a full-fledged framework with a lot of built-in features, but it is even harder to learn and more complex than React. Vue.js is the easiest to learn and use, but has limited resources and support.

We choose React as our frontend framework because of its popularity and the large community support.

Programming language

Python, Java

Both Python and Java are popular programming languages with large community support and tools. Python is more commonly used in machine learning, and Java is more commonly used in web application development. Our project requires both machine learning and web application development, so both languages are viable options.

We choose Python as our backend programming language because of our familiarity with it and its handiness in running large language models, which seems to be a harder thing to implement than a web API.

Mapping library

Folium, Plotly, Geopanda

Folium is a Python library that allows us to create maps with Leaflet.js. It is commonly used in web interfaces. Plotly is a Python library that allows us to create interactive plots and maps. It is the easiest to integrate with other Python libraries. Geopanda is a Python library that allows us to work with geospatial data. It is more focused on data manipulation and analysis.

We choose Folium with Geopy as our mapping library because Folium makes it easier to present the map within a web interface.



Technical Decisions Summary


Backend programming language: Python
Frontend framework: React
Mapping library: Folium + Geopy
Vector Database: Weaviate
LLM: Llava 7.0b

References

  1. GeeksforGeeks. (2023). Top Front-End Frameworks in 2023. [online] Available at: https://www.geeksforgeeks.org/top-front-end-frameworks/.
  2. Hex.tech. (2022). Python mapping libraries (with examples) | Hex. [online] Available at: https://hex.tech/templates/data-visualization/python-mapping-libraries/ [Accessed 28 Mar. 2025].
  3. weaviate.io. (n.d.). Welcome | Weaviate - vector database. [online] Available at: https://weaviate.io/.
  4. Esri. (n.d.). ArcGIS Online | Cloud-Based Mapping and Analysis Solution. [online] Available at: https://www.esri.com/en-us/arcgis/products/arcgis-online/overview.
  5. Verba. (n.d.). Verba - Open Source RAG App. [online] Available at: https://weaviate.io/blog/verba-open-source-rag-app.