Dave Johnson on open web technologies, social software and Java
About three years ago I decided to modernize and improve the Apache Roller web UI by rewriting the JSP pages to use the Struts 2 Bootstrap tags, which use Twitter's Bootstrap v3 components and JavaScipt. I also wanted to replace all the HTML
table-based formatting with
div's and Bootstrap, do a bunch of other improvements and make Roller's web UI less clunky and annoying.
Converting Roller's eight-five JSP pages was a big task and I did not have much time for it. That's why it took three years. Ironically, the Roller modernization project leaves Roller three years out of date. Still, I think it is a huge improvement over the Roller v5 web UI and I want to get it released in Roller v6. Currently, this work is available as Pull Request #22 and you can find some screenshots there too. Here's one:
I also did some work to make it super-easy to try the Roller v6 snapshot pre-release for yourself, by using Docker Compose. You don't have to fiddle with Tomcat or PostgreSQL. You can find a simple Dockerfile for running Roller v2 snapshot and a docker-compose.yml file linked below. And you can find a Docker image in my DockerHub repo.If you want to try Roller v6 snapshot, here's what you need to do:
1 - If you don't aleady have it, install Docker
2 - Create a directory on your computer where you want Roller to store it's data.
3 - Save this file docker-compose.yml to that new directory.
4 - Open a shell in that new directory and run:
5 - Watch the PostgreSQL and Roller startup logs scroll by
6 - When the log scroll slows go to http://localhost:8080 to access Roller and go through the initial setup.
Alternatively, if you want to try Roller the hard way, you can get the regular-style v6 SNAPSHOT release files here roller/roller-6.0/v6.0.0.
It's hard to believe, but I've been dorking around with Roller, the blog software that powers this site, for almost 10 years now. I started in summer 2001. In the past couple of years, I've had a lot less time to work on Roller. I devoted some of that time to mentoring student developers, which was fun and rewarding. I also spent time making Roller more consumable for developers by making it easier to build, run and deploy to modern Java app servers, which was not really fun but was definitely educational, bloggable even.[Read More]