Giter Site home page Giter Site logo

code-blooded-p3's Introduction

Scenario - JSON Transformation

Create an application that will do below

Code Generator

  • Accept a source JSON structure
  • Accept a target JSON structure
  • Accept a mapping (provided in a CSV format)
  • Build an app that will generate the code required to transform the source JSON structure to target JSON structure based on the mapping[Key Feature]
  • The generated code should preferably be Python or NodeJS.
  • If you are using any transformation libraries like JQ/JSONATA/JOLT to achieve the mapping and transformation, the application should auto generate the spec files needed for these libraries [Key Feature]
  • Application should be generic enough to accept different source/target/mapping inputs and dynamically arrive at the required code to do the conversion.

Code Executor

  • Maintain a list of mapping-specification or generated-code specification by name.
  • Expose an REST API endpoint which will accept source_json and specification name as input.
  • REST API should accept the source_json, apply the transformation dynamically based on the generated code and respond back with transformed json.
  • Based on the inputs received, automatically pick up the generated code and execute the same.
  • Output should be the intended transformed JSON.
  • Even if the generated code is executed with different data of same JSON structure, the intended output should be achieved.

Other Guidelines

Input Data

  • Refer to the below path in repo for sample data

     - data
      |- sample_1
      |- sample_2
      |- sample_3
    

Recommended Folder Structure

    - app_ui (for the UI files)
    - app (for the backend files)
    - presentation (to place working demo videos and presentation explaining the architecture of the app)

Steps to submit the code

  • Fork the repo to your team's git repo.
  • Create a branch with your team name.
  • You can make the changes to your branch locally.
  • Create a file called TestMe.md and mention how to start the app and if any dependencies have to be downloaded to run the app locally
  • Do not push the branch to the STG repo till instructed.
  • At the end of the event, you can push your branch into the STG repo.

Try not to use firebase or any internet provided services for creating or running the apps

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.