Table of Contents
You and your group will use everything you’ve learned over the past six units to create a real-world full-stack application that you’ll be able to showcase to potential employers. The user story and acceptance criteria will depend on the project that you create, but your project must fulfil the following requirements:
-
Use Node.js and Express.js to create a RESTful API.
-
Use Handlebars.js as the template engine.
-
Use MySQL and the Sequelize ORM for the database.
-
Have both GET and POST routes for retrieving and adding new data.
-
Use at least one new library, package, or technology that we haven’t discussed.
-
Have a folder structure that meets the MVC paradigm.
-
Include authentication (express-session and cookies).
-
Protect API keys and sensitive information with environment variables.
-
Be deployed using Heroku (with data).
-
Have a polished UI.
-
Be responsive.
-
Be interactive (i.e., accept and respond to user input).
-
Meet good-quality coding standards (file structure, naming conventions, follows best practices for class/id naming conventions, indentation, quality comments, etc.).
-
Have a professional README (with unique name, description, technologies used, screenshot, and link to deployed application).
Streetlights have a profound impact on the vitality of a city. Good street lighting reduces crime, increases night-time economic activity, and prevents auto accidents. The streetlight network is one of the most large-scale and expensive components of a city’s public infrastructure, and streetlights are a major contributor to a city’s electricity use and carbon footprint. That raises an important question: how should the city make decisions about how to replace and expand the streetlight network? And what criteria should be used to make these decisions? The lights use a significant amount of energy, so lights can be replaced with energy-efficient bulbs to reduce the city’s carbon footprint. The network can be expanded to bring more light to underserved neighborhoods. Light pollution can be taken into account. And decisions can be made to reduce the cost to city in the short and longterm. This project will tackle the problem of wrangling Charlottesville’s various streetlight data to build a tool that maps the streetlights and displays all the information the city would need to know about each individual streetlight in an intuitive application. This application will allow the city to view streetlight data both in a tabular and spatial manner. The city will be able to better manage their streetlight data.
- As a… City of Charlottesville employee
- I should be able to Login or creat an account ,
- I want to… View and modify data about the streetlights in the City of Charlottesville
- So that… the city can make better informed decisions about maintenance, future development, etc.
- Mapping library (leaflet)
- Tabular view of data (tabulator)
- JavaScript
- Express.js
- Node.js
- MySQL2
- Sequelize
- Express.handlebars
- Dotenv
- Bycrypt
- Express-session
- Connect-session-sequelize
- Handlebars
- GET & POST API routes to add/rendering data
- MVC Framework(Models,Views,Controllers)
• Erich Purpur: Back End and support Github
• Shaima Jobran: Back End and Front End Github
• Christopher Zacharias: Front End and Presentaion Github





