GithubHelp home page GithubHelp logo

codeforpdx / dwellinglybackend Goto Github PK

View Code? Open in Web Editor NEW
14.0 58.0 23.0 1.33 MB

Application for property managers to communicate with social workers

License: MIT License

Python 98.97% HTML 0.58% Shell 0.20% Mako 0.25%
hacktoberfest python civictech flask codeforpdx civictechindex code-for-america code-for-all backend

dwellinglybackend's Introduction

Dwellingly App Backend

CI Tests Code style: black

Looking for the Dwellingly App front end?

Archived:

Thank you to everyone who has put in time and effort in building the backend API for the JOIN (Dwellingly) application. This repo is being archived in preference to have the backend code and frontend code combined into one application/repository. Please go to https://github.com/codeforpdx/dwellingly-app for the dwellingly application.

Description

The nonprofit Join is currently working to help transition people out of homelessness. However, their current system for staying in touch with landlords is currently inadequate. Code for PDX is building the Dwellingly app in conjuntion with Join Organization. Dwellingly will aid property managers in communicating with social workers, and will eventually aid in supporting both tenants and landlords with a more streamlined rental property process.

This app aims to replace the current system with a robust ticketing system to ensure the staff at Join can connect with their landlords and clients seamlessly. This will allow Join to provide support and improve success in transitioning people out of homelessness.

UI Preview

Dwellingly is being built from these FIGMA designs

Specs

The backend is being built with Python, Flask and SQLAlchemy. The frontend is built with React.

Contributing

  • Please read and abide by our Code of Conduct

  • To learn about our workflow, app architecture, and how to install the project for development. View the CONTRIBUTING.MD doc.

  • To learn about how to get a JWT token, use the API for development, and about all our endpoints, please see our API Usage page. (Warning: endpoint info may be out of date)

Contributors

Thank You contributors. No contribution is too small.

I plan to setup the contributor bot to auto add to this. We can also manually add for contributors who contribute in other ways.

About Us

dwellinglybackend's People

Contributors

aedwardg avatar beekman avatar cecillesalazar avatar chris-boe avatar cphpitts avatar davetrost avatar dbridenbeck avatar dcellucci avatar dependabot[bot] avatar gheelan avatar gussmith23 avatar htharker42 avatar jeremydavidson avatar jls-github avatar kentshikama avatar keppel2 avatar marcusjensen15 avatar mgrienauer avatar nickschimek avatar ovsyankimo avatar pogorobot avatar protopaco avatar qq1u avatar russellneville avatar sokampdx avatar spensbot avatar tnorbury avatar whiletrace avatar yunnie avatar zfregin avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

dwellinglybackend's Issues

Adjust user model to include properties for Property Managers

Expected Behavior
When GET /user/:id is called for a Property Manager, the properties they manage and the tenants that belong to those properties should be returned

pseudo-code from Hugh on how to accomplish this:

if role == "PROPERTY MANAGER":
 return user.json w/ properties

Fix tenant archiving logic

Archiving a tenant should NOT be on a toggle switch. When the frontend hits the API with a request it should be deterministic. Currently the backend logic is written in a way that it expects the frontend to know the state of the backend. The update (PUT) action could handle this, but then the return message will be different.

To keep the response the same the delete method should be deleted/modified and replaced with deterministic logic. I believe there are a few different ways this could be done, but basically we want the frontend to be able to make a request and know for certain that they are archiving a tenant even if the tenant is already archived, as it is now they could inadvertently unarchive a tenant when they want to archive a tenant.

Whoever picks this up, Let me know what implementation you think is a good option and we can discuss, or if you need me to provide a couple different options then I can do that too.

Separate Tenant resource out into two separate classes

Endpoints that require an id should be in the class Tenant For example the update and get action
Endpoints that do not require an id should be in the class Tenants for example the POST and GET action

See the app.py file for other resources that follow this style. The actual routes and behavior will not change. Only the code organization. So this is more of a refactor which will remove the conditional in the get action when its done.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.