Ruby on Rails easy-to-use interface to allow trusted users edit structured content. (Admin scaffold generator)
Ruby JavaScript
Switch branches/tags
Pull request Compare This branch is 1 commit ahead, 4930 commits behind typus:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
app
config
generators
lib
rails
tasks
test
.gitignore
AUTHORS.md
CHANGES
MIT-LICENSE
README.md
Rakefile
VERSION
typus.gemspec

README.md

Typus: Admin interface for Rails applications

Typus is designed for a single activity:

Trusted users editing structured content.

Typus doesn't try to be all the things to all the people but it's extensible enough to match lots of use cases.

Key Features

  • Access control by users and roles.
  • CRUD and custom actions for your models on a clean interface.
  • I18n.
  • Extensible and overwritable templates.
  • Low memory footprint.
  • MIT License, the same as Rails.

Links

Impatients to see it working?

Step 1: Create a Rails application using a template.

$ rails example.com -m http://tr.im/typus_example

Step 2: Start the server.

$ cd example.com && script/server

Step 3: Go to the admin area

$ open http://0.0.0.0:3000/admin

Want to see a demo working?

Demo application is hosted at Heroku (http://typus.heroku.com/).

Use the following credentials to log in.

Email: user@intraducibles.com
Password: columbia

Installing

Install from GitHub the latest version which it's compatible with Rails 2.3.5.

$ script/plugin install git://github.com/fesplugas/typus.git

Once typus is installed, run the generator to create required files and migrate your database.

$ script/generate typus
$ rake db:migrate

To create the first user, start the application server, go to http://0.0.0.0:3000/admin and follow the instructions.

Namespaced Models?

If you want to be able to use delayed_job you need to add the following two lines to your config/routes.rb file.

map.connect "admin/delayed/jobs/:action/:id", :controller => "admin/delayed/jobs"
map.connect "admin/delayed/jobs/:action/:id.:format", :controller => "admin/delayed/jobs"

And then create and configure config/typus/delayed_job.yml and config/typus/delayed_job_roles.yml as you do with your other models.

# config/typus/delayed_job.yml
Delayed::Job:
  fields:
    list: ...
    form: ...
  search: ...

# config/typus/delayed_job_roles.yml
admin:
  Delayed::Job: all

Support

As an experiment we encourage you to support this project by donating 90 € if you are a developer or studio. Donations do allow us to spend more time working and supporting the project.

License

Copyright © 2007-2010 Francesc Esplugas Marti, released under the MIT license