Skip to content

KalinaBarzashka/CS50-Final-Project

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CS50-Final-Project

My final project for CS50 Harvard course. Video Demo(Link to YouTube): https://youtu.be/j0NUqqMLDZ0

Table of Contents

  • 1 National Monuments
    • 1.1 Overview
    • 1.2 Functionalities
  • 2 Architecture
  • 3 Technology Stack

NationalLandmarks

The software is powered by flask library and supports SQLite database. The front-end part is implemented via pure HTML, CSS and Bootstrap. The project overview, functionalities, architecture and technology stack is reviewed bellow.

📝 Overview

The idea of the website is to contain the general information for all the USA's national monuments. Here all citizens and tourists can get familiar with the monuments, check their location and some other interesting information. If the digital visitor do not register, he/she will not be able to take a look of all the USA monuments and mark them as visited.

How can you register?

Register online in a few simple steps by visiting the website page. Submit your:
📌 User Name
📌 Password

After you register successfully, you will become a user and you will be able to:
📌 List all monuments
📌 List all states
📌 List all agencies
📌 Visit monuments
📌 Rate monuments

💻 Functionalities

📌 Monuments Page

On this page you can see the full list of the USA's national monument. Only admin can edit and delete monuments. Accessible only for registered users.

📌 Create Monument Page

On this page you can submit new Monument objects to the database. Accessible only for admin users.

📌 Approve Monument Page

Accessible only for admin users.

📌 Visited Monuments Page

On this page you can see the monuments, visited by the current user, his grade for the landmark and date of visit. Accessible only for registered users.

📌 Monuments Details Page

On this page you can read summary for monument of your choise and some other details. Here, you can also rate and visit the place. Accessible only for registered users.

📌 Agencies Page

On this page you can see the full list of the USA's agencies. Only admin can create, edit and delete agencies. Accessible only for registered users.

📌 States Page

On this page you can see the full list of the USA's states. Only admin can create, edit and delete states. Accessible only for registered users.

🔨 Architecture

The project architecture is accomplished using modern approaches in web development. The application is build using lightwight python framework - Flask, utilizing the folder-by-feature architecture for the html and css files.
The authentication functionality is implemented via session storage, and the authorization is made via custom decorators.

⚙️ Technology Stack

  • Python, Flask, session storage
  • SQLAlchemy, WTforms
  • SQLite
  • HTML, CSS, Bootstrap

About

Final project for CS50 Harvard course.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published