https://github.com/shahob-atm/ielts-platform
IELTS Platform is a modern and user-friendly online system designed to manage the educational process, facilitate testing, and automate the operations of language centers specializing in IELTS exam preparation.
https://github.com/shahob-atm/ielts-platform
java javamailsender lombok maven postgresql spring-boot spring-data-jpa spring-security swagger validation
Last synced: 2 months ago
JSON representation
IELTS Platform is a modern and user-friendly online system designed to manage the educational process, facilitate testing, and automate the operations of language centers specializing in IELTS exam preparation.
- Host: GitHub
- URL: https://github.com/shahob-atm/ielts-platform
- Owner: shahob-atm
- Created: 2025-05-26T18:19:13.000Z (about 1 year ago)
- Default Branch: master
- Last Pushed: 2025-06-22T23:41:50.000Z (about 1 year ago)
- Last Synced: 2025-06-23T00:31:49.754Z (about 1 year ago)
- Topics: java, javamailsender, lombok, maven, postgresql, spring-boot, spring-data-jpa, spring-security, swagger, validation
- Language: Java
- Homepage: https://ielts-platform-production.up.railway.app/swagger-ui/index.html
- Size: 113 KB
- Stars: 1
- Watchers: 0
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# IELTS Platform
## About the Project
**IELTS Platform** is a modern, user-friendly online system for managing the educational process, conducting tests, and automating the workflow of language centers specializing in IELTS exam preparation. The platform enables efficient collaboration between administrators, teachers, students, and their parents.
## Key Features
- **User Registration and Management:** Supports roles such as Admin, Teacher, Student, and Parent.
- **Group Assignment and Management:** Create and edit study groups, assign teachers and students.
- **IELTS Test Administration:** Online platform for taking IELTS tests, automatic grading, and performance statistics.
- **Scheduling:** Plan lessons and exams seamlessly.
- **Attendance and Progress Reports:** Detailed analytics for administrators, teachers, and parents.
- **Feedback and Notifications:** Notification and messaging system for all roles.
- **Tuition Payment:** Option for online payment of courses (if needed).
## Architecture
The platform follows a client-server architecture:
- **Backend:** Spring Boot (Java)
- **Frontend:** (optional) React/Vue/Angular
- **Database:** PostgreSQL or MySQL
- **Email/SMS Notifications:** Integration with external services (e.g., SendGrid, Twilio, etc.)
## Getting Started
1. Clone the repository:
```bash
git clone https://github.com/shahob-atm/ielts-platform.git
```
2. Navigate to the project folder and configure environment variables (e.g., database parameters).
3. Run the backend application:
```bash
./mvnw spring-boot:run
```
4. (Optional) Start the frontend if you are using one.
## User Roles
- **Administrator:** Manages users, groups, schedules; approves new teachers and students; sends invitations.
- **Teacher:** Conducts lessons and tests, assigns grades, communicates with students.
- **Student:** Takes tests, tracks schedule, receives grades and notifications.
- **Parent:** Has access to their child’s results and attendance, can pay tuition.
## Security
- User registration is by invitation only from the administrator (via email or SMS).
- All passwords are stored in encrypted form (bcrypt).
- JWT authentication is used for the API.
- Data validation and role-based access control are enforced.
## Technologies
- Java 17+
- Spring Boot
- Spring Security (JWT)
- JPA/Hibernate
- PostgreSQL/MySQL
- Lombok
- Swagger/OpenAPI (documentation)
- Email/SMS integration
---
> ⚠️ **Note: This project is under active development. Major changes in functionality and architecture are possible. Use for familiarization or testing purposes only.**
**IELTS Platform** — your reliable tool for efficient IELTS preparation!