Skip to content

Commit 1fed48e

Browse files
authored
📝 docs(readme): enhance project documentation
1 parent 83d2acf commit 1fed48e

1 file changed

Lines changed: 183 additions & 59 deletions

File tree

README.md

Lines changed: 183 additions & 59 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,74 @@
1-
# 🚀 Angular LocalStorage Service
1+
<h1 align="center">🗄️ Angular LocalStorage Service</h1>
22

3-
Aplicación desarrollada en **Angular 16** que implementa un servicio reutilizable para manejar LocalStorage mediante prefijos configurables y pipes personalizadas.
3+
<p align="center">
4+
<img src="https://img.shields.io/badge/Angular-16-DD0031?logo=angular&logoColor=white" alt="Angular" />
5+
<img src="https://img.shields.io/badge/TypeScript-5.x-3178C6?logo=typescript&logoColor=white" alt="TypeScript" />
6+
<img src="https://img.shields.io/badge/LocalStorage-Service-4285F4?logo=googlechrome&logoColor=white" alt="LocalStorage Service" />
7+
<img src="https://img.shields.io/badge/Status-Completed-brightgreen" alt="Completed" />
8+
</p>
49

5-
El proyecto encapsula operaciones de almacenamiento para evitar acceso directo a `localStorage`.
10+
<p align="center">
11+
<a href="https://github.com/alobuuls/angular-localstorage-service" target="_blank"><img src="https://img.shields.io/badge/GitHub-Repository-181717?logo=github&logoColor=white" alt="Repository" /></a>
12+
<a href="https://github.com/alobuuls/angular-localstorage-service/stargazers" target="_blank"><img src="https://img.shields.io/github/stars/alobuuls/angular-localstorage-service?style=social" alt="GitHub Stars" /></a>
13+
<a href="https://github.com/alobuuls/angular-localstorage-service/commits/main" target="_blank"><img src="https://img.shields.io/github/last-commit/alobuuls/angular-localstorage-service" alt="Last Commit" /></a>
14+
</p>
615

716
---
817

9-
## ⚙️ Requisitos del sistema
18+
## 📑 Table of Contents
1019

11-
Antes de ejecutar el proyecto, asegúrate de tener instalado:
20+
* [🗄️ Angular LocalStorage Service](#️-angular-localstorage-service)
1221

13-
- 📦 **Node.js:** `v18+` *(preferiblemente v18.10.0)*
14-
- 📦 **npm:** `v9+`
22+
* [🌐 Live Demo](#-live-demo)
23+
* [📖 Description](#-description)
24+
* [⚙️ System Requirements](#️-system-requirements)
25+
* [🚀 Project Installation](#-project-installation)
26+
* [▶️ Run the Project](#️-run-the-project)
27+
* [🧠 Project Architecture](#-project-architecture)
28+
* [✨ Features](#-features)
29+
* [🛠 Technologies Used](#-technologies-used)
30+
* [📁 Project Structure](#-project-structure)
31+
* [🔥 Best Practices Implemented](#-best-practices-implemented)
32+
* [🎯 Project Goal](#-project-goal)
33+
* [📄 License](#-license)
34+
35+
---
36+
37+
## 🌐 Live Demo
38+
39+
🔗 https://alobuuls.github.io/angular-localstorage-service/
40+
41+
---
42+
43+
## 📖 Description
44+
45+
> [!NOTE]
46+
> An Angular 16 application that implements a reusable LocalStorage service with configurable key prefixes and custom pipes.
47+
48+
The project demonstrates how to encapsulate browser storage operations behind reusable Angular services and modules, avoiding direct access to the Local Storage API while improving maintainability, scalability, and code organization.
49+
50+
---
51+
52+
## ⚙️ System Requirements
53+
54+
Before running the project, make sure you have installed:
55+
56+
- 📦 **Node.js:** `v16.14.x – v18.x` *(recommended: v18 LTS)*
57+
- 📦 **npm:** `v8+`
1558
- 🅰️ **Angular CLI:** `v16.x`
1659

60+
## Recommended using nvm
61+
62+
```bash
63+
nvm install 18
64+
nvm use 18
65+
```
66+
1767
---
1868

19-
## 🔍 Verificar versiones instaladas
69+
## 🔍 Verify Installed Versions
2070

21-
Ejecuta:
71+
Run the following commands in your terminal:
2272

2373
```bash
2474
node -v
@@ -28,107 +78,181 @@ ng version
2878

2979
---
3080

31-
## 🚀 Instalación del proyecto
81+
## 🚀 Project Installation
3282

33-
### 1️⃣ Clonar repositorio
83+
### 1️⃣ Clone the repository
3484

3585
```bash
36-
git clone <URL_DEL_REPO>
86+
git clone git@github.com:alobuuls/angular-localstorage-service.git
87+
3788
cd angular-localstorage-service
3889
```
3990

40-
### 2️⃣ Instalar dependencias
91+
### 2️⃣ Install dependencies
4192

4293
```bash
4394
npm install
4495
```
4596

4697
---
4798

48-
## ▶️ Ejecutar proyecto
99+
## ▶️ Run the Project
100+
101+
Start the development server:
49102

50103
```bash
51104
ng serve
52105
```
53106

54-
Luego abre:
107+
Then open:
55108

56-
```bash
109+
```text
57110
http://localhost:4200
58111
```
59112

60113
---
61114

62-
## 🧠 Arquitectura del proyecto
115+
## 🧠 Project Architecture
63116

64-
El proyecto centraliza acceso a LocalStorage usando un servicio compartido.
117+
The application follows a reusable architecture based on Angular services, modules, and custom pipes.
65118

66-
### 📦 LocalstorageService
119+
### 🗄️ LocalStorage Service
67120

68-
Permite:
121+
Responsible for:
69122

70-
- Guardar valores
71-
- Obtener valores
72-
- Limpiar storage
73-
- Configurar prefijos
74-
- Evitar colisiones entre claves
123+
* Saving values into Local Storage
124+
* Retrieving stored values
125+
* Removing stored values
126+
* Managing configurable prefixes
127+
* Preventing key collisions
75128

76-
---
129+
### 🔄 LocalStorage Pipe
77130

78-
## 📦 LocalstoragePipe
131+
Responsible for:
79132

80-
Pipe personalizada para obtener valores almacenados directamente desde templates:
133+
* Reading Local Storage values from templates
134+
* Simplifying UI integration
135+
* Improving template readability
136+
137+
Example:
81138

82139
```html
83-
{{ 'clave1' | localstorage }}
140+
{{ 'userName' | localstorage }}
84141
```
85142

86-
---
143+
### 📦 LocalStorage Module
87144

88-
## ⚙️ Funcionalidades principales
145+
Responsible for:
89146

90-
- 💾 Guardar información en LocalStorage
91-
- 🔍 Obtener datos mediante pipe
92-
- 🧹 Limpiar almacenamiento por prefijo
93-
- ⚙️ Configuración inicial con APP_INITIALIZER
94-
- 🧩 Servicio reutilizable
147+
* Centralizing storage configuration
148+
* Registering providers
149+
* Initializing storage settings
150+
151+
### 🏠 App Component
152+
153+
Responsible for:
154+
155+
* Demonstrating storage operations
156+
* Consuming the storage service
157+
* Testing persistence functionality
95158

96159
---
97160

98-
## 🛠️ Tecnologías utilizadas
161+
## ✨ Features
99162

100-
- 🅰️ Angular 16
101-
- ⚡ TypeScript
102-
- 🧠 Angular Pipes
103-
- 💾 Browser LocalStorage API
104-
- 🔧 APP_INITIALIZER
163+
* 💾 Store data in Local Storage
164+
* 🔍 Retrieve values through a custom pipe
165+
* 🧹 Clear storage by prefix
166+
* ⚙️ Configurable key prefixes
167+
* 📦 Reusable LocalStorage Service
168+
* 🔄 Custom Angular Pipe
169+
* 🚀 APP_INITIALIZER Configuration
170+
* ♻️ Encapsulated Browser Storage Access
105171

106172
---
107173

108-
## 📁 Estructura del proyecto
174+
## 🛠 Technologies Used
109175

110-
```bash
111-
src/app/
112-
├── localstorage/
113-
│ └── localstorage.module.ts
114-
├── localstorage.pipe.ts
115-
├── localstorage.service.ts
116-
├── app.module.ts
117-
├── app.component.ts
176+
| Technology | Purpose |
177+
|------------|---------|
178+
| Angular 16 | Front-End Framework |
179+
| TypeScript | Application Logic |
180+
| Local Storage API | Browser Persistence |
181+
| Angular Services | Business Logic |
182+
| Angular Pipes | Template Data Access |
183+
| Angular Modules | Feature Organization |
184+
| APP_INITIALIZER | Application Bootstrap Configuration |
185+
186+
---
187+
188+
## 📁 Project Structure
189+
190+
```text
191+
angular-localstorage-service/
192+
193+
├── src/
194+
195+
├── app/
196+
│ ├── localstorage/
197+
│ │ └── localstorage.module.ts
198+
│ │
199+
│ ├── localstorage.service.ts
200+
│ ├── localstorage.pipe.ts
201+
│ │
202+
│ ├── app.component.ts
203+
│ ├── app.component.html
204+
│ ├── app.component.css
205+
│ └── app.module.ts
206+
207+
├── main.ts
208+
├── styles.css
209+
├── index.html
210+
211+
├── angular.json
212+
├── package.json
213+
├── tsconfig.json
214+
└── README.md
118215
```
119216

120217
---
121218

122-
## 🔥 Buenas prácticas implementadas
219+
## 🔥 Best Practices Implemented
123220

124-
- Encapsulación del acceso a LocalStorage
125-
- Configuración inicial con APP_INITIALIZER
126-
- Reutilización mediante servicios
127-
- Separación de responsabilidades
128-
- Uso de pipes personalizadas
221+
* Service-based Architecture
222+
* Separation of Concerns
223+
* Encapsulation of Browser APIs
224+
* Dependency Injection
225+
* APP_INITIALIZER Configuration
226+
* Reusable Angular Modules
227+
* Custom Pipes
228+
* Strong Typing with TypeScript
229+
* Centralized Storage Management
230+
* Clean Project Organization
231+
* Scalable Front-End Design
129232

130233
---
131234

132-
## 📄 Licencia
235+
## 🎯 Project Goal
236+
237+
Practice and strengthen Angular architecture concepts through the implementation of a reusable LocalStorage abstraction layer.
238+
239+
Key concepts covered:
240+
241+
* Angular Services
242+
* Angular Pipes
243+
* Angular Modules
244+
* APP_INITIALIZER
245+
* Local Storage API
246+
* Dependency Injection
247+
* Browser Data Persistence
248+
* Reusable Architecture Patterns
249+
* TypeScript Best Practices
250+
* Front-End Application Design
251+
252+
---
253+
254+
## 📄 License
255+
256+
This project is intended for educational and portfolio purposes.
133257

134-
Este proyecto es de uso educativo y forma parte de un portafolio personal.
258+
Created by **Alondra Francisco**.

0 commit comments

Comments
 (0)