Skip to content

Dataset builder is an application that allows users to build datasets up to 5 dimensions visually through an intuitive MS-Paint-like interface and store the dataset in a MySQL data base for effective data-wrangling. Furthermore, the application allows users to export the datasets to a CSV file.

License

Notifications You must be signed in to change notification settings

RETR0-OS/spring-dataset-builder

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 

Repository files navigation

DataCanvas - Interactive Dataset Builder

Project Overview

DataCanvas is an interactive web application for creating multi-dimensional datasets through an intuitive paint-like interface. The application consists of a Spring Boot backend and HTML/CSS/JavaScript frontend.

Picture1

Picture2

Installation

Prerequisites

  • Java 21
  • MySQL 8.0+
  • Maven

Database Setup

CREATE DATABASE datasetbuilder;

Configure Environment Variables

export DB_URL=jdbc:mysql://localhost:3306/datasetbuilder export DB_USER=your_username export DB_PASS=your_password

Build & Run Backend

cd datasetBuilder/datasetBuilder mvn clean install

Then run the DatasetBuilderApplication.java in com.aaditya.honors.datasetBuilder package.

Run Frontend

cd frontend

Then open index.html in any webbrowser of choice.

Project Structure

datasetBuilder/ - Spring Boot backend ├── src/ │ └── main/ │ ├── java/ │ │ └── com/aaditya/honors/datasetBuilder/ │ │ ├── Controllers/ - REST endpoints │ │ ├── Models/ - Data models │ │ ├── Repositories/ - Database access │ │ └── Services/ - Business logic │ └── resources/ │ └── application.properties frontend/ - Web interface ├── css/ - Stylesheets ├── datasets/ - Dataset views | | | | | ├── build/ - Build New Dataset Pages | | | └── dashboard/ - Dataset Management Dashboard Pages ├── images/ - Static assets └── js/ - JavaScript files 

Features

Interactive Dataset Creation

  • Up to 5 dimensions:
    • 2-4 numerical variables
    • 1 optional categorical variable

Drawing Interface

  • Paint-like brush tool
  • Adjustable brush size and density
  • Point size and opacity controls
  • Shape-based categorical data

Dataset Management

  • Save datasets to MySQL database
  • View saved datasets
  • Download as CSV
  • Delete datasets

API Endpoints

GET /api/v1/datasets/list/all/ - List all datasets GET /api/v1/datasets/get/{id}/ - Get dataset by ID POST /api/v1/datasets/add/new/ - Create new dataset DELETE /api/v1/datasets/delete/{id} - Delete dataset GET /api/v1/datasets/get/{id}/download/ - Download dataset as CSV 

Tech Stack

Backend

  • Spring Boot 3.4
  • Spring Data JPA
  • MySQL

Frontend

  • HTML5/CSS3
  • JavaScript
  • Bootstrap 5
  • Chart.js

Contributing

This repository does not accept contributions yet as it is a part of the author's school ciriculum. This situation may change in the future after obtaining the neccssary approvals.

License

This project is licensed under the MIT License. Check LICENSE file for more information.

About

Dataset builder is an application that allows users to build datasets up to 5 dimensions visually through an intuitive MS-Paint-like interface and store the dataset in a MySQL data base for effective data-wrangling. Furthermore, the application allows users to export the datasets to a CSV file.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published