├── src ├── main │ ├── resources │ │ ├── .babelrc │ │ ├── app │ │ │ ├── config.js │ │ │ ├── home │ │ │ │ ├── home.controller.js │ │ │ │ ├── result │ │ │ │ │ ├── index.js │ │ │ │ │ ├── result.html │ │ │ │ │ └── result.controller.js │ │ │ │ ├── upload │ │ │ │ │ ├── upload.controller.js │ │ │ │ │ ├── upload.html │ │ │ │ │ ├── upload.service.js │ │ │ │ │ └── index.js │ │ │ │ ├── view │ │ │ │ │ ├── index.js │ │ │ │ │ ├── view.controller.js │ │ │ │ │ └── view.html │ │ │ │ ├── index.js │ │ │ │ └── home.routes.js │ │ │ ├── css │ │ │ │ └── custom.css │ │ │ ├── index.js │ │ │ └── index.html │ │ ├── application.properties │ │ ├── banner.txt │ │ ├── package.json │ │ └── webpack.config.js │ └── java │ │ └── schultz │ │ └── dustin │ │ └── io │ │ ├── services │ │ ├── VideoDecoderService.java │ │ ├── GifEncoderService.java │ │ └── ConverterService.java │ │ ├── JustGifItApplication.java │ │ └── controller │ │ └── UploadController.java └── test │ └── java │ └── schultz │ └── dustin │ └── io │ └── JustGifItTests.java ├── .gitignore ├── .mvn └── wrapper │ ├── maven-wrapper.jar │ └── maven-wrapper.properties ├── .gitattributes ├── README.md ├── pom.xml ├── mvnw.cmd └── mvnw /src/main/resources/.babelrc: -------------------------------------------------------------------------------- 1 | { "presets": ["es2015"] } -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | target 2 | .DS_Store 3 | .idea 4 | *.iml 5 | node_modules 6 | public 7 | -------------------------------------------------------------------------------- /.mvn/wrapper/maven-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/dustinschultz/just-gif-it/HEAD/.mvn/wrapper/maven-wrapper.jar -------------------------------------------------------------------------------- /.mvn/wrapper/maven-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionUrl=https://repo1.maven.org/maven2/org/apache/maven/apache-maven/3.3.3/apache-maven-3.3.3-bin.zip -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | *.java linguist-language=Java 2 | *.properties linguist-language=Java 3 | mvnw linguist-vendored 4 | mvnw.cmd linguist-vendored 5 | .mvn/* linguist-vendored 6 | -------------------------------------------------------------------------------- /src/main/resources/app/config.js: -------------------------------------------------------------------------------- 1 | export default function config($urlRouterProvider) { 2 | $urlRouterProvider.otherwise('/'); 3 | }; 4 | 5 | config.$inject = ['$urlRouterProvider']; 6 | -------------------------------------------------------------------------------- /src/main/resources/application.properties: -------------------------------------------------------------------------------- 1 | # configure auto-configured MultipartConfigElement 2 | multipart.maxFileSize=50MB 3 | multipart.maxRequestSize=50MB 4 | multipart.location=${java.io.tmpdir} 5 | -------------------------------------------------------------------------------- /src/main/resources/app/home/home.controller.js: -------------------------------------------------------------------------------- 1 | export default class HomeController { 2 | 3 | constructor($state) { 4 | $state.transitionTo('upload'); 5 | } 6 | } 7 | 8 | HomeController.$inject = ['$state']; 9 | -------------------------------------------------------------------------------- /src/main/resources/app/home/result/index.js: -------------------------------------------------------------------------------- 1 | import angular from 'angular'; 2 | import ResultController from './result.controller'; 3 | 4 | export default angular.module('result', []) 5 | .controller('ResultController', ResultController) 6 | .name; 7 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | ## About 2 | Start of Just-Gif-It for Pluralsight course Spring Boot: Efficient Development, Configuration, and Deployment 3 | 4 | UI: AngularJS + WebPack + ES6 (ES2015) 5 | Backend: Spring Boot + JavaCV + Animated-Gif-Lib 6 | 7 | ## License 8 | Version 2.0 of the Apache License 9 | -------------------------------------------------------------------------------- /src/main/resources/banner.txt: -------------------------------------------------------------------------------- 1 | __ __ _______ ____ ______ 2 | / /_ _______/ /_ / ____(_) __/ / _/ /_ 3 | __ / / / / / ___/ __/ / / __/ / /_ / // __/ 4 | / /_/ / /_/ (__ ) /_ / /_/ / / __/ _/ // /_ 5 | \____/\__,_/____/\__/ \____/_/_/ /___/\__/ 6 | -------------------------------------------------------------------------------- /src/main/resources/app/home/result/result.html: -------------------------------------------------------------------------------- 1 |