{"id":30737763,"url":"https://github.com/johanalain11/todoapp-angular","last_synced_at":"2026-05-18T19:35:49.638Z","repository":{"id":312108182,"uuid":"1045737251","full_name":"johanalain11/TodoApp-angular","owner":"johanalain11","description":"Application web Angular de gestion de tâches","archived":false,"fork":false,"pushed_at":"2025-08-29T10:45:35.000Z","size":112,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-08-29T12:31:01.170Z","etag":null,"topics":["angular"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/johanalain11.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-08-27T16:30:36.000Z","updated_at":"2025-08-29T10:45:39.000Z","dependencies_parsed_at":"2025-08-28T22:04:59.009Z","dependency_job_id":null,"html_url":"https://github.com/johanalain11/TodoApp-angular","commit_stats":null,"previous_names":["johanalain11/sie-angular","johanalain11/todoapp-angular"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/johanalain11/TodoApp-angular","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/johanalain11%2FTodoApp-angular","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/johanalain11%2FTodoApp-angular/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/johanalain11%2FTodoApp-angular/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/johanalain11%2FTodoApp-angular/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/johanalain11","download_url":"https://codeload.github.com/johanalain11/TodoApp-angular/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/johanalain11%2FTodoApp-angular/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273517213,"owners_count":25119765,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-03T02:00:09.631Z","response_time":76,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["angular"],"created_at":"2025-09-03T21:47:33.517Z","updated_at":"2026-05-18T19:35:44.614Z","avatar_url":"https://github.com/johanalain11.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\n\n# ✅ Projet TodoApp (Angular + JSON Server)\n\n![Angular](https://img.shields.io/badge/Angular-20-red?style=for-the-badge\u0026logo=angular) ![TypeScript](https://img.shields.io/badge/TypeScript-Lang-blue?style=for-the-badge\u0026logo=typescript) ![JSON-Server](https://img.shields.io/badge/JSON--Server-Mock%20API-orange?style=for-the-badge\u0026logo=json) ![Node.js](https://img.shields.io/badge/Node.js-22-green?style=for-the-badge\u0026logo=node.js) ![MIT License](https://img.shields.io/badge/License-MIT-yellow?style=for-the-badge) ![Contributions Welcome](https://img.shields.io/badge/Contributions-Welcome-brightgreen?style=for-the-badge)\n\n---\n\n## 📖 Description\n**TodoApp** est une application web moderne de gestion de tâches développée avec **Angular 20**.  \nLes tâches sont **stockées dans un fichier `db.json` et gérées via une API REST simulée avec [json-server](https://github.com/typicode/json-server)**.  \n\n---\n\n## 🚀 Fonctionnalités\n\n![Fonctionnalités](./public/features.png \"Fonctionnalités TodoApp\")\n\n#### ✅ Ajouter une tâche avec un titre  \n#### ✅ Afficher dynamiquement la liste des tâches via `@for`  \n#### ✅ Supprimer une tâche en base (`db.json`)  \n#### ✅ Communication avec une **API REST mockée** grâce à `json-server`  \n\n---\n\n## 🛠️ Technologies utilisées\n- 🅰️ **Angular 20** — Framework front-end  \n- 🟦 **TypeScript** — Langage principal  \n- 📦 **JSON Server** — API REST fake pour simuler un backend  \n- ⚡ **Node.js (20+)** — Environnement \n\n---\n\n## 📦 Installation et Utilisation\n\n### 1️⃣ Cloner le projet\n```sh\ngit clone https://github.com/ton-profil/todoapp.git\ncd todoapp\n\n```\n\n### 2️⃣ Installer les dépendances\n```sh\nnpm install\n```\n\n### 3️⃣ Lancer l'API JSON Server\n\nLe fichier __db.json__ contient les tâches (stockage local). \n```sh\nnpm npx json-server --watch db.json --port 3000\n```\n\n➡️ L’API sera disponible à l’adresse :\n-   `GET http://localhost:3000/tasks`\n-   `POST http://localhost:3000/tasks`\n-   `DELETE http://localhost:3000/tasks/:id`\n\n### 4️⃣ Lancer l’application Angular\n```sh\nng serve\n```\n\n➡️ Ouvrir dans le navigateur 👉 [http://localhost:4200](http://localhost:4200)\n\n## 📂 Structure du projet\n```bash\n/todoapp\n├── /src\n│   ├── /app\n│   │   ├── /components\n│   │   │   ├── /about\n│   │   │   ├── /add-task\n│   │   │   ├── /button\n│   │   │   ├── /header\n│   │   │   ├── /task-item\n│   │   │   └── /tasks\n│   │   ├── /services\n│   │   ├── app.config.ts\n│   │   ├── app.css\n│   │   ├── app.html\n│   │   ├── app.routes.ts\n│   │   ├── app.spec.ts\n│   │   ├── app.ts\n│   │   └── Tasks.ts      # Interface de la structure d'une tâche\n│   ├── index.html\n│   ├── main.ts\n│   └── styles.css\n├── angular.json\n├── db.json               # Base de données locale (JSON Server)\n├── package.json\n├── README.md\n├── tsconfig.app.json\n├── tsconfig.json\n└── tsconfig.spec.json\n```\n\n---\n\n## 🎨 Aperçu de l'Interface\n![Interface](./public/apercu.png \"Interface de l'application\")\n\n---\n\n## 📊 Exemple d’Utilisation\n\n1.  Ajout d’une tâche avec un titre\n2.  Persistance de la tâche dans `db.json` via **JSON Server**\n3.  Suppression d’une tâche → mise à jour en base locale\n\n----------\n\n## 🔮 Améliorations Futures\n\n\u003e [!NOTE]\n\u003e \n\u003e -   Ajouter la modification d’une tâche (PUT / PATCH)\n\u003e -   Ajouter un filtre pour les tâches terminées / en cours\n\u003e -   Persister les données dans une vraie base (ex: MySQL, MongoDB)\n\u003e -   Déployer une version en ligne (Netlify / Vercel + API hébergée)\n\u003e -   Ajouter **TailwindCSS** pour une site bien responsive\n\u003e     \n----------\n\n## Auteur\n**Johan Alain**\n\n[GitHub](https://github.com/johanalain11/)\n\n## 📜 Licence\n\nCe projet est sous licence MIT.\n\n----------\n\n✨ **N’hésite pas à contribuer !**  \n💡 **Suggestions et retours sont les bienvenus !** 😊  \n📩 **Contact :** [LinkedIn](www.linkedin.com/in/johanalain11) | Email [jank092016@gmail.com](mailto:jank092016@gmail.com)\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjohanalain11%2Ftodoapp-angular","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjohanalain11%2Ftodoapp-angular","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjohanalain11%2Ftodoapp-angular/lists"}