Skip to content

anton-kulakov/WeatherApp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

87 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Weather App

Weather App is a web application that allows users to track current weather conditions. This project is based on the technical specification provided in the Java Backend Roadmap by Sergey Zhukov (link here).

Built with

  • Java
  • Spring MVC
  • Hibernate
  • MySql database
  • Flyway
  • Apache Maven
  • Apache Tomcat
  • Lombok
  • HTML/CSS
  • Thymeleaf

Functionality

The application enables users to:

  • Sign up for an account
  • Sign in using their credentials
  • Search for locations by entering a query in the search bar
  • Save locations to track weather conditions
  • Remove locations from their saved list
  • Log out of their account

Description of the application pages

The project includes 5 pages:

  • Sign up page: user registration interface
  • Sign in page: authentication page for existing users
  • Home page: displays saved locations and weather data
  • Search results page: shows locations found based on user queries
  • Error page: displays error messages for invalid routes or API failures

How to run locally using IntelliJ IDEA

To run the application, make sure that you have Java (JDK), GIT, Apache Maven, Apache Tomcat and MySql database installed on your computer.

  1. Download or clone the project

You can get the project by either downloading it as a ZIP archive or by cloning it using Git.

Option 1: Download as ZIP Archive

  • Go to the project’s GitHub page
  • Click the "Code" button
  • Select "Download ZIP"
  • Extract the ZIP file to a directory on your local machine.

Option 2: Clone the Repository using Git

Open your terminal or Git Bash and run the following command:

git clone https://github.com/anton-kulakov/TennisScoreboard.git
  1. In IntelliJ IDEA open the Database menu

1  In IntelliJ IDEA open the Database menu

  1. Click the plus button

2  Click the plus button

  1. Choose MySql

3  Choose MySql

  1. Enter the username and password for MySQL

4  Enter the username and password for MySQL

  1. Download missing driver files if needed

  2. Click "Test Connection"

6  Click Test Connection

  1. A successful connection message should be displayed

8  A successful connection message should be displayed

Then click "Apply" and "OK".

  1. Then right click. Chose New - Schema

10  Then right click  Chose New - Schema

And create two schemas:

  • Main schema with name "database"
  • And schema for testing with name "test_database"
  1. Go to the configurations menu

1  Go to the configurations menu

  1. Select "Edit configurations"

2  Select Edit configurations

  1. Click the plus sign

3  Click the plus sign

  1. Select Tomcat Server -> Local

  2. Select Tomcat as an Application server

4  Select Tomcat as a Application server

  1. Then in VM options type required environment variables

16  Then in VM options type required environment variables

Enter your values instead of [YOUR_API_KEY], [YOUR_DB_URL], [YOUR_DATABASE_USERNAME] and [YOUR_DATABASE_PASSWORD].

To make requests to the API, you need a key. To obtain it, you need to:

  1. Click "Fix"

5  Click Fix

  1. Select "WeatherApp:war exploded"

  2. Remove "WeatherApp_war_exploded" from the "Application context" field

  3. Then click "Apply" and "OK"

  4. Click "Run"

21  Click Run

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published