Skip to content

kirill-levitskiy/gluestick

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

49 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

gluestick logo gluestick by hotglue

demo docs join slack npm package dockerhub

Open source, self-hosted CSV uploads and mapping.


demo

Info

Motivation

We want to provide a light-weight and simple way to integrate user data from CSVs, with a great UI and strong mapping functionality.

Links

Sandbox

gluestick-elements

Simple reusable React components that handle CSV uploads, mapping, and validation.

Functionality

  1. Upload file
  2. Do column mapping
  3. Validate data + preview final output
  4. Approve (sent to hook / piped to target)

Install

npm install --save gluestick-elements

Usage

import React, { Component } from 'react'

import {GlueStick} from 'gluestick-elements'
import 'gluestick-elements/dist/index.css'

class Example extends Component {
  render() {
    return (<GlueStick
      user={"default"}
      endpoint={"https://gluestick-api.herokuapp.com"}
      schema={{
        fields: [
          {
            col: "Name",
            key: "name"
          },
          {
            col: "Phone Number",
            key: "phoneNumber",
            validator: /^(\+\d{1,2}\s)?\(?\d{3}\)?[\s.-]?\d{3}[\s.-]?\d{4}$/
              .source
          }
        ]
      }}
    />);
  }
}

gluestick-api

A Python + Docker based mapping API that leverages data science tools to manipulate CSVs. This part is designed to be self-hosted and also benefits from being completely open source.

Features

  1. Handle all gluestick elements requests (all data is processed via Python backend not in browser)
  2. Deployable to the cloud (Heroku, AWS, etc.)
  3. Ability to connect with and pipe data directly to all targets supported by hotglue (S3, Cloud Storage, etc.)
  4. Webhook functionality to programmatically monitor user uploads and make actions based on that

About

Open source, self-hosted CSV uploads and mapping.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • CSS 84.6%
  • JavaScript 9.5%
  • Python 5.2%
  • Other 0.7%