Giter Site home page Giter Site logo

parkview.backend's Introduction

parkview

The parkview project was developed as part of the coursework for the SC2006 (Software Engineering) module at Nanyang Technological University (NTU), Singapore.

logo

The mobile application is designed to enhance the parking experience by guiding users to the optimal parking location based on their destination and personal preferences. Users can input their intended destination, and parkview will suggest the most suitable parking spot, taking into consideration factors such as proximity and availability.

Main features of the app are:

  • Optimal parking spot suggestions based on destination and personal preferences
  • Favorites feature to bookmark commonly used destinations
  • Integrates with built-in navigation apps (Apple Maps for iOS, Google Maps for Android)
  • Customizable user preference settings for parking recommendations (availability, cost, weather)
  • Minimalist, driver-friendly interface with voice-activated search by our intelligent assistant, DOM

This is the backend repository. The frontend repository is accessible here.

Check the app demo video here.

Tech Stack

Frontend: React Native & Expo

Backend: Node.js & Supabase

Get the server running

  1. Ensure essential libraries and frameworks for the tech stack mentioned above are properly installed on the machine.

  2. Install the essential packages from npm:

    npm install

  3. Create a .env file on the root directory to store environment variables - mainly credentials and api keys.

  • Using Mac/Linux: touch .env

  • Using Windows: echo. > .env

    Details to be included on .env are:

    PARKVIEW_SUPABASE_URL=[PROJECT URL of the Supabase DB]
    PARKVIEW_ANNON_KEY=[ANNON KEY for the Supabase DB]
    PARKVIEW_SERVICE_ROLE_KEY=[SERVICE ROLE KEY for the Supabase DB]
    PARKVIEW_STORAGE_BUCKET=[STORAGE BUCKET NAME to store files on Supabase DB]
    
    GOOGLE_API_KEY=[Google Cloud API Key]
    HFACE_API_KEY=[HuggingFace Inference API Key]
    OPENAI_API_KEY=[OpenAI API Key]
    
    LTA_API_KEY=[LTA API Key]
    URA_ACCESS_KEY=[URA Access Key]
    URA_TOKEN=[URA Access Token]

    Visit the following websites:

    • Supabase to create a new database project, and get the respective details for PARKVIEW_SUPABASE_URL, ANNON_KEY, SERVICE_ROLE_KEY, and STORAGE_BUCKET

    • Google Cloud Platform to get the API key to access Google Cloud API services

    • HuggingFace to get the API key to access the HuggingFace Inference APIs

    • OpenAI to get the API key to access the OpenAI APIs

    • LTA to get the API key to access the LTA Dataset & APIs

    • URA to get the API key to access the URA APIs

    • URA Token Generator to generate a one-day access token to the URA APIs; would need a URA API key first for token generation

  1. Run the backend server.

    npm run server

Acknowledgement

This repository is publicly available for the purpose of reference. We discourage direct duplication of this code base. In keeping with the open source community ethos, users should give appropriate credit and abide by the terms set forth in the project license when using this project as a reference.

parkview.backend's People

Contributors

yijisuk avatar pwspang avatar

Watchers

 avatar

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.