Background of Lifthub
The idea of creating a hosting site for Lift applications came up to mind maybe at the beginning of this year. At the time, I was still learning Lift and making a small web application just for my learning. After finishing the small app, I was coming to think of writing a bigger program, and started this personal project hoping I would learn more about Lift and gain some knowledge on infrastructure side.
After spending about a month on it, I thought it was demo ready, so I gave a small presentation at a Scala study session that is held by a local community every week. I got some positive feedback at the session, which encouraged me for further development. Also, a guy mentioned it on Twitter and some of the people that read it showed interest and gave me a message on Twitter.
Here are the slides that I used for the presentation for those who haven't seen them.
For the past week, I've been working on the feature of starting/stopping jetty servers. It took me a few days to stabilize it (it was my first time to seriously handle external processes from Java/Scala), and another two days for a jail environment using chroot to isolate each user app. Finally, it seems working. Well, I'm not an IT/security expert, so any comment would be appreciated.
TODOs of high priority
Here are some features/issues that I need to work on soon:
- Random password generation when sending an invitation mail.
- Page for viewing log files.
- Make git operations thread safe (I'm thinking of adding synchronized until I have the time to implement a better solution).
Not too much work, so I hope everything will be done within a few days.
There are many other issues/limitations to be fixed and features to be implemented. Here are some of them:
- Add options for databases and components, including PostgreSQL and MongoDB.
- Some design work (now it uses the default template as you see).
There's good news. A friend of mine told me that he was interested and that he will help me, which should accelerate development.