{"id":13463024,"url":"https://github.com/alno/irwi","last_synced_at":"2025-05-16T15:09:32.661Z","repository":{"id":630637,"uuid":"271380","full_name":"alno/irwi","owner":"alno","description":"Complete wiki plugin for Ruby on Rails","archived":false,"fork":false,"pushed_at":"2024-01-30T20:32:28.000Z","size":274,"stargazers_count":213,"open_issues_count":17,"forks_count":76,"subscribers_count":11,"default_branch":"master","last_synced_at":"2025-04-12T14:17:09.167Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"http://irwi-test.heroku.com/","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/alno.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"MIT-LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2009-08-07T06:04:32.000Z","updated_at":"2025-04-04T14:49:52.000Z","dependencies_parsed_at":"2024-06-19T06:12:24.414Z","dependency_job_id":"614f69ac-53f0-4fea-ae50-3c55c1394747","html_url":"https://github.com/alno/irwi","commit_stats":{"total_commits":243,"total_committers":21,"mean_commits":"11.571428571428571","dds":0.3827160493827161,"last_synced_commit":"2abd0f2b034c8137c829775f270106429be1d252"},"previous_names":[],"tags_count":11,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alno%2Firwi","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alno%2Firwi/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alno%2Firwi/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alno%2Firwi/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/alno","download_url":"https://codeload.github.com/alno/irwi/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253860533,"owners_count":21975269,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-07-31T13:00:44.333Z","updated_at":"2025-05-16T15:09:27.624Z","avatar_url":"https://github.com/alno.png","language":"Ruby","readme":"# Irwi\n\nIrwi is a Ruby on Rails 4 plugin which adds wiki functionality to your\napplication.\n\n## Status\n\n[\u003cimg src=\"https://secure.travis-ci.org/alno/irwi.png?branch=master\" alt=\"Build Status\" /\u003e](http://travis-ci.org/alno/irwi)\n\n## Installation\n\nAdd to your Gemfile:\n\n    gem 'irwi', :git =\u003e 'git://github.com/alno/irwi.git'\n\nThen in your application directory call:\n\n    rails g irwi_wiki\n\nIt will generate:\n*   WikiPageController to serve wiki pages\n*   WikiPage model to represent page\n*   Migration to prepare database\n\n\nAlso it will add to your `routes.rb` something like:\n\n    wiki_root '/wiki'\n\n## Wiki syntax (links to other pages)\n\nYou can link pages by using\n\n    [[Some page title]]\n\nconstruction in text. If linked page exists, when it will be replaced with\nlink to this page, in other case it will be replaced with link to new page\nwith such path/title.\n\n## Template definition\n\nYou may create your own templates for controller actions (`show`, `edit` and\n`history`), in other case default built-in templates will be used.\n\n## Helper definition\n\nFollowing helpers are defined by default and you may replace them with you\nown:\n*   `wiki_user` - Renders user name or link by given user object. By default\n    renders \u0026lt;Unknown\u0026gt; for `nil` and \"User#{user.id}\" for others.\n\n\n## Configuration\n\nConfiguration options are acessed via `Irwi.config` object. Currently\nsupported options:\n*   `user_class_name` - Name of user model class. By default - 'User'\n\n    Define a method named 'current_user' method on WikiPagesController that returns the object for the current user\n\n*   `formatter` - Formatter instance, which process wiki content before\n    output (see section below).\n\n*   `paginator` - Paginator instance, which display pagination controls (see section below).\n\n*   `comparator` - Comparator instance, which builds and renders a set of\n    changes between to texts. By default instance of\n    `Irwi::Comparators::DiffLcs` is used (requires diff-lcs gem).\n\n### Formatters\n\nIrwi supports custom formatters which can be configured by setting `Irwi.config.formatter` to corresponding instance.\nEach formatter should have method `format`, which gets a string and returns it formatted.\n\nThere are several supported formatters based on different gems (which tou should add to `Gemfile` of your application):\n* `Irwi::Formatters::RedCloth` - markdown formatter based on `RedCloth` gem.\n* `Irwi::Formatters::RedCarpet` - markdown formatter based on `redcarpet  gem.\n* `Irwi::Formatters::BlueCloth` - textile formatter based on `BlueCloth` gem.\n* `Irwi::Formatters::WikiCloth` - formatter based on `wiki_cloth` gem.\n* `Irwi::Formatters::SimpleHtml` which does nothing.\n\nBy default, Irwi will select first available (having corresponding gem in application `Gemfile`) formatter.\nAlso, you may select formatter explicitly by specifying `Irwi.config.formatter` value like:\n\n    Irwi.config.formatter = Irwi::Formatters::BlueCloth.new\n\n### Paginators\n\nIrwi supports custom paginators which can be configured by setting `Irwi.config.paginator` to corresponding instance.\n\nThere are following supported paginators (which tou should add to `Gemfile` of your application):\n* `Irwi::Paginators::WillPaginate` - based on `will_paginate` gem.\n* `Irwi::Paginators::Kaminari` - based on `kaminari` gem.\n* `Irwi::Paginators::None` which does nothing.\n\nBy default, Irwi will select first available (having corresponding gem in application `Gemfile`) paginator.\nAlso, you may select paginator explicitly by specifying `Irwi.config.paginator` value like:\n\n    Irwi.config.paginator = Irwi::Paginators::WillPaginate.new\n\n\n## Access control\n\nIf you want (and it's good idea) to specify which users can see or edit\ncertain pages you should simply override following methods in your controller:\n*   `show_allowed?` - should return `true` when it's allowed for current user\n    to see current page (@page).\n*   `history_allowed?` - should return `true` when it's allowed for user to\n    see history of current page (@page) and compare it's versions.\n*   `edit_allowed?` - should return `true` when it's allowed for current user\n    to modify current page (@page).\n\n\n## Attachments\n\nIrwi allows easy attachment integration in your wiki. There area several\nsimple steps to add attachments to wiki pages:\n*   Call `irwi_wiki_attachments` generator. It will create WikiPageAttachment\n    class.\n*   Include `config.gem \"paperclip\"` in your `environment.rb` or, if you\n    prefer another library modify generated code for it.\n*   Append to initializer (or create a new one) something like\n    `Irwi.config.page_attachment_class_name = 'WikiPageAttachment'`.\n*   Run `rake db:migrate` and start using attachments in your wiki!\n\n\n## Contributors\n\n*   Alexey Noskov (http://github.com/alno)\n*   Ravi Bhim (http://github.com/ravibhim)\n*   Pavel Valodzka (http://github.com/valodzka)\n*   Xavier Defrang (http://github.com/xavier)\n*   Tomáš Pospíšek (http://github.com/tpo)\n*   Evan Arnold (http://github.com/earnold)\n*   https://github.com/alno/irwi/contributors\n\n\nFeel free to add yourself when you add new features.\n\nCopyright (c) 2009 Alexey Noskov, released under the MIT license\n","funding_links":[],"categories":["Content Management \u0026 Blogging"],"sub_categories":["Wiki Apps"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falno%2Firwi","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Falno%2Firwi","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falno%2Firwi/lists"}