{"id":13553817,"url":"https://github.com/datamade/just-spaces","last_synced_at":"2025-04-10T18:50:48.143Z","repository":{"id":53533656,"uuid":"165309502","full_name":"datamade/just-spaces","owner":"datamade","description":"🏕 A tool from University City District and DataMade to promote better and more just public spaces","archived":false,"fork":false,"pushed_at":"2021-03-25T22:32:34.000Z","size":13158,"stargazers_count":7,"open_issues_count":31,"forks_count":1,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-03-24T16:36:33.678Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://justspacesproject.org","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/datamade.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-01-11T21:03:55.000Z","updated_at":"2023-03-17T11:14:40.000Z","dependencies_parsed_at":"2022-08-20T13:20:47.919Z","dependency_job_id":null,"html_url":"https://github.com/datamade/just-spaces","commit_stats":null,"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/datamade%2Fjust-spaces","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/datamade%2Fjust-spaces/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/datamade%2Fjust-spaces/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/datamade%2Fjust-spaces/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/datamade","download_url":"https://codeload.github.com/datamade/just-spaces/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248273721,"owners_count":21076223,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-01T12:02:33.918Z","updated_at":"2025-04-10T18:50:48.121Z","avatar_url":"https://github.com/datamade.png","language":"JavaScript","funding_links":[],"categories":["JavaScript","others"],"sub_categories":[],"readme":"# Just Spaces\n🏕 A tool from University City District and DataMade to promote better and more just public spaces\n\n## Requirements\n- Python 3.x\n- GDAL (for data imports)\n\n## Running the app locally\n\n1. Clone this repository and `cd` into your local copy.\n\n    ```bash\n    git clone git@github.com:datamade/just-spaces.git\n    cd just-spaces\n    ```\n\n2. Create a virtual environment. (We recommend using [`virtualenvwrapper`](http://virtualenvwrapper.readthedocs.org/en/latest/install.html) for working in a virtualized development environment.)\n\n    ```bash\n    mkvirtualenv -p python3 just-spaces\n    ```\n\n3. Install the Django requirements.\n\n    ```bash\n    pip install -r requirements.txt\n    ```\n\n4. Copy the example local settings file to the correct location:\n\n    ```bash\n    cp just-spaces/local_settings.example.py just-spaces/local_settings.py\n    ```\n\n5. Create the database:\n\n    ```bash\n    createdb just-spaces\n    ```\n\n6. Run migrations:\n\n    ```bash\n    python manage.py migrate\n    ```\n\n7. Make a superuser for so that you can access the admin interface:\n\n    ```bash\n     python manage.py createsuperuser\n    ```\n\n    Django should prompt you to provide a username, email, and password.\n\n8. Initialize PLDP data:\n\n    ```bash\n    python manage.py initialize_pldp\n    ```\n\n9. Load ACS data:\n\n    ```bash\n    python manage.py import_data\n    ```\n\n10. Load templates:\n\n    ```bash\n    python manage.py import_survey_templates\n    ```\n\n11. Run the app locally!\n\n    ```bash\n    python manage.py runserver\n    ```\n\n    Navigate to http://localhost:8000/.\n\n## Importing new ACS data\n\nIf you'd like to refresh ACS data, there are a few steps you'll need to take:\n\n0. If your database is running in production, [make a backup of it with `pg_dump`](https://www.postgresql.org/docs/9.1/backup.html) just in case\n1. Follow [the instructions in the `data` repo](./data/README.md#updating-data-for-a-new-year) to remake ACS data for a new year\n2. Rerun `python manage.py import_data`\n\nThe `import_data` management command will update data if it already exists, so you shouldn't experience data loss during import. Still, we recommend that you practice caution and make a backup.\n\nSince `import_data` can take a long time to finish, you can pass in flags that will tell it to only run certain parts of the data import pipeline. These flags follow the format `--${entity}-only` (e.g. `--blockgroups-only`). These flags can be useful if, for example, you're only actively developing one part of the import pipeline (like the Census block group import) and you don't want to have to wait for the rest of the job to finish in order to test your work. For full documentation of the available flags, run `./manage.py import_data --help`.\n\n## Permissioning\n\nThis app employs three classes of users:\n\n1. `Field users` can run published surveys.\n2. `Staff users` have all the permissions of field users. They can also create, edit, and delete Agencies, Studies, Study Areas, Surveys, and Locations. They can publish surveys so they can be run by field users. Staff users can also view all collected data and design data visualizations on the collected data pages.\n3. `Superusers` have all the permissions of staff users. They can also create, edit, and delete other users. Only superusers can set and change user passwords. **All superusers should also have staff status.**\n\nIn addition, list views for entities like Studies, Surveys, and CensusAreas will provide filtered results based on the Agency assigned to the current user. If a user has no Agency assigned, the user will see unfiltered results for the entity in question. This can be useful to provide users with full visibility over all entities in the system.\n\n## On form building\nThis app uses a custom fork of [django-fobi](https://github.com/datamade/django-fobi) for the Create Survey, Edit Survey, and Run Survey views. django-fobi's [documentation](https://django-fobi.readthedocs.io/en/0.13.8/) is an immensely helpful resource. Add-ons to the base are in this repo's `fobi-custom` folder, including custom plugins that draw from [`django-pldp`](https://github.com/datamade/django-pldp), our implementation of the Public Life Data Protocol.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdatamade%2Fjust-spaces","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdatamade%2Fjust-spaces","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdatamade%2Fjust-spaces/lists"}