Skip to content

Commit e5091fa

Browse files
committed
docs(README): enhance project description and update features, installation, and architecture sections
1 parent 5bbff3c commit e5091fa

1 file changed

Lines changed: 97 additions & 16 deletions

File tree

README.md

Lines changed: 97 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,47 +1,128 @@
11
# UtilPlex - Developer Utilities
22

3-
UtilPlex is a collection of utility tools for developers, designed to simplify common tasks in the development workflow. This Angular-based website offers features such as JSON to YAML conversion and SQL/JSON formatters.
3+
UtilPlex is a modern Angular 20.x web application providing essential developer utilities for code formatting, data conversion, encoding, and time zone management. Built with standalone components, signals, and server-side rendering (SSR), UtilPlex offers a comprehensive suite of tools to streamline your development workflow.
44

5-
# Live Version
5+
## 🌐 Live Version
66
[https://www.utilplex.com](https://www.utilplex.com)
77

88
## Table of Contents
99

1010
- [UtilPlex - Developer Utilities](#utilplex---developer-utilities)
11-
- [Live Version](#live-version)
11+
- [🌐 Live Version](#-live-version)
1212
- [Table of Contents](#table-of-contents)
1313
- [Features](#features)
14+
- [Code Formatters](#code-formatters)
15+
- [Data Converters](#data-converters)
16+
- [Encoders/Decoders](#encodersdecoders)
17+
- [Content Generators](#content-generators)
18+
- [Time Zone Tools](#time-zone-tools)
1419
- [Getting Started](#getting-started)
1520
- [Prerequisites](#prerequisites)
1621
- [Installation](#installation)
22+
- [Development](#development)
23+
- [Available Commands](#available-commands)
24+
- [Project Structure](#project-structure)
25+
- [Architecture](#architecture)
26+
- [Key Design Patterns](#key-design-patterns)
1727
- [License](#license)
1828

1929
## Features
2030

21-
UtilPlex provides the following features:
31+
### Code Formatters
32+
- **SQL Formatter** - Beautify SQL queries with proper indentation and formatting
33+
- **JSON Formatter** - Format and minify JSON data with advanced prettification
34+
- **CSS Formatter** - Clean and organize CSS code with professional formatting
35+
- **JavaScript Formatter** - Beautify JavaScript code with modern syntax support
2236

23-
- **JSON to YAML Conversion:** Easily convert JSON data to YAML format.
24-
- **SQL Formatter:** Format SQL queries for better readability.
25-
- **JSON Formatter:** Format JSON data with proper indentation and line breaks.
26-
- **Javascript Formatter:** Format Javascript for better readability.
27-
- **Time Zone Conversion:** Convert time from one time zone to another.
37+
### Data Converters
38+
- **JSON to YAML Converter** - Convert JSON data to YAML format while preserving structure
39+
40+
### Encoders/Decoders
41+
- **Base64 Encoder/Decoder** - Encode and decode data in Base64 format with ASCII/UTF-8 support
42+
43+
### Content Generators
44+
- **GUID Generator** - Generate UUIDs with multiple format options (standard, compact, uppercase)
45+
- **Lorem Ipsum Generator** - Create placeholder text with customizable word, sentence, or paragraph output
46+
47+
### Time Zone Tools
48+
- **Time Zone Converter** - Convert times between global time zones with daylight saving awareness
49+
50+
All tools feature:
51+
- Monaco Editor integration with syntax highlighting
52+
- Custom Dracula theme for optimal readability
53+
- Copy/paste functionality
54+
- Responsive design for mobile compatibility
55+
- Comprehensive error handling
2856

2957
## Getting Started
3058

3159
### Prerequisites
3260

33-
Before you can use UtilPlex, make sure you have the following prerequisites installed on your system:
34-
35-
- [Node.js](https://nodejs.org/) (v14 or higher)
36-
- [Angular CLI](https://angular.io/cli) (v12 or higher)
61+
- [Node.js](https://nodejs.org/) (v20 or higher)
62+
- [Angular CLI](https://angular.io/cli) (v19 or higher)
63+
- npm or yarn package manager
3764

3865
### Installation
3966

40-
1. Clone the UtilPlex repository to your local machine:
41-
67+
1. Clone the UtilPlex repository:
4268
```bash
4369
git clone https://github.com/timothydodd/utilplex.git
70+
cd utilplex
71+
```
72+
73+
2. Install dependencies:
74+
```bash
75+
npm install
76+
```
77+
78+
3. Start the development server:
79+
```bash
80+
npm start
81+
```
82+
83+
4. Open your browser and navigate to `http://localhost:4200`
4484

85+
## Development
86+
87+
### Available Commands
88+
89+
- `npm start` - Start development server
90+
- `npm run build` - Production build
91+
- `npm run build:ci` - CI production build
92+
- `npm test` - Run unit tests
93+
- `npm run lint` - Run ESLint
94+
- `npm run serve:ssr:utilplex` - Serve SSR build
95+
96+
### Project Structure
97+
98+
```
99+
src/app/
100+
├── _services/ # Global services and routing
101+
├── formatters/ # Code formatting utilities
102+
├── converters/ # Data conversion tools
103+
├── encoders/ # Encoding/decoding tools
104+
├── generators/ # Content generation utilities
105+
├── time/ # Time zone tools
106+
├── monaco/ # Monaco editor configuration
107+
└── components/ # Shared UI components
108+
```
109+
110+
## Architecture
111+
112+
UtilPlex uses a modern Angular architecture with:
113+
114+
- **Service Provider Pattern** - Abstract base classes with concrete implementations
115+
- **Signal-Based State Management** - Modern reactive state management
116+
- **Standalone Components** - No NgModule dependencies
117+
- **Dynamic Routing** - Centralized route management with lazy loading
118+
- **SSR Support** - Server-side rendering for optimal performance
119+
120+
### Key Design Patterns
121+
122+
- **Formatters**: `FormatViewService` (abstract) → `SqlFormatProvider`, `JsonFormatProvider`
123+
- **Converters**: `ConverterServiceBase` (abstract) → `JsonToYamlConverter`
124+
- **Generic Views**: Reusable components that work with any service implementation
45125

46126
## License
47-
This project is licensed under the MIT License.
127+
128+
This project is licensed under the MIT License.

0 commit comments

Comments
 (0)