Skip to content

agiledev-students-fall2024/4-final-project-while-we-were-dreaming

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

While We Were Dreaming

Deployment

The live app is hosted here: View Deployment

Product Vision Statement

While We Were Dreaming is a location-based platform designed to connect NYU students through the shared memories they create on campus. By pinning personal experiences to a dynamic map, students can reflect on key moments of their college journey and explore the memories of others enhanced by anonymity. This platform fosters a sense of community and nostalgia, bridging the emotional gap often felt in an open-city campus like NYU. The map becomes a collective memory, capturing the dreams and experiences of past, present, and future students.

Team Members

History of the Project

While We Were Dreaming began as a response to the disconnect many students experience on an open-city campus like NYU. As students move through the bustling streets of New York, they often miss opportunities to connect with their peers and reflect on the memories that shape their college experience. The name, While We Were Dreaming, is inspired by the iconic "Dream Until It's Your Reality" graffiti that can be found scattered everywhere among campus and other places in the city that is often one of the first sights that greets students upon their arrival in New York. It resonates with the spirit of NYU, where the city and campus serve as the backdrop for countless dreams—thus, one can say this platform serves as a map of all our memories and the things we did here "while we were dreaming".

Over time, the idea evolved into a simple, anonymous platform that prioritizes reflection and nostalgia, without the distractions of likes or comments. Designed by a team of passionate students, While We Were Dreaming is an interactive tool that captures the essence of college life at NYU, allowing users to explore both individual and shared histories.

How to Contribute

We welcome contributions from the community! To get started, please review our CONTRIBUTING.md document, which outlines the guidelines for contributing.

Building & Testing

Building the Project

To set up the project locally, follow these steps:

  1. Clone the repository:
    git clone https://github.com/agiledev-students-fall2024/4-final-project-while-we-were-dreaming.git
  2. Navigate to the project directory:
    cd 4-final-project-while-we-were-dreaming
  3. Navigate to the backend and frontend directories and install dependencies:
    cd back-end
    npm install
    npm install cors
    npm install chai
    npm install mocha
    cd ../front-end
    npm install
    npm install browser-image-compression
    npm install leaflet
    npm install mongoose
    npm install express-validator
    npm install jwt-decode
    npm install emailjs-com

Running the Application Locally

To run the project locally:

  1. Start the backend server:

    cd back-end
    npm start

    The server should be running on http://localhost:5001.

  2. Start the frontend application:

    cd ../front-end
    npm start

    The frontend should be accessible on http://localhost:3000.

Testing Instructions

To run the tests and check code coverage:

  1. Make sure you are in the back-end directory.

    cd back-end
  2. Run the test script:

    npm test

    This will execute the test cases using Mocha and Chai.

  3. Check code coverage with C8:

    npm run test:coverage

    Ensure that at least 10% code coverage is met as required.

Routes (install Rest Client Extension in VS Code)

Pins

  • GET /api/pins - Get all pins
  • GET /api/pins/user/:userId - Get pins for a specific user
  • GET /api/pins/:id - Get a pin by ID
  • POST /api/pins - Add a new pin
  • PUT /api/pins/:id - Update an existing pin
  • DELETE /api/pins/:id - Delete a pin by ID

Test

  • GET /test/mock-data - Fetch mock user data

Frontend-Backend Integration

Ensure that the frontend is configured to make API calls to the local backend server (http://localhost:5001) for development. This integration step is crucial for end-to-end testing and should be reflected in the frontend's environment variables or API configurations.

About

agile-dev-devops-fall-2024-4-final-project-generic-mern-stack-project created by GitHub Classroom

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 78.0%
  • CSS 21.9%
  • HTML 0.1%