Merge branch 'v1.0.0-local' into debian12
This commit is contained in:
@@ -34,6 +34,7 @@ This is a simple weather application that allows users to view current weather d
|
||||
**Note:** There is also a backend server directory, which is currently not in use. - You can ignore it for now.
|
||||
|
||||
## Usage
|
||||
|
||||
1. Get an API key from [OpenWeatherMap](https://openweathermap.org/api).
|
||||
2. Click on the "Set API Key" button in the header to enter your API key.
|
||||
3. Enter a city name in the search bar and press Enter or click the "Get Weather" button.
|
||||
@@ -41,7 +42,9 @@ This is a simple weather application that allows users to view current weather d
|
||||
**Now you can view the current weather data for the specified city!**
|
||||
|
||||
# Other Information
|
||||
|
||||
## Technologies Used
|
||||
|
||||
- React
|
||||
- TypeScript
|
||||
- Tailwind CSS
|
||||
@@ -49,5 +52,5 @@ This is a simple weather application that allows users to view current weather d
|
||||
- Vite
|
||||
|
||||
## Version
|
||||
This project is currently in development. But will be updated regularly and is expected to be stable soon.
|
||||
> There is also coming a public version of the app, which will be hosted on a server. - **Stay tuned for updates!**
|
||||
|
||||
**1.0.0**
|
||||
|
@@ -5,7 +5,7 @@
|
||||
<link
|
||||
rel="icon"
|
||||
type="image/svg+xml"
|
||||
href="./src/assets/cloud-sun-fill.svg"
|
||||
href="./src/assets/cloud-sun-fill.png"
|
||||
/>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<title>Weather App</title>
|
||||
|
BIN
frontend/src/assets/cloud-sun-fill.png
Normal file
BIN
frontend/src/assets/cloud-sun-fill.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 24 KiB |
BIN
frontend/src/assets/icons/logo.psd
Normal file
BIN
frontend/src/assets/icons/logo.psd
Normal file
Binary file not shown.
BIN
frontend/src/assets/logo.psd
Normal file
BIN
frontend/src/assets/logo.psd
Normal file
Binary file not shown.
@@ -3,7 +3,7 @@ import ChangeAPI from "./ChangeAPI";
|
||||
import ChangePreferences from "./ChangePreferences";
|
||||
import { useState } from "react";
|
||||
import Cookies from "js-cookie";
|
||||
import logo from "../assets/cloud-sun-fill.svg";
|
||||
import logo from "../assets/cloud-sun-fill.png";
|
||||
|
||||
const Header: React.FC = () => {
|
||||
const [apiCard, setApiCard] = useState(false);
|
||||
@@ -76,7 +76,7 @@ const Header: React.FC = () => {
|
||||
</span>
|
||||
</button>
|
||||
<a
|
||||
href="https://git.the1s.de/theis.gaedigk/weather-app/wiki"
|
||||
href="https://github.com/theis-js/weather-app/wiki"
|
||||
target="_blank"
|
||||
rel="noopener noreferrer"
|
||||
>
|
||||
|
@@ -25,7 +25,7 @@ const WeatherCard: React.FC = () => {
|
||||
pending: "Fetching weather data...",
|
||||
success: "Weather data loaded successfully!",
|
||||
error:
|
||||
"Failed to load weather data. Please check your entered city name.",
|
||||
"Failed to load weather data. Please check your entered city name. (Error: x4040)",
|
||||
})
|
||||
.then(() => {
|
||||
if (localStorage.getItem("weather")) {
|
||||
|
@@ -10,11 +10,14 @@ export const fetchWeather = async (
|
||||
`http://api.openweathermap.org/geo/1.0/direct?q=${city}&appid=${apiKey}`
|
||||
).then((response) => {
|
||||
if (response.status === 401) {
|
||||
myToast("You are not authorized to access this resource. Please check your API key.", "error");
|
||||
myToast(
|
||||
"You are not authorized to access this resource. Please check your API key. (Error: x4010)",
|
||||
"error"
|
||||
);
|
||||
} else if (response.ok) {
|
||||
return response.json();
|
||||
} else {
|
||||
myToast("Error fetching location data: " + response.statusText, "error");
|
||||
myToast("Error fetching location data. (Error: x32)", "error");
|
||||
}
|
||||
});
|
||||
const lat = location[0].lat;
|
||||
|
@@ -4,5 +4,16 @@ import { myToast } from "./toastify";
|
||||
export const changeAPIcookie = (newApiKey: string) => {
|
||||
let apiKey15 = newApiKey.slice(0, 15);
|
||||
Cookies.set("apiKey", newApiKey);
|
||||
myToast("API key updated successfully!" + " " + "Your new API key: " + apiKey15 + "...", "success");
|
||||
if (Cookies.get("apiKey") === newApiKey) {
|
||||
myToast(
|
||||
"API key updated successfully!" +
|
||||
" " +
|
||||
"Your new API key: " +
|
||||
apiKey15 +
|
||||
"...",
|
||||
"success"
|
||||
);
|
||||
} else {
|
||||
myToast("Failed to update API key. (Error: x30)", "error");
|
||||
}
|
||||
};
|
||||
|
Reference in New Issue
Block a user