The project is live at https://openstl.github.io/VacantSearch/ Go check it out!
For more instructions on how to set up the frontend, see the frontend README.
For more instructions on how to set up the frontend, see the backend README.
Search for vacant houses in St. Louis
Home Page: https://openstl.github.io/VacantSearch/
License: Apache License 2.0
The project is live at https://openstl.github.io/VacantSearch/ Go check it out!
For more instructions on how to set up the frontend, see the frontend README.
For more instructions on how to set up the frontend, see the backend README.
commit Pandas function to calculate centroid of all polygons and add column to database.
take coordinates from results JSON and put into flyTo map function that activates from onclick event when list element is clicked on.
Branch: UI-refactor
Rough phone pic of what the Result could look like. Ignore the line dividing the two sections - that is just demonstrating what makes a collapsed Result vs an expanded result.
We could add them to the sidebar, but the location is not set in stone.
Create systemctl service to run backend server
The Results legend has the building, lot and possible icons - if the user clicks on those icons, filter the Results list to only show the selected type. This will require some UI thought; should the legend icons become chips?
also...
After the React port, the Vacancy app could use an icon. See the frontend/public folder for appropriate sizes.
Currently the search result shows the following:
id: 12832000092
nbCode: 1
acres: 0.0517677
building: single family
walls: frame
basement: full basement
heating: 1
The backend API returns the following info:
"results": [
{
"_parcel_id": "10359000170",
"acres": 0.0500332,
"attic": 1,
"basement_finished": "unfinished",
"basement_type": "full basement",
"bath_full": 2,
"bath_half": 0,
"bath_total": 2.0,
"bldg_type": "two family",
"central_heat": 0,
"com_grd_flr": 0,
"construction": "",
"garage": 0,
"lot_type": "Vacant Building",
"nbrhd_code": 63,
"nbrhd_name": "Old North St. Louis",
"num_stories": "2 story",
"parcel_geojson": "[[[[-90.19463624658201, 38.65174091963114], [-90.19457335988255, 38.65176068486527], [-90.19443023857245, 38.651472213053985], [-90.19449331299239, 38.65145283036157], [-90.19463624658201, 38.65174091963114]]]]",
"price_bldg": null,
"price_lot": null,
"price_residential": 11000,
"price_sidelot": null,
"size_sqFt": 2179.44,
"street_addr": "1 MONTGOMERY ST",
"wall_material": "brick",
"ward_num": 3,
"zip": 63106
}
Since the backend does not filter based on price, the frontend needs to match that. OR, create mock prices so we can use that functionality
Branch: UI-refactor
If I run a search, the search form will be reset. I think this is because I am erasing the search form from the dom and then re-adding it when the search is done. I think the solution here is not to do the conditional "form vs search progress bar" render, and instead to just hide the piece that is not being shown at the time.
see example: https://www.clearmyrecord.org/
Branch: UI-refactor
dockerize backend application
If I click a result in the Results tab, the result should toggle expanded or collapsed. The styles for this action already exists; see toggleResultsItem in main.js
Branch: UI-refactor
The current UI uses the highLightParcels to perform this action.
Branch: UI-refactor
If I click on a vacant lot in the map, the same lot should expand in the Results tab. If the lot is not present in the results tab, nothing happens. The "expand" visual will be the same used in #39
see slack for list of available criteria
Rationale: when the Results legend is above the Results list, the legend looks like a set of buttons instead of a legend.
Full list of attributes being utilized as of 08/09/2019:
"_parcel_id"
"acres"
"attic"
"basement_finished"
"basement_type"
"bath_full"
"bath_half"
"bath_total"
"bldg_type"
"central_heat"
"com_grd_flr"
"construction"
"garage"
"lot_type"
"nbrhd_code"
"nbrhd_name"
"num_stories"
"price_bldg"
"price_lot"
"price_residential"
"price_sidelot"
"size_sqFt"
"wall_material"
"ward_num"
"zip"
Possibilities could be either the "filter_list" or "tune" material icons. You may need to choose a different icon depending on what we have available in our icon set.
Rationale: give the user an idea that they are opening an important menu vs "we are expanding something and we have no idea what it is".
The text to change is located in the sidebar header.
Rationale: we allow the user to search for more than just houses.
Branch: UI-refactor
The current ui magically meshes with the Github page listed in the readme. The demo page always shows the latest ui code on master. The new ui requires an intermediate build step and will need a different deployment method. Ideally, the Github page from the readme will still show the latest ui from master without any intervention on our part.
Investigate to see if there is a way to switch between satellite view vs openstreet view.
https://www.stlouis-mo.gov/data/parcels.cfm#CP_JUMP_632729 parcels and LRA into database
Currently root directory README.md is about how to set up the backend. Find a better place for backend README to live, write a new README.md for newcomers
I think I did it wrong. I think Jeremy will fix this before I finish typing.
Please leave any criteria that you think is necessary. If you want to implement a feature please comment to claim
then use st_centroid to calculate centre after
Currently, the front-end does not display properly on mobile devices. Make website mobile-responsive.
see slack for list of fields
I want a way to choose "hit the real API" vs "use mock data" by switching a .env flag.
Branch: UI-refactor
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.