File size: 8,918 Bytes
f80fc4e
c72875b
 
d03f8e6
 
c72875b
 
12c25d7
cc25c4e
f80fc4e
d03f8e6
12c25d7
daa6ff9
 
b6820e5
f80fc4e
 
15b56c6
f80fc4e
7baf715
f80fc4e
15b56c6
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
f80fc4e
15b56c6
f80fc4e
15b56c6
 
 
 
 
 
 
f80fc4e
15b56c6
f80fc4e
15b56c6
 
 
 
f80fc4e
15b56c6
 
f80fc4e
15b56c6
f80fc4e
15b56c6
 
 
 
521ef46
15b56c6
 
 
 
 
521ef46
15b56c6
521ef46
15b56c6
 
 
 
521ef46
15b56c6
 
 
 
 
f80fc4e
15b56c6
f80fc4e
15b56c6
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
f80fc4e
15b56c6
 
f80fc4e
15b56c6
 
 
f80fc4e
15b56c6
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
---
datasets:
- grabbe-gymnasium-detmold/grabbeai
language:
- de
library_name: transformers
license: gemma
pipeline_tag: text-generation
inference: true
tags:
- Detmold
- unsloth
- trl
- sft
emoji: 🧠
---

# GrabbeAI: A School's Leap into the Future of AI πŸš€πŸŽ“

Welcome to the official documentation of **GrabbeAI**, the first AI model developed specifically for a school! GrabbeAI is a groundbreaking project implemented at the **Christian-Dietrich-Grabbe-Gymnasium (GGY)** in Detmold, Germany. Its purpose is to revolutionize the way information is accessed and communication is handled for students, teachers, and parents. Fully integrated into the school’s homepage, GrabbeAI serves as a digital assistant for a wide range of tasks, making school life simpler, smarter, and more connected. You can use GrabbeAI directly on it's [own web-app](https://app.grabbe.site) or on the [Grabbe-Gymnasium's homepage](http://www.grabbe-gymnasium.de/#grabbeAI)!

---

## Table of Contents πŸ“
- [Overview](#overview)
- [Components](#components)
  - [Frontend](#frontend)
  - [Backend](#backend)
  - [Dataset](#dataset)
- [Features](#features)
- [Technology Stack](#technology-stack)
- [Security and Authentication](#security-and-authentication)
- [Setup and Installation](#setup-and-installation)
- [Development Workflow](#development-workflow)
- [Deployment](#deployment)
- [Community and Contribution](#community-and-contribution)
- [Acknowledgments](#acknowledgments)
- [References](#references)
- [License](#license)

---

## Overview 🌟
GrabbeAI is a cutting-edge AI solution, fine-tuned from OpenAI's **GPT-4o mini** model, making it the first school-focused AI implementation of its kind. Officially launched in **January 2025**, it combines the latest advancements in AI with tailored functionalities to meet the unique needs of the Christian-Dietrich-Grabbe-Gymnasium community.
GrabbeAI is the **first-ever school-focused AI model**, officially launched in **January 2025**. It was meticulously designed to meet the needs of the Christian-Dietrich-Grabbe-Gymnasium community, combining the latest advancements in artificial intelligence with a user-centric approach. GrabbeAI simplifies complex communication chains and ensures that relevant information is always just a click away.

### Key Benefits:
- **For Students** πŸ“š: Instant access to timetables, assignments, FAQs, and extracurricular activities.
- **For Teachers** πŸ‘©β€πŸ«: Effortless class management and parent communication.
- **For Parents** πŸ‘¨β€πŸ‘©β€πŸ‘§: Timely updates on their child’s progress, events, and important announcements.

The platform represents a significant step forward in education technology, showcasing how AI can create a better, more efficient learning environment.

---

## Components 🧩
GrabbeAI is built on three foundational components that work seamlessly together:

### Frontend 🌐
The **frontend** delivers a sleek, interactive user interface that is fully responsive and easy to navigate. This part of the system is designed to provide users with a simple yet powerful experience on any device.

πŸ”— [Frontend Repository](https://github.com/Grabbe-Gymnasium-Detmold/grabbe-ai-website)

#### Highlights:
- **Modern Design**: Developed using **React**, **Vite**, and **TailwindCSS**.
- **Localization**: Multi-language support via **i18next** ensures inclusivity.
- **Engaging Animations**: Powered by **Framer Motion** for smooth, visually appealing interactions.

### Backend πŸ› οΈ
The **backend** forms the AI-powered brain of GrabbeAI. It integrates directly with OpenAI's state-of-the-art models to generate intelligent responses and manages all API interactions.

πŸ”— [Backend Repository](https://github.com/Grabbe-Gymnasium-Detmold/grabbe-ai-backend)

#### Features:
- **Efficient AI Integration**: Leveraging OpenAI for quick and accurate responses.
- **Simple and Secure**: Though it lacks traditional authentication, GrabbeAI employs secure methods to protect sensitive information while remaining user-friendly.
- **Database Support**: Uses **MySQL** to store key data reliably.

### Dataset πŸ“Š
The dataset is the cornerstone of GrabbeAI’s ability to answer questions effectively. It includes:
- Detailed FAQs covering school policies, events, and procedures.
- Comprehensive teacher and staff directories.
- Key documents and downloadable resources.

πŸ”— [Dataset Repository](https://github.com/Grabbe-Gymnasium-Detmold/grabbe-ai-dataset)

---

## Features ✨
GrabbeAI is loaded with features that make it an indispensable tool for the Grabbe-Gymnasium community:

1. **Custom AI Assistance**: Tailored for school-related queries, ranging from timetables to teacher contact details.
2. **Seamless Communication**: Facilitates better interaction between teachers, students, and parents.
3. **Real-Time Information**: Provides instant updates on events, schedules, and announcements.
4. **User-Friendly Interface**: Accessible to users of all technical skill levels.
5. **AI-Powered Insights**: Intelligently answers questions using OpenAI’s advanced models.

---

## Technology Stack πŸ› οΈ
The development of GrabbeAI involved a robust stack of modern technologies:

### Frontend:
- **React**: Building dynamic and scalable user interfaces.
- **Vite**: A high-performance build tool.
- **TailwindCSS**: Utility-first CSS for rapid styling.
- **Framer Motion**: Library for animations and transitions.
- **i18next**: Enabling multi-language support.

### Backend:
- **Node.js**: JavaScript runtime for server-side processing.
- **Nitropack**: Framework for fast API responses.
- **MySQL**: Relational database management system.
- **OpenAI API**: Powers AI capabilities.
- **IPinfo**: Provides geolocation data based on IP addresses.

---

## Security and Authentication πŸ”’
Although GrabbeAI does not implement complex authentication protocols, it ensures security by:
- Using **secure API endpoints**.
- Maintaining user privacy by limiting data access.
- Restricting contributions and interactions to authorized members of the Grabbe-Gymnasium community.

The simplicity of its security framework allows for faster user onboarding while maintaining a high standard of data integrity.

---

## Setup and Installation βš™οΈ
Getting started with GrabbeAI is straightforward:

### Frontend:
1. Clone the repository:
   ```bash
   git clone https://github.com/Grabbe-Gymnasium-Detmold/grabbe-ai-website.git
   ```
2. Navigate to the directory:
   ```bash
   cd grabbe-ai-website
   ```
3. Install dependencies:
   ```bash
   npm install
   ```
4. Start the development server:
   ```bash
   npm run dev
   ```

### Backend:
1. Clone the repository:
   ```bash
   git clone https://github.com/Grabbe-Gymnasium-Detmold/grabbe-ai-backend.git
   ```
2. Navigate to the directory:
   ```bash
   cd grabbe-ai-backend
   ```
3. Install dependencies:
   ```bash
   npm install
   ```
4. Configure the environment:
   Create a `.env` file with the necessary keys (refer to the backend README).
5. Start the server:
   ```bash
   npm run dev
   ```

---

## Development Workflow 🚧
Development involves these core scripts:

- **Frontend:**
  - `npm run dev`: Starts the development server.
  - `npm run build`: Prepares the application for production.

- **Backend:**
  - `npm run dev`: Starts the API server.
  - `npm run build`: Prepares the backend for deployment.

---

## Deployment πŸš€

### Frontend:
1. Build the application:
   ```bash
   npm run build
   ```
2. Deploy the contents of the `dist/` directory to a static hosting provider such as **GitHub Pages** or **Vercel**.

### Backend:
1. Build the API:
   ```bash
   npm run build
   ```
2. Deploy the backend to a cloud service like **DigitalOcean** or **AWS**.

---

## Community and Contribution 🀝
GrabbeAI was developed by the school community, for the school community. Contributions are currently limited to authorized staff and students of Grabbe-Gymnasium. If you are part of the school and would like to contribute:

1. Fork the repository.
2. Create a feature branch (`git checkout -b feature/your-feature-name`).
3. Commit your changes (`git commit -m 'Add feature XYZ'`).
4. Push to the branch (`git push origin feature/your-feature-name`).
5. Open a pull request for review.

---

## Acknowledgments πŸ’–
GrabbeAI was envisioned and brought to life by:
- **Finn Busse**
- **Maximilian von Beck**

Special thanks to the entire Grabbe-Gymnasium community for their support and input during the development process.

---

## References πŸ“š
- **Finn Busse**: Primary developer and visionary.
- **Maximilian von Beck**: Lead backend engineer.

---

## License πŸ“œ
This project is the exclusive property of Christian-Dietrich-Grabbe-Gymnasium. Unauthorized use, copying, or distribution is prohibited.

For inquiries or support, contact:
- `[email protected]`
- `[email protected]`

---