DataBase Structure
The Database Model only consist of one table. There was a lot of information in the original dataset and I decided to keep it all so it could better serve as a learning tool. When first using the dataset and creating the database, I made a point to create types for the SQLite database for each of the different columns but the added unneeded bloat when strings, integers and floats were all that was needed. There is a API that uses list, but after a little reformating and cleaning the data, specifically the "multipolygon", it was easier and quicker to just parse the string and get a list from the data. I have made a second table in past to hold the Land Use Codes and description but it made more sense to combine all the data into one table to keep calls to the backend as low as possible.
Framework and File Structure
The backend framework is Flask, a lightweight WSGI web application framework. I also used the Open Street Map API and LeaFlet API for the interactive map. Previous versions of the app have used HTMX before and while that framework is fun and well made, i wanted to communicate a understanding of Javascript and the included APIs like the Fetch API. The file structure is influenced more then enforced by Flask but it made to be modular so easily adjusted to new frameworks, database technologies or frontend/backend relationships. There is also UV playing a role in the file structure. Uv is a Python package and project manager, written in Rust. It is fast and replaces a lot of other tools I feel I have enough experience in the be able to work with older projects. Using this new manager is a learning experience in itself but worth it for the benefits and keeping up to date with technologies.
| Parcel Table | |
|---|---|
id |
Integer |
multipolygon |
String |
kivapin |
String |
apn |
String |
platname |
String |
lot |
String |
block |
String |
tract |
String |
owner_name |
String |
owner_name2 |
String |
owner_occupied |
String |
owner_occupied_str |
String |
owner_addr |
String |
owner_addr2 |
String |
owner_city |
String |
owner_state |
String |
owner_zip |
String |
owner_full_address |
String |
| cont... | |
|---|---|
address |
String |
stret_numb |
String |
fraction |
String |
prefix |
String |
street |
String |
street_type |
String |
suite |
String |
full_address |
String |
landusecode |
String |
landusedesc |
String |
assessed_land_value |
Float |
assessed_improved_value |
Float |
exempt_land_value |
Float |
exempt_improved_value |
Float |
assessment_effective_date |
Float |
legal |
String |
shape_area |
Float |
shape_len |
Float |