Skip to content

Commit cf2ddcd

Browse files
committed
Reorganize README: Move 'Features' section for clarity
1 parent 25a5d87 commit cf2ddcd

File tree

1 file changed

+13
-14
lines changed

1 file changed

+13
-14
lines changed

README.md

Lines changed: 13 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,9 @@ the [RealWorld](https://github.com/gothinkster/realworld) repository.
1616
## Table of Contents
1717

1818
- [Prerequisites](#prerequisites)
19+
- [Features](#features)
1920
- [Project Structure](#project-structure)
2021
- [Database Design](#database-design)
21-
- [Features](#features)
2222
- [Configuration and Environment Variables](#configuration-and-environment-variables)
2323
- [Running the Application](#running-the-application)
2424
- [Testing](#testing)
@@ -31,6 +31,17 @@ the [RealWorld](https://github.com/gothinkster/realworld) repository.
3131

3232
---
3333

34+
## Features
35+
36+
- **CRUD Operations**: Enables create, read, update, and delete functionalities.
37+
- **Authentication & Authorization**: Implements secure user authentication using JWT or similar mechanisms.
38+
- **Routing**: Follows a clean architecture pattern for efficient route management.
39+
- **Pagination & Sorting**: Optimized for handling large datasets.
40+
- **Error Handling**: Centralized error management and logging mechanisms.
41+
- **Testing**: Comprehensive testing includes unit, integration, and end-to-end tests.
42+
43+
---
44+
3445
## Project Structure
3546

3647
The project is structured using a modular architecture, where each module plays a specific role:
@@ -48,24 +59,12 @@ The project is structured using a modular architecture, where each module plays
4859

4960
## **Database Design**
5061

51-
52-
![Schema Diagram](/docs/schema.png)
53-
5462
Since there were no strict requirements regarding the field lengths, arbitrary sizes were chosen. To facilitate the use
5563
of UUIDs for domain IDs, the column was defined as `binary(16)`. Additionally, as MySQL InnoDB manages a clustered index
5664
by default, a dedicated primary key using `int` (4 bytes) was selected to prevent unnecessary expansion of the clustered
5765
index. No extra indexes have been defined at this stage in order to avoid premature optimization.
5866

59-
---
60-
61-
## Features
62-
63-
- **CRUD Operations**: Enables create, read, update, and delete functionalities.
64-
- **Authentication & Authorization**: Implements secure user authentication using JWT or similar mechanisms.
65-
- **Routing**: Follows a clean architecture pattern for efficient route management.
66-
- **Pagination & Sorting**: Optimized for handling large datasets.
67-
- **Error Handling**: Centralized error management and logging mechanisms.
68-
- **Testing**: Comprehensive testing includes unit, integration, and end-to-end tests.
67+
![Schema Diagram](/docs/schema.png)
6968

7069
---
7170

0 commit comments

Comments
 (0)