Le voyage de Leul
143 subscribers
194 photos
21 videos
9 files
170 links
Welcome to Le voyage de Leul ๐ŸŒ๐Ÿ‘จโ€๐Ÿ’ป๐Ÿ‘ฉโ€๐Ÿ’ป! Connect, collaborate, and innovate with developers worldwide.
Download Telegram
I got this website, that will teach you HTML, CSS & Js for free with free certificate

https://coursevania.com/courses/web-development-for-beginners-html-css-javascript/
๐Ÿ“ข Exciting Announcement! ๐Ÿš€

Iโ€™m thrilled to introduce Englify โ€“ a brand-new dictionary website designed to make learning English easier and more accessible! ๐Ÿ“–โœจ

With Englify, you can:
โœ… Find quick and accurate word definitions
โœ… Enhance your vocabulary effortlessly
โœ… Enjoy a smooth and user-friendly experience

Check it out now and level up your English skills! ๐ŸŒŸ

๐Ÿ”— Demo
๐Ÿ”— Repo

Let me know what you think! Your feedback is always welcome. ๐Ÿš€๐Ÿ’ก

#Englify #Dictionary #LearnEnglish
๐Ÿ”ฅ1
๐Ÿ’ฅHere we go again, I did it ๐Ÿ’ฅ

๐Ÿš€ NASA News Hub is finally live.



๐ŸŒ Overview

NASA News Hub is a web application that brings you the latest news and developments from NASA. Whether you're a space enthusiast, a student, or just curious about the universe, our platform keeps you informed with real-time updates! ๐Ÿ›ฐ๏ธ๐Ÿ”ญ

โœจ Features

โœ… Latest NASA News โ€“ Stay updated with the most recent articles and space discoveries.
โœ… Search Functionality โ€“ Find news articles quickly using keywords or topics.
โœ… Responsive Design โ€“ Works seamlessly on desktops, tablets, and mobile devices.
โœ… API Integration โ€“ Fetches real-time data from NASA's official APIs.

๐Ÿ›  Technologies Used

๐ŸŒ Frontend: HTML, CSS, JavaScript


๐Ÿ”— API: NASA's Open APIs for live news updates

โ˜ Hosting: Deployed on Vercel for speed and reliability


๐Ÿš€ Getting Started

To run this project locally, follow these steps:

1๏ธโƒฃ Clone the repository:

git clone https://github.com/akl-leul/nasa-news-.git


๐ŸŒ Live Website

Weโ€™d love to hear your feedback! ๐Ÿš€๐ŸŒŽ


๐Ÿ‘‰https://nasa-news-pearl.vercel.app/
๐Ÿ”ฅ2
Success is the sum of small efforts, repeated day in and day out.

โ€“ Robert Collier
Le voyage de Leul
https://nasa-news-pearl.vercel.app/
๐ŸŽ‰I made new updates for this.

Now any user can send direct message to my email.

Wanna have a try?

Https://nasa-news-pearl.vercel.app/contact.html
I have been trying to create these projects. And I want to share you the code, so choose one of them and I will post the whole code here.
Final Results
43%
Note taking and To do list
14%
Tic tac too game
43%
Memory game
Note taking website
Tic tac too game
Memory Game
Le voyage de Leul
I have been trying to create these projects. And I want to share you the code, so choose one of them and I will post the whole code here.
Note taking and memory game websites were chosen. So I have to choose one.

I think many people want the note taking one. So I will send it now.
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>To-Do & Notes App</title>
</head>
<body>
<div class="container">
<h1>To-Do & Notes</h1>

<button class="btn-dark-mode" onclick="toggleDarkMode()">๐ŸŒ™/๐ŸŒž</button>

<div>
<h2>To-Do List</h2>
<input type="text" id="todo-input" placeholder="Add a new task">
<button class="btn-add" onclick="addTodo()">Add</button>
<ul id="todo-list"></ul>
</div>

<div>
<h2>Notes</h2>
<input type="text" id="note-title" placeholder="Title" required>
<textarea id="note-content" placeholder="Write your note here..." required ></textarea>
<button class="btn-add" onclick="saveNote()">Save Note</button>
<div id="notes-container"></div>
</div>
</div>

<div class="modal-overlay" onclick="closeModal()"></div>
<div class="modal" id="modal">
<h3 id="modal-title"></h3>
<p id="modal-content"></p>
<button onclick="closeModal()">Close</button>
</div>
</body>
</html>
๐Ÿ‘1
:root {
--bg-light: #f4f4f4;
--bg-dark: #222;
--text-light: #000;
--text-dark: #fff;
--card-light: #fff;
--card-dark: #333;
--primary: #28a745;
--danger: red;
}

body {
font-family: Arial, sans-serif;
background: var(--bg-light);
color: var(--text-light);
margin: 0;
padding: 20px;
display: flex;
justify-content: center;
transition: all 1.5s eae;

}

.container {
width: 100%;
max-width: 600px;
background: var(--card-light);
padding: 20px;
border-radius: 10px;
box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
}

h1, h2 {
text-align: center;
}

input, textarea, button {
width: 90%;
padding: 10px;
margin: 5px 0;
border: 1px solid #ccc;
border-radius: 5px;
align-self: center;
}

button {
cursor: pointer;
border: none;

color: white;
font-weight: bold;
}

.btn-add {
background: var(--primary);
}

.btn-delete {
width: 30%;
background: var(--danger);
}

.btn-dark-mode {
background: #333;
}

button:hover {
opacity: 0.8;
}

ul {
list-style: none;
padding: 0;
}

ul li {
background: #ddd;
padding: 10px;
margin: 5px 0;
display: flex;
justify-content: space-between;
cursor: pointer;
}

.note {
background: #ffeb99;
padding: 10px;
margin-top: 10px;
border-radius: 5px;
display: flex;
justify-content: space-between;
align-items: center;
cursor: pointer;
}

.dark-mode {
background: var(--bg-dark);
color: var(--text-dark);
}

.dark-mode .container {
background: var(--card-dark);
}

.modal {
display: none;
position: fixed;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 80%;
max-width: 400px;
background: white;
padding: 20px;
border-radius: 10px;
box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.3);
z-index: 1000;
}

.modal h3 {
margin-top: 0;
}

.modal button {
margin-top: 10px;
}

.modal-overlay {
display: none;
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0.5);
z-index: 999;
}

model-overlay button{
background: green;
}
document.addEventListener("DOMContentLoaded", loadFromStorage);

function addTodo() {
let todoInput = document.getElementById("todo-input");
let todoText = todoInput.value.trim();
if (todoText === "") return;

let todoList = document.getElementById("todo-list");
let li = document.createElement("li");

li.innerHTML = `
${todoText}
<button class="btn-delete" onclick="removeTodo(event)">๐Ÿ—‘๏ธ</button>
`;

li.addEventListener("click", () => openModal(todoText));
todoList.appendChild(li);
todoInput.value = "";
saveToStorage();
}

function removeTodo(event) {
event.stopPropagation();
event.target.parentElement.remove();
saveToStorage();
}

function saveNote() {
let title = document.getElementById("note-title").value.trim();
let content = document.getElementById("note-content").value.trim();
if (title === "" || content === "") return;

let notesContainer = document.getElementById("notes-container");
let noteDiv = document.createElement("div");
noteDiv.classList.add("note");
noteDiv.innerHTML = `
<span>${title}</span>
<button class="btn-delete" onclick="removeNote(event, '${title}')">๐Ÿ—‘๏ธ</button>
`;
noteDiv.onclick = () => openModal(title, content);

notesContainer.appendChild(noteDiv);

document.getElementById("note-title").value = "";
document.getElementById("note-content").value = "";
saveToStorage();
}

function removeNote(event, title) {
event.stopPropagation();
event.target.parentElement.remove();
saveToStorage();
}

function openModal(title, content = "") {
document.getElementById("modal-title").innerText = title;
document.getElementById("modal-content").innerText = content;
document.querySelector(".modal-overlay").style.display = "block";
document.getElementById("modal").style.display = "block";
}

function closeModal() {
document.querySelector(".modal-overlay").style.display = "none";
document.getElementById("modal").style.display = "none";
}

function toggleDarkMode() {
document.body.classList.toggle("dark-mode");
localStorage.setItem("darkMode", document.body.classList.contains("dark-mode"));
}

function saveToStorage() {
let todos = Array.from(document.querySelectorAll("#todo-list li")).map(li => li.innerText.replace("๐Ÿ—‘๏ธ", "").trim());
let notes = Array.from(document.querySelectorAll("#notes-container .note span")).map(note => note.innerText);
localStorage.setItem("todos", JSON.stringify(todos));
localStorage.setItem("notes", JSON.stringify(notes));
}

function loadFromStorage() {
let todos = JSON.parse(localStorage.getItem("todos")) || [];
let notes = JSON.parse(localStorage.getItem("notes")) || [];

todos.forEach(todo => addTodoItem(todo));
notes.forEach(title => saveNoteItem(title));

if (localStorage.getItem("darkMode") === "true") {
document.body.classList.add("dark-mode");
}
}
Happy Coding๐Ÿ’ป
๐Ÿš€ Tic-Tac-Toe Online โ€“ Can You Beat the AI? ๐ŸŽ‰

I'm excited to launch my latest project: Tic-Tac-Toe Online! ๐Ÿ† Play against a super tough AI thatโ€™s nearly impossible to beat or challenge a friend. Think you're smart enough to win? Give it a try!

๐Ÿ“ŒFeatures
โœ…Better UI
โœ…Shows score
โœ…Unbeatable AI

๐Ÿ”— Play now: Tic-Tac-Toe

Github : Link

For those of you who beat the AI will have a gift, send me a screenshot.

โœ…Soon I will create an offline appโœ…

Let me know if you can outsmart the AI! ๐Ÿ˜ˆ #GameDevelopment #TicTacToe #ImpossibleAI
๐Ÿ‘1
๐Ÿง  New Game Alert: Memory Challenge! ๐ŸŽฎ

I'm excited to introduce my latest project: Memory Game! ๐Ÿ† Test your brainpower and see how fast you can match the cards. Itโ€™s fun, challenging, and a great way to sharpen your memory!

๐Ÿ”— Play now: https://memory-game-seven-ashen.vercel.app


Git hub: Link

Think you have a sharp mind? Give it a try and let me know your best score! ๐Ÿš€ #GameDevelopment #MemoryGame #BrainChallenge