Here's my feedback, as the developer of the Rails Composer tool [<a href="https://github.com/RailsApps/rails-composer" rel="nofollow">https://github.com/RailsApps/rails-composer</a>].<p>I got started with "automated Rails development" (as you call it) using Michael Bleigh's RailsWizard. He built it at RailsRumble 2010 as a website that generates Rails apps. I forked it as Rails Composer when the project was abandoned, and developed it further, purely as a command-line tool. It's been the most popular project I've worked on in the Rails community, and also more work than I ever expected.<p>I've had a huge community supporting Rails Composer as an open source project so I get a reliable stream of issue reports and pull requests. And I've built a business model to fund the project, by asking supporters to pay $19/mo, and offering my in-depth Rails tutorials as a reward for subscribers. That's the RailsApps project [<a href="http://railsapps.github.io/" rel="nofollow">http://railsapps.github.io/</a>].<p>Rails Composer is popular because developers really like a tool to build starter apps, and it's a lot of work because changes to Rails and gems constantly introduce entropy. I think you'll face a similar challenge with Prelang, maintaining the product as gems change. Developers want an automated Rails development tool because a good starter app will give them a reference implementation, code that is properly configured and guaranteed to work with the latest versions of all the popular gems. You'll have to keep checking and tweaking as gems and Rails versions change. That job will be easier if you limit the starter app to use only the most popular stack and a small set of popular gems, as you've done so far. You'll also need to monetize the project to be able to maintain it (I doubt it can succeed as a spare-time project). As a gauge of time required, I work fulltime on RailsApps, splitting my time between developing Rails Composer and writing the tutorials for the project's supporters.<p>Erik, I hope you do well with Prelang. You've created a beautiful interface, the project is ambitious, and judging by Rails Composer, developers will want it.
This looks pretty neat. Looking forward to you getting the disabled features ironed out.<p>Some notes:<p>* Project generation with most of the features and a couple models is taking a really long time. I'm sure it's a background job, and I could walk away if I wanted to, but it'd be nice to know that the system would email me to let me know when it was done<p>* Sometimes UI widgets flicker when switching between sections. I'm guessing a lot of those styles are being added with Javascript, not CSS? You might consider switching to a CSS framework that gives you a good look and feel, but doesn't have to call some JS function to apply styles.<p>* The auto-capitalization on model names, and auto-lowercasization (?) on field names, was a nice touch, and made me feel happy about the product.<p>* It would be really cool if users could write and submit plugins / hooks. I'd be interested in background jobs that weren't DelayedJob, and deployments that weren't Heroku, for instance.<p>* I'm guessing that "public repos only" is a temporary feature, because GitHub doesn't have a way to authorize an app to write only to certain private repos, correct? Because most of my work is on private repos, and I can't see my organization using something like this without the ability to create projects (even scaffolds) privately<p>* A feature for Vagrant would be nice :-)<p>I'll be watching this! We've currently got several people switching from ColdFusion to Rails; they're good programmers, but they don't know the ecosystem or the conventions. This gives them a really good starting place. Thanks for sharing.<p>Edit: Also, this is the first time I've seen app/views/elements/, and I'm kinda pissed I haven't thought of using a different directory for partial layouts before. Now I've got some app/views/layouts/ directories to clean up...
This is really cool. Have you guys considered Heroku integration? One-click generation + deployment could be a really slick MVP tool (although I worry about how it would affect client expectations were they to ever find out about it. :)
This is truly an innovative addition to the Rails ecosystem. I'm learning Rails and Prelang offers a great way to read code that's written with best practices in mind. All the best!
This is really interesting! I created a simple app to CRUD Cities and Countries and it works as you expect it to. Code is also what I would have written given the simple spec.<p>Uses the latest Rails and clean code generation. Well done!<p>If you're curious see here: <a href="https://github.com/sergiotapia/prelangtest" rel="nofollow">https://github.com/sergiotapia/prelangtest</a><p>I'll use to launch my next project because Facebook+Email authentication is a pain in the ass to implement.
good work, known of this for awhile and been impressed.<p>came across this one today which is trying to doing something similar also<p><a href="http://www.drystorm.co" rel="nofollow">http://www.drystorm.co</a>
This looks like a really great tool. It's a shame Github doesn't have more fine grained permissions though - I'd love to give it read/write access to repos it creates, but it requiring global read/write access means I'll probably never use it.
This looks great! I like how this one concentrates on the back-end features more than the views. It just generates all the backend/routing and lets you put in the special view logic yourself. Good way to not get distracted trying to master a WYSWIG.
Cool idea, but I immediately left when I saw the only background process option was DelayedJob. With greatly advanced options like Resque and Sidekiq, I fail to see a need for DJ personally.
We're taking "Show HN" out of this title because the software isn't ready to be tried out.<p>Please read the new Show HN guidelines: <a href="https://news.ycombinator.com/showhn.html" rel="nofollow">https://news.ycombinator.com/showhn.html</a>. Landing pages and email signups are explicitly excluded. But when your work is ready for people to play with, please come back and do a Show HN then!
This is why I love Ruby. It's got all the built-in language features that allow one to perform this sort of abstraction, and a large-enough user base so that powerful ideas like this will eventually be implemented. I couldn't imagine anything like this existing in even Python.