Skip to content

RailsWeek2011/rbot-plugin-community

Repository files navigation

RBot Plugin Community/Repository
================================

RBot is a powerful IRC (Internet Relay Chat) Bot written in ruby. Similar 
to eggdrop, plugins can be written that can easily extend the bot with 
new features. There is a website where plugin authors can sign up and 
upload their plugins:
  http://rbot.noway.ratry.ru/ 

This aims to be a replacement of the original site, a complete redesign/
reimplementation, with new and improved features, to create a community,
for people that use or write plugins and to motivate others.                  

Features
========

Have to:
--------
(die alten features/usecases)
- user sign up/in, profil, etc.
- suche
- plugins auflisten/anlegen/aendern/loeschen
  [name, summary, description, installation]
- versionen von plugins (datei upload) anlegen/aendern/loeschen
  [version, changelog]
- about/faq

(neue features/usecases)
- kommentare
- ratings
- rechte-management
- login per oauth/github/openid
- rbot-plugin fuer IRC (neue plugins etc.)
- Follow plugins/authors (incl. email notification)

Nice to have:
-------------
- markup fuer textfeldern
- user profile mit gravatar support, etc.
- rss feeds
- wiki/blog bereich fuer howtos
- github integration
- import von plugin repos ueber svn/git(/github)
- export von einzelnen/allen/approved plugins als git repo
- bug ticket system (incl. mail notification) / feature requests
- git repository von plugins
- test cases fuer alles
- Notification Center (Einstellen der Benachrichtigungen)

Todo:
- suche                                                                                                                                                            
- following plugins
- import von plugins via git/svn/github                                                                                                                            
- custom error pages
- check password strength

Notes:
======

- GPLv3, englisch/multi-language, neues design
- CodeStyle: tabs: expandtab shiftwidth=2 softtabstop=2
- Development: github/ci-server die tests machen?/test-server(mit git push hook)/
- wer kann aenderungen/neue versionen veroeffentlichen und wie (bsp.: update request durch andere nutzer vgl. github pullrequest)
  im alten system konnte das nur der plugin owner/ersteller (das sollte also das default sein) also auswahl beim erstellen?! ob andere leute versionen hochladen koennen oder nicht, und wenn ja dann nur moderiert vom autor)

Models:
=======

more planning of this in doc/Database.png

User
    username_string
    email:string
    encrypted_password:string
    reset_password_token:string
    reset_password_sent_at:datetime
    remember_created_at:datetime
    sign_in_count:integer
    current_sign_in_at:datetime
    last_sign_in_at:datetime
    current_sign_in_ip:string
    last_sign_in_ip:string

Plugin                 
    name:string        
    user:references    
    repository:string  
    summary:text       
    description:text   
    installation:text

PluginVersion
    plugin:references
    version:string
    changelog:text
    order:integer

VersionFile
    plugin_version:references
    file:string

Comment
    plugin:references
    user:references
    ip:string
    name:string
    email:string
    content:text

Rating
    plugin:references
    user:references
    ip:string
    rate:integer

Installation (development)
============

(install ruby, bundle, rvm (rvm install 1.9.2))  
rvm use 1.9.2
rvm gemset create rbot-plugin-community
git clone [email protected]:RailsWeek2011/rbot-plugin-community.git
cd rbot-plugin-community/
bundle install
rake db:setup

Run
---
Don't forget to start the worker (for asynchron email/irc notifications)
rake jobs:work

Hint for stopping spam:
rake jobs:clear

About

Platform for community powered rbot plugins

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published