This repository contains the backend server for the Online Workshop application, built to enable seamless real-time interactions, content delivery, and user management for online workshops.
- User Authentication: Secure login and registration.
- Content Delivery: Management and distribution of workshop materials (PDFs, Docs).
- Attendance System: Track and record student participation in workshops.
- Admin & Faculty Dashboards: Specialized tools for system management and workshop instruction.
- Automated Seeding: Automatic creation of default Admin and Faculty accounts.
- Java 17: Backend programming language.
- Spring Boot 3.3.4: Framework for building REST APIs.
- MariaDB: High-performance relational database storage.
- Spring Data JPA: For database abstraction and ORM (Hibernate).
- Maven: Project management and build tool.
On application startup, the following accounts are automatically created for testing:
| Role | Username | Password |
|---|---|---|
| Admin | admin |
admin123 |
| Faculty | faculty |
faculty123 |
- Java 17 or higher installed.
- MariaDB server running on
localhost:3306. - Mysql change credentials in "application.properties".
-
Clone the repository:
git clone https://github.com/udaykiriti/OnlineWorkshopServer.git cd OnlineWorkshopServer -
Configure Database: The server is configured to connect to
workshop_db. It will attempt to create the database automatically if it doesn't exist. -
Run the application:
chmod +x mvnw ./mvnw spring-boot:run
The server will be available at: http://localhost:8081
POST /api/auth/login- User authentication.POST /api/auth/signup- New user registration.GET /api/workshops- List all workshops.GET /api/users/{username}- Fetch user profile.POST /api/attendance/mark- Record attendance.
