Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
53 changes: 53 additions & 0 deletions README.MD
Original file line number Diff line number Diff line change
Expand Up @@ -27,3 +27,56 @@ All the other specific requirements are up to you
* Use best practises
* Use naming conventions
* Show understanding of software development concepts

### User Manual
# 1. Login
Description
The login page is where users can enter their credentials to access the WeatherApp.

Steps
Open the WeatherApp.
Enter your username =user and password = user@123.
Click the "Login" button to access the application.
Image ![alt text](image/Weather-App-login.png)


2. Locations List with Search
Description
The Locations List page displays a list of locations by default "dhaka". Users can search for specific locations using the search bar.
![alt text](image/Weather-App-locations.png)

Steps
Navigate to the "Locations" page from the main menu.
Use the search bar at the top of the page to search for a specific location.
Click on the location name to view detailed weather information.


3. Details of Location for 16 Days Weather
Description
The Details page provides 16-day weather forecasts including temperature, rain, wind, sunrise, and sunset for the selected location.
![alt text](image/Weather-App-locations-16-days.png)

Steps
From the Locations List, click on a location name.
The Details page will display the weather forecast for the next 16 days.
View the temperature, rain, and wind information along with sunrise and sunset times for each day.
Image

4. Details of Location for a Day of Hourly Weather
Description
The Hourly Details page provides hourly weather information for a selected day including temperature, rain, and wind.

Steps
From the 16 Days Weather Details page, click on the desired date.
The Hourly Details page will display the hourly weather forecast for the selected day.
View the temperature, rain, and wind information for each hour of the day.
![alt text](image/Weather-App-a-day-24-weather.png)

5. Logout
Description
The logout option allows users to securely log out of the WeatherApp.

Steps
Click on the "Logout" button located at the right side of the navigation menu.
You will be redirected to the login page.
Image
Binary file added image/Swagger-UI-Api.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added image/Weather-App-a-day-24-weather.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added image/Weather-App-locations-16-days.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added image/Weather-App-locations.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added image/Weather-App-login.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
16 changes: 16 additions & 0 deletions pro-weather-client/.editorconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
# Editor configuration, see https://editorconfig.org
root = true

[*]
charset = utf-8
indent_style = space
indent_size = 2
insert_final_newline = true
trim_trailing_whitespace = true

[*.ts]
quote_type = single

[*.md]
max_line_length = off
trim_trailing_whitespace = false
42 changes: 42 additions & 0 deletions pro-weather-client/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
# See https://docs.github.com/get-started/getting-started-with-git/ignoring-files for more about ignoring files.

# Compiled output
/dist
/tmp
/out-tsc
/bazel-out

# Node
/node_modules
npm-debug.log
yarn-error.log

# IDEs and editors
.idea/
.project
.classpath
.c9/
*.launch
.settings/
*.sublime-workspace

# Visual Studio Code
.vscode/*
!.vscode/settings.json
!.vscode/tasks.json
!.vscode/launch.json
!.vscode/extensions.json
.history/*

# Miscellaneous
/.angular/cache
.sass-cache/
/connect.lock
/coverage
/libpeerconnection.log
testem.log
/typings

# System files
.DS_Store
Thumbs.db
4 changes: 4 additions & 0 deletions pro-weather-client/.vscode/extensions.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
{
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=827846
"recommendations": ["angular.ng-template"]
}
20 changes: 20 additions & 0 deletions pro-weather-client/.vscode/launch.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
{
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "ng serve",
"type": "chrome",
"request": "launch",
"preLaunchTask": "npm: start",
"url": "http://localhost:4200/"
},
{
"name": "ng test",
"type": "chrome",
"request": "launch",
"preLaunchTask": "npm: test",
"url": "http://localhost:9876/debug.html"
}
]
}
42 changes: 42 additions & 0 deletions pro-weather-client/.vscode/tasks.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
{
// For more information, visit: https://go.microsoft.com/fwlink/?LinkId=733558
"version": "2.0.0",
"tasks": [
{
"type": "npm",
"script": "start",
"isBackground": true,
"problemMatcher": {
"owner": "typescript",
"pattern": "$tsc",
"background": {
"activeOnStart": true,
"beginsPattern": {
"regexp": "(.*?)"
},
"endsPattern": {
"regexp": "bundle generation complete"
}
}
}
},
{
"type": "npm",
"script": "test",
"isBackground": true,
"problemMatcher": {
"owner": "typescript",
"pattern": "$tsc",
"background": {
"activeOnStart": true,
"beginsPattern": {
"regexp": "(.*?)"
},
"endsPattern": {
"regexp": "bundle generation complete"
}
}
}
}
]
}
54 changes: 54 additions & 0 deletions pro-weather-client/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
# Angular Weather App

## Description
This Angular project displays weather details, including temperature, rain, and wind speed. Users can view location details and mark favorite locations.

## Features
- Location details with daily and hourly weather forecasts
- Favorite locations
- Interactive charts for weather data
use ng2-chart and chart.js for weather line chart
## UI
-User Bootstrap 5 for interface design.

## Prerequisites
- Node.js and npm installed
- Angular CLI installed

# Development Tools
- VS Code

## Installation

1. Clone the repository:
```bash
git clone https://github.com/anseri/WeatherApp.git
```

2. Navigate to the project directory:
```bash
cd pro-weather-client
```

3. Install the dependencies:
```bash
npm install
```

## Running the Application

1. Start the development server:
```bash
ng serve
```

2. Open your browser and navigate to `http://localhost:4200`.

## Usage

1. Log in to access the application.
2. View Locations(default locations set "dhaka") list and search option for your desired locations.
2. View weather details and interact with the charts.
3. Mark locations as favorites to easily access them later.
Follow repository README.md file

109 changes: 109 additions & 0 deletions pro-weather-client/angular.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,109 @@
{
"$schema": "./node_modules/@angular/cli/lib/config/schema.json",
"version": 1,
"newProjectRoot": "projects",
"projects": {
"pro-weather-client": {
"projectType": "application",
"schematics": {
"@schematics/angular:component": {
"standalone": false
},
"@schematics/angular:directive": {
"standalone": false
},
"@schematics/angular:pipe": {
"standalone": false
}
},
"root": "",
"sourceRoot": "src",
"prefix": "app",
"architect": {
"build": {
"builder": "@angular-devkit/build-angular:application",
"options": {
"outputPath": "dist/pro-weather-client",
"index": "src/index.html",
"browser": "src/main.ts",
"polyfills": [
"zone.js"
],
"tsConfig": "tsconfig.app.json",
"assets": [
"src/favicon.ico",
"src/assets"
],
"styles": [
"src/styles.css",
"node_modules/bootstrap/dist/css/bootstrap.min.css"
],
"scripts": []
},
"configurations": {
"production": {
"budgets": [
{
"type": "initial",
"maximumWarning": "500kb",
"maximumError": "1mb"
},
{
"type": "anyComponentStyle",
"maximumWarning": "2kb",
"maximumError": "4kb"
}
],
"outputHashing": "all"
},
"development": {
"optimization": false,
"extractLicenses": false,
"sourceMap": true
}
},
"defaultConfiguration": "production"
},
"serve": {
"builder": "@angular-devkit/build-angular:dev-server",
"configurations": {
"production": {
"buildTarget": "pro-weather-client:build:production"
},
"development": {
"buildTarget": "pro-weather-client:build:development"
}
},
"defaultConfiguration": "development"
},
"extract-i18n": {
"builder": "@angular-devkit/build-angular:extract-i18n",
"options": {
"buildTarget": "pro-weather-client:build"
}
},
"test": {
"builder": "@angular-devkit/build-angular:karma",
"options": {
"polyfills": [
"zone.js",
"zone.js/testing"
],
"tsConfig": "tsconfig.spec.json",
"assets": [
"src/favicon.ico",
"src/assets"
],
"styles": [
"src/styles.css"
],
"scripts": []
}
}
}
}
},
"cli": {
"analytics": "12493342-360c-406f-abac-2f7dd77fac6c"
}
}
Loading