Skip to content
This repository has been archived by the owner on Sep 24, 2019. It is now read-only.
/ codebuilder Public archive

Demo of an asynchronous app for long-response-time web services.

Notifications You must be signed in to change notification settings

mariomac/codebuilder

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Web code builder

Demo app about asynchronous architectures for long-response-time web applications.

It uses the next technologies:

  • Vertx.io in the backend.
  • jQuery and Dropzonejs in the frontend.
  • jEaSSE, my own backend implementation of Server-Sent Events for real time message subscription from the frontend to the backend.

The backend is coded in Kotlin, my brand-new favourite programming language :bowtie:

Quick demo

Quick demo

How to compile and use

  1. Build the project with maven:

     mvn package
    
  2. Create a config.properties file that specifies your M2_HOME location, e.g.:

     m2.home=/home/user/.m2
    
  3. Run the maven all-in-one jar package specifying the path to the configuration file:

     cd target/
     java -Dconfig=path/to/config.properties -jar codebuilder.jar
    
  4. Go to http://localhost:8080/gui, using user as both username and password in the login screen. You will see the main screen of the application:

Main screen

  1. Drag a .zip file to the blue box, which contains the Maven pom.xml in its root folder.

  2. Click on the "start upload" button and the upload and building process. You will see the real-time output of the process in the console:

Real time console

  1. The result files will be automatically downloaded. You can also download them by using the "Download link" anchors in the console.

TO DO

As this is only a demo project, many improvements would be required for a production environment:

  • Provide a persistent authentication system (now for testing, user/password is hardcoded in memory)
  • Pack multiple-produced artifacts (JARs, WARs...) into a single zip file to avoid security warnings in some browsers.

Other tasks I will do in the near future:

  • Document code
  • Document design and architecture

About

Demo of an asynchronous app for long-response-time web services.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published