Giter VIP home page Giter VIP logo

nps_django's Introduction

Digital Ecosystem for National Park Service Annual Passholder Program

Capstone Project - Evelynn Kaplan - Ada Developers' Academy

Table of Contents

Introduction and Technologies

The problem:

The National Park Service of the United States has no database or other digital system storing records of annual passes sold to park visitors. Park rangers cannot look up visitors' annual passes at the gate, so passholders must have a physical pass to be admitted without paying an entrance fee.

The solution:

A three-part digital ecosystem:

  • Database, custom REST API, interfaces for park rangers and passholders

    • Deployed webapp
    • Built with Django 2.2, Python 3.7 and PostgreSQL 11.3
    • Stored in this repository
  • Data visualization dashboard

  • Mobile app with digital annual pass that can be accessed offline

Django webapp

Use cases

  • Customized Django admin interface for park rangers enables park rangers to search for passholders by name and check them in at park gates. Park rangers can add new passholders to the database after selling a new pass. See example in slide deck.
  • Interface for passholders enables passholders who bought their passes at a point-of-sale other than a national park gate (for example, through REI) to register their pass information for quicker look-up at park gates.

Installation Instructions

  1. If this is your first time using Django, follow Django's quick install guide.
  2. If this is your first time using PostgreSQL, download PostgreSQL.
  3. Clone this repository and cd nps_django
  4. pip install -r requirements.txt
  5. python3 manage.py runserver
  6. Visit http://127.0.0.1:8000/ or whatever localhost your server is running in.

Data visualization dashboard

Use case

  • This data visualization dashboard allows the National Park Service to easily understand passholder data. Now that the National Park Service has a database with information about passholders and pass usage, the National Park Service can use that data to make better decisions about its annual pass program, and to more effectively market to potential passholders. Note: the data shown is based on fake seed data and does not represent real statistics.

Installation Instructions

  1. Clone this repository and cd nps_dashboard
  2. pip install -r requirements.txt
  3. python3 app.py
  4. Visit http://127.0.0.1:8050/ or whatever localhost your server is running in.

React Native app

Use cases

  • This cross-platform mobile app allows users to access their annual pass and pass visit history offline. Passholders can access a scannable barcode of their annual pass that park rangers with scanning devices can scan to find the user in the database. The barcode corresponds to the passholder's pass ID.
  • New users can get access to their annual pass and visit history if they create an account using the email address tied to their annual pass.
  • Users can access their data offline if they are already logged in to the app with the email address tied to their annual pass.
  • Video showing user flow of a logged-in user, including offline mode

Installation Instructions

  1. If this is your first time using Node.js and npm, download Node.js.
  2. Install the Expo command line utility with npm install -g expo-cli
  3. Clone the repository and cd nps_app
  4. npm install
  5. Download the Expo client for the cell phone you want to test the app on.
  6. npm start -- this will open up your localhost. If it doesn't open, navigate to whatever localhost your server is running in.
  7. Use your cell phone to scan the QR code that appears in the Expo metro bundler and this will open the app on your phone's Expo client.

nps_django's People

Contributors

evelynnkaplan avatar

Stargazers

 avatar  avatar

Watchers

 avatar

Forkers

syrosalynyu

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.