harshadh01 commited on
Commit
a1ef67c
Β·
verified Β·
1 Parent(s): 03d8c2d

Update README.md

Browse files
Files changed (1) hide show
  1. README.md +217 -207
README.md CHANGED
@@ -1,207 +1,217 @@
1
-
2
- # πŸ€– AI REST API Generator
3
-
4
- **AI REST API Generator** is a developer-focused tool that automatically generates **Django REST Framework backends** using AI or manual configuration.
5
- It converts high-level requirements into a fully structured, runnable Django project with CRUD APIs, serializers, views, URLs, and settings.
6
-
7
- 🚧 **Status:** Under active development
8
- πŸ“§ **Contact:** [harshadhole04@gmail.com](mailto:harshadhole04@gmail.com)
9
-
10
- ---
11
-
12
- ## ✨ Features
13
-
14
- * ⚑ **AI-Powered Backend Generation**
15
-
16
- * Generate Django REST APIs from natural language prompts
17
- * Automatically infers models, fields, and relationships
18
-
19
- * 🧱 **Manual Model Builder**
20
-
21
- * Define models, fields, relationships (One-to-One, One-to-Many)
22
- * Full control without AI if preferred
23
-
24
- * 🧩 **Schema-Driven Architecture**
25
-
26
- * JSON Schema validation before code generation
27
- * Auto-fixes common schema issues safely
28
-
29
- * πŸ“¦ **Complete Django Project Output**
30
-
31
- * Models, serializers, views, URLs
32
- * JWT authentication support
33
- * Database configuration (SQLite / PostgreSQL)
34
- * Static & media configuration
35
-
36
- * πŸ“₯ **One-Click Download**
37
-
38
- * Generated backend is zipped and ready to run
39
-
40
- * 🧠 **Pluggable LLM Support**
41
-
42
- * OpenAI
43
- * Groq
44
- * Easy to extend for other providers
45
-
46
- ---
47
-
48
- ## πŸ—οΈ Architecture Overview
49
-
50
- ```
51
- Streamlit UI
52
- ↓
53
- Pipeline Orchestrator
54
- ↓
55
- LLM (Model Prompt / Spec Generation)
56
- ↓
57
- Schema Validation (JSON Schema)
58
- ↓
59
- Django Code Generator
60
- ↓
61
- Ready-to-run Django REST Project
62
- ```
63
-
64
- ---
65
-
66
- ## πŸš€ How It Works
67
-
68
- 1. **Input**
69
-
70
- * Project name & description
71
- * Choose AI-generated models or manual models
72
- * Select database and authentication
73
- * Provide LLM provider and API key
74
-
75
- 2. **Validation**
76
-
77
- * Generated spec is validated against a strict JSON schema
78
- * Automatic normalization and safe fixes applied
79
-
80
- 3. **Generation**
81
-
82
- * Django project is created in an isolated run directory
83
- * Apps, models, serializers, views, URLs, settings generated
84
-
85
- 4. **Output**
86
-
87
- * Project is zipped
88
- * Download instantly from the UI
89
-
90
- ---
91
-
92
- ## πŸ–₯️ Running Locally
93
-
94
- ### 1️⃣ Clone the Repository
95
-
96
- ```bash
97
- git clone https://github.com/harshadSH/ai-rest-api-generator.git
98
- cd ai-rest-api-generator
99
- ```
100
-
101
- ### 2️⃣ Create Virtual Environment
102
-
103
- ```bash
104
- python -m venv venv
105
- source venv/bin/activate # Windows: venv\Scripts\activate
106
- ```
107
-
108
- ### 3️⃣ Install Dependencies
109
-
110
- ```bash
111
- pip install -r requirements.txt
112
- ```
113
-
114
- ### 4️⃣ Run the Streamlit App
115
-
116
- ```bash
117
- streamlit run app.py
118
- ```
119
-
120
- ---
121
-
122
- ## πŸ“‚ Generated Project Structure
123
-
124
- ```
125
- project_name/
126
- β”œβ”€β”€ manage.py
127
- β”œβ”€β”€ project_name/
128
- β”‚ β”œβ”€β”€ settings.py
129
- β”‚ β”œβ”€β”€ urls.py
130
- β”‚ └── wsgi.py
131
- β”œβ”€β”€ core/
132
- β”‚ β”œβ”€β”€ models.py
133
- β”‚ β”œβ”€β”€ serializers.py
134
- β”‚ β”œβ”€β”€ views.py
135
- β”‚ β”œβ”€β”€ urls.py
136
- β”‚ └── admin.py
137
- β”œβ”€β”€ requirements.txt
138
- └── README.md
139
- ```
140
-
141
- ---
142
-
143
- ## πŸ›‘οΈ Authentication
144
-
145
- * Supports **JWT Authentication**
146
- * All CRUD endpoints can be protected
147
- * Easily extendable to session-based auth
148
-
149
- ---
150
-
151
- ## πŸ§ͺ Validation & Reliability
152
-
153
- * Strict JSON Schema enforcement
154
- * Deterministic naming conventions
155
- * Auto-correction of:
156
-
157
- * Database engine names
158
- * Model and field naming
159
- * Missing required fields
160
- * Prevents invalid or unsafe Django code generation
161
-
162
- ---
163
-
164
- ## 🌍 Deployment
165
-
166
- This project is suitable for:
167
-
168
- * Local development
169
- * Docker-based deployment
170
- * Cloud hosting (AWS, Azure, GCP, Railway, Render)
171
-
172
- ⚠️ Note: Production hardening (rate limiting, monitoring, secrets management) should be added as per deployment needs.
173
-
174
- ---
175
-
176
- ## πŸ“œ License
177
-
178
- This project is licensed under the **MIT License**.
179
- You are free to use, modify, and distribute it with attribution.
180
-
181
- ---
182
-
183
- ## πŸ‘¨β€πŸ’» Author
184
-
185
- **Harshad Hole**
186
- Bachelor of Engineering – Artificial Intelligence & Data Science
187
- πŸ“§ Email: **[harshadhole04@gmail.com](mailto:harshadhole04@gmail.com)**
188
-
189
- ---
190
-
191
- ## ⭐ Why This Project Matters
192
-
193
- * Solves repetitive backend boilerplate
194
- * Demonstrates real-world use of LLMs in software engineering
195
- * Combines AI + validation + deterministic code generation
196
- * Strong portfolio-grade project for AI / Backend / Full-Stack roles
197
-
198
- ---
199
-
200
- If you want, I can also:
201
-
202
- * Write a **β€œProject Motivation”** section
203
- * Optimize README for **Hugging Face Spaces**
204
- * Add badges (Python, Django, MIT, AI)
205
- * Review it from a recruiter’s perspective
206
-
207
- Just tell me πŸ‘
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ title: AI REST API Generator
3
+ emoji: πŸ€–
4
+ colorFrom: blue
5
+ colorTo: purple
6
+ sdk: docker
7
+ app_port: 7860
8
+ pinned: false
9
+ license: mit
10
+ ---
11
+
12
+ # πŸ€– AI REST API Generator
13
+
14
+ **AI REST API Generator** is a developer-focused tool that automatically generates **Django REST Framework backends** using AI or manual configuration.
15
+ It converts high-level requirements into a fully structured, runnable Django project with CRUD APIs, serializers, views, URLs, and settings.
16
+
17
+ 🚧 **Status:** Under active development
18
+ πŸ“§ **Contact:** [harshadhole04@gmail.com](mailto:harshadhole04@gmail.com)
19
+
20
+ ---
21
+
22
+ ## ✨ Features
23
+
24
+ * ⚑ **AI-Powered Backend Generation**
25
+
26
+ * Generate Django REST APIs from natural language prompts
27
+ * Automatically infers models, fields, and relationships
28
+
29
+ * 🧱 **Manual Model Builder**
30
+
31
+ * Define models, fields, relationships (One-to-One, One-to-Many)
32
+ * Full control without AI if preferred
33
+
34
+ * 🧩 **Schema-Driven Architecture**
35
+
36
+ * JSON Schema validation before code generation
37
+ * Auto-fixes common schema issues safely
38
+
39
+ * πŸ“¦ **Complete Django Project Output**
40
+
41
+ * Models, serializers, views, URLs
42
+ * JWT authentication support
43
+ * Database configuration (SQLite / PostgreSQL)
44
+ * Static & media configuration
45
+
46
+ * πŸ“₯ **One-Click Download**
47
+
48
+ * Generated backend is zipped and ready to run
49
+
50
+ * 🧠 **Pluggable LLM Support**
51
+
52
+ * OpenAI
53
+ * Groq
54
+ * Easy to extend for other providers
55
+
56
+ ---
57
+
58
+ ## πŸ—οΈ Architecture Overview
59
+
60
+ ```
61
+ Streamlit UI
62
+ ↓
63
+ Pipeline Orchestrator
64
+ ↓
65
+ LLM (Model Prompt / Spec Generation)
66
+ ↓
67
+ Schema Validation (JSON Schema)
68
+ ↓
69
+ Django Code Generator
70
+ ↓
71
+ Ready-to-run Django REST Project
72
+ ```
73
+
74
+ ---
75
+
76
+ ## πŸš€ How It Works
77
+
78
+ 1. **Input**
79
+
80
+ * Project name & description
81
+ * Choose AI-generated models or manual models
82
+ * Select database and authentication
83
+ * Provide LLM provider and API key
84
+
85
+ 2. **Validation**
86
+
87
+ * Generated spec is validated against a strict JSON schema
88
+ * Automatic normalization and safe fixes applied
89
+
90
+ 3. **Generation**
91
+
92
+ * Django project is created in an isolated run directory
93
+ * Apps, models, serializers, views, URLs, settings generated
94
+
95
+ 4. **Output**
96
+
97
+ * Project is zipped
98
+ * Download instantly from the UI
99
+
100
+ ---
101
+
102
+ ## πŸ–₯️ Running Locally
103
+
104
+ ### 1️⃣ Clone the Repository
105
+
106
+ ```bash
107
+ git clone https://github.com/harshadSH/ai-rest-api-generator.git
108
+ cd ai-rest-api-generator
109
+ ```
110
+
111
+ ### 2️⃣ Create Virtual Environment
112
+
113
+ ```bash
114
+ python -m venv venv
115
+ source venv/bin/activate # Windows: venv\Scripts\activate
116
+ ```
117
+
118
+ ### 3️⃣ Install Dependencies
119
+
120
+ ```bash
121
+ pip install -r requirements.txt
122
+ ```
123
+
124
+ ### 4️⃣ Run the Streamlit App
125
+
126
+ ```bash
127
+ streamlit run app.py
128
+ ```
129
+
130
+ ---
131
+
132
+ ## πŸ“‚ Generated Project Structure
133
+
134
+ ```
135
+ project_name/
136
+ β”œβ”€β”€ manage.py
137
+ β”œβ”€β”€ project_name/
138
+ β”‚ β”œβ”€β”€ settings.py
139
+ β”‚ β”œβ”€β”€ urls.py
140
+ β”‚ └── wsgi.py
141
+ β”œβ”€β”€ core/
142
+ β”‚ β”œβ”€β”€ models.py
143
+ β”‚ β”œβ”€β”€ serializers.py
144
+ β”‚ β”œβ”€β”€ views.py
145
+ β”‚ β”œβ”€β”€ urls.py
146
+ β”‚ └── admin.py
147
+ β”œβ”€β”€ requirements.txt
148
+ └── README.md
149
+ ```
150
+
151
+ ---
152
+
153
+ ## πŸ›‘οΈ Authentication
154
+
155
+ * Supports **JWT Authentication**
156
+ * All CRUD endpoints can be protected
157
+ * Easily extendable to session-based auth
158
+
159
+ ---
160
+
161
+ ## πŸ§ͺ Validation & Reliability
162
+
163
+ * Strict JSON Schema enforcement
164
+ * Deterministic naming conventions
165
+ * Auto-correction of:
166
+
167
+ * Database engine names
168
+ * Model and field naming
169
+ * Missing required fields
170
+ * Prevents invalid or unsafe Django code generation
171
+
172
+ ---
173
+
174
+ ## 🌍 Deployment
175
+
176
+ This project is suitable for:
177
+
178
+ * Local development
179
+ * Docker-based deployment
180
+ * Cloud hosting (AWS, Azure, GCP, Railway, Render)
181
+
182
+ ⚠️ Note: Production hardening (rate limiting, monitoring, secrets management) should be added as per deployment needs.
183
+
184
+ ---
185
+
186
+ ## πŸ“œ License
187
+
188
+ This project is licensed under the **MIT License**.
189
+ You are free to use, modify, and distribute it with attribution.
190
+
191
+ ---
192
+
193
+ ## πŸ‘¨β€πŸ’» Author
194
+
195
+ **Harshad Hole**
196
+ Bachelor of Engineering – Artificial Intelligence & Data Science
197
+ πŸ“§ Email: **[harshadhole04@gmail.com](mailto:harshadhole04@gmail.com)**
198
+
199
+ ---
200
+
201
+ ## ⭐ Why This Project Matters
202
+
203
+ * Solves repetitive backend boilerplate
204
+ * Demonstrates real-world use of LLMs in software engineering
205
+ * Combines AI + validation + deterministic code generation
206
+ * Strong portfolio-grade project for AI / Backend / Full-Stack roles
207
+
208
+ ---
209
+
210
+ If you want, I can also:
211
+
212
+ * Write a **β€œProject Motivation”** section
213
+ * Optimize README for **Hugging Face Spaces**
214
+ * Add badges (Python, Django, MIT, AI)
215
+ * Review it from a recruiter’s perspective
216
+
217
+ Just tell me πŸ‘