22
33Jazzy is a lightweight web framework for Java. It provides a minimal and easy-to-understand API for developing fast web applications with a structure inspired by Laravel and Spring Boot.
44
5- ## 🚀 Latest Updates (v0.3 .0)
5+ ## 🚀 Latest Updates (v0.4 .0)
66
7- ** NEW: Database Integration & ORM System !**
7+ ** NEW: Auto-CRUD System with Zero Boilerplate !**
88
9- Jazzy Framework 0.3 introduces comprehensive database integration with Spring Data JPA-like features :
9+ Jazzy Framework 0.4 introduces revolutionary auto-CRUD capabilities that generate complete REST APIs with just annotations :
1010
11- - 🗄️ ** Hibernate Integration ** : Full JPA/Hibernate support with automatic configuration
12- - 🔍 ** Spring Data JPA-like Repositories ** : Automatic query generation from method names
13- - 📝 ** Custom Query Support** : @ Query annotation for HQL/JPQL and native SQL
14- - 🔄 ** Transaction Management ** : Automatic transaction handling
15- - 🏗️ ** Entity Management ** : Automatic entity discovery and configuration
16- - 📊 ** Connection Pooling ** : HikariCP integration for production-ready performance
17- - 🎯 ** Method Name Parsing ** : ` findByEmail ` , ` countByActive ` , ` existsByName ` etc.
18- - ⚡ ** Performance Optimized ** : Database-level filtering instead of memory operations
11+ - 🎯 ** @ Crud Annotation ** : Automatically generates all CRUD endpoints (GET, POST, PUT, DELETE)
12+ - 🔍 ** Smart Search ** : Built-in search functionality with configurable fields
13+ - 📊 ** Pagination Support** : Automatic pagination with customizable page sizes
14+ - 🔄 ** Batch Operations ** : Support for bulk create, update, delete operations
15+ - 🎨 ** Method Override ** : Custom logic with @ CrudOverride annotation
16+ - 📝 ** Standardized Responses ** : Consistent API response format with ApiResponse
17+ - ⚡ ** Zero Configuration ** : Complete REST API with 3 lines of code
18+ - 🔧 ** Highly Configurable ** : Fine-tune behavior with comprehensive options
1919
2020## Version History
2121
2222| Version | Release Date | Key Features |
2323| ---------| -------------| --------------|
24+ | ** 0.4.0** | 2025 | 🆕 ** Auto-CRUD System** - @Crud annotation, zero-boilerplate REST APIs, automatic endpoint generation, search & pagination |
2425| ** 0.3.0** | 2025 | 🆕 ** Database Integration** - Hibernate/JPA, Spring Data JPA-like repositories, automatic query generation, transaction management |
2526| ** 0.2.0** | 2025 | 🆕 ** Dependency Injection System** , Spring-like annotations, automatic component discovery, lifecycle management |
2627| ** 0.1.0** | 2025 | Core framework with routing, request/response handling, JSON utilities, validation system, metrics |
@@ -29,7 +30,7 @@ Jazzy Framework 0.3 introduces comprehensive database integration with Spring Da
2930
3031| Planned Version | Features |
3132| ----------------| ----------|
32- | ** 0.4 .0** | 🔐 ** Security & Authentication** - JWT support, role-based access control, security filters |
33+ | ** 0.5 .0** | 🔐 ** Security & Authentication** - JWT support, role-based access control, security filters |
3334
3435## Features
3536
@@ -59,8 +60,81 @@ Jazzy Framework 0.3 introduces comprehensive database integration with Spring Da
5960- ** Entity Discovery** : Automatic entity scanning and configuration
6061- ** Connection Pooling** : HikariCP for production-ready database connections
6162
63+ ### Auto-CRUD System (v0.4+)
64+ - ** @Crud Annotation** : Automatically generates complete REST APIs with zero boilerplate
65+ - ** Instant Endpoints** : GET, POST, PUT, DELETE endpoints created automatically
66+ - ** Smart Search** : Built-in search functionality with configurable searchable fields
67+ - ** Pagination Support** : Automatic pagination with customizable page sizes and limits
68+ - ** Batch Operations** : Bulk create, update, delete operations for performance
69+ - ** Method Override** : Custom business logic with @CrudOverride annotation
70+ - ** Standardized Responses** : Consistent ApiResponse format across all endpoints
71+ - ** Highly Configurable** : Fine-tune behavior with extensive configuration options
72+ - ** Validation Integration** : Built-in input validation for create/update operations
73+ - ** Audit Logging** : Optional audit trail for all CRUD operations
74+
6275## Quick Start
6376
77+ ### Auto-CRUD Application (v0.4 style) - Recommended
78+
79+ ``` java
80+ // 1. Entity
81+ @Entity
82+ @Table (name = " products" )
83+ public class Product {
84+ @Id
85+ @GeneratedValue (strategy = GenerationType . IDENTITY )
86+ private Long id;
87+
88+ private String name;
89+ private String description;
90+ private Double price;
91+ private Integer stock;
92+
93+ // getters and setters...
94+ }
95+
96+ // 2. Repository
97+ @Component
98+ public interface ProductRepository extends BaseRepository<Product , Long > {
99+ // Framework handles all basic operations automatically
100+ }
101+
102+ // 3. Controller - That's it! Full REST API with 3 lines!
103+ @Component
104+ @Crud (
105+ entity = Product . class,
106+ endpoint = " /api/products" ,
107+ enablePagination = true ,
108+ enableSearch = true ,
109+ searchableFields = {" name" , " description" }
110+ )
111+ public class ProductController {
112+ // Instantly get all these endpoints:
113+ // GET /api/products - List all products (with pagination)
114+ // GET /api/products/{id} - Get product by ID
115+ // POST /api/products - Create new product
116+ // PUT /api/products/{id} - Update product
117+ // DELETE /api/products/{id} - Delete product
118+ // GET /api/products/search?name=laptop - Search products
119+ }
120+
121+ // 4. Main Application
122+ public class App {
123+ public static void main (String [] args ) {
124+ Config config = new Config ();
125+ Router router = new Router ();
126+
127+ // No manual route registration needed!
128+ // @Crud annotation handles everything automatically
129+
130+ Server server = new Server (router, config);
131+ server. start(8080 );
132+ }
133+ }
134+ ```
135+
136+ ** 🎉 Result** : You now have a complete REST API with 5+ endpoints, pagination, search, and standardized responses!
137+
64138### Database Application (v0.3 style)
65139
66140``` java
@@ -236,6 +310,9 @@ Complete documentation for Jazzy Framework is available on our GitHub Pages site
236310- [ Repository Pattern] ( https://canermastan.github.io/jazzy-framework/repositories )
237311- [ Query Methods] ( https://canermastan.github.io/jazzy-framework/query-methods )
238312
313+ ** Auto-CRUD System (v0.4+):**
314+ - [ CRUD Operations Guide] ( https://canermastan.github.io/jazzy-framework/crud )
315+
239316## Development
240317
241318Jazzy is developed with Maven. After cloning the project, you can use the following commands:
@@ -255,6 +332,9 @@ mvn exec:java -Dexec.mainClass="examples.di.App"
255332
256333# Run the database example application (v0.3+)
257334mvn exec:java -Dexec.mainClass=" examples.database.DatabaseExampleApp"
335+
336+ # Run the CRUD example application (v0.4+) - RECOMMENDED
337+ mvn exec:java -Dexec.mainClass=" examples.simple_crud.SimpleCrudApp"
258338```
259339
260340## Project Structure
@@ -272,6 +352,7 @@ mvn exec:java -Dexec.mainClass="examples.database.DatabaseExampleApp"
272352 - ` Request.java ` : Request handling
273353 - ` Response.java ` : Response building
274354 - ` ResponseFactory.java ` : Factory for creating responses
355+ - ` ApiResponse.java ` : Standardized API response format (v0.4+)
275356 - ` JSON.java ` : JSON creation utilities
276357 - ` validation/ ` : Validation system
277358- ` di/ ` : Dependency injection system (v0.2+)
@@ -287,13 +368,15 @@ mvn exec:java -Dexec.mainClass="examples.database.DatabaseExampleApp"
287368 - ` HibernateConfig.java ` : Hibernate/JPA configuration
288369 - ` EntityScanner.java ` : Automatic entity discovery
289370 - ` RepositoryScanner.java ` : Repository interface scanning
290- - ` annotations/ ` : Database annotations (@Query , @Modifying , @QueryHint )
371+ - ` CrudProcessor.java ` : Auto-CRUD system processor (v0.4+)
372+ - ` annotations/ ` : Database annotations (@Query , @Modifying , @QueryHint , @Crud , @CrudOverride )
291373- ` controllers/ ` : System controllers
292374 - ` MetricsController.java ` : Metrics reporting
293375- ` examples/ ` : Example applications
294376 - ` basic/ ` : Basic framework usage examples
295377 - ` di/ ` : Dependency injection examples (v0.2+)
296378 - ` database/ ` : Database integration examples (v0.3+)
379+ - ` simple_crud/ ` : Auto-CRUD system examples (v0.4+)
297380
298381## Tests
299382
0 commit comments