public
Description: The open source social networking platform in Ruby on Rails from the author of RailsSpace
Homepage: http://insoshi.com
Clone URL: git://github.com/insoshi/insoshi.git
Search Repo:
Long Nguyen (author)
Fri Apr 25 13:28:38 -0700 2008
commit  c37ff79872e1b117d7504f8e3faaf9c7604b7181
tree    1e3adf77ea862bccfef6bef496686414f961a12f
parent  2a847e6dd8681dc18285463c40cd178d49006418 parent  058b65bdf3868d582d24131fe858316eabf2011b
name age message
folder .gitignore Wed Apr 23 20:08:52 -0700 2008 Generating keys in rake install [Michael Hartl]
folder INSTALL Mon Apr 07 11:43:24 -0700 2008 Moved INSTALL to the README file for GitHub's p... [Michael Hartl]
folder LICENSE Thu Apr 24 10:30:41 -0700 2008 Revert "Switched to the MIT license (for n... [Michael Hartl]
folder README Fri Apr 25 13:28:30 -0700 2008 Updated README to match wiki install instructions [Long Nguyen]
folder Rakefile Mon Feb 18 15:18:20 -0800 2008 init [Michael Hartl]
folder app/ Fri Apr 25 12:25:33 -0700 2008 Signup button [Michael Hartl]
folder config/ Fri Apr 25 12:17:51 -0700 2008 Added BlueCloth to vendor/gems [Michael Hartl]
folder db/ Wed Apr 23 20:39:28 -0700 2008 Got RSA key generation and tests passing [Michael Hartl]
folder doc/ Mon Feb 18 15:18:20 -0800 2008 init [Michael Hartl]
folder init.rb Wed Feb 20 19:04:44 -0800 2008 Got new, index working for people [Michael Hartl]
folder lib/ Wed Apr 23 21:03:22 -0700 2008 Installation working nicely [Michael Hartl]
folder log/ Sun Mar 02 10:04:28 -0800 2008 Added 1st cut of installation readme [Michael Hartl]
folder public/ Fri Apr 25 12:25:33 -0700 2008 Signup button [Michael Hartl]
folder script/ Wed Apr 09 17:20:30 -0700 2008 Updates for production runtime environment [Long Nguyen]
folder spec/ Thu Apr 24 09:55:56 -0700 2008 Ripped out Markaby [Michael Hartl]
folder stories/ Mon Feb 18 19:55:09 -0800 2008 Added authentication [Michael Hartl]
folder vendor/ Fri Apr 25 12:17:51 -0700 2008 Added BlueCloth to vendor/gems [Michael Hartl]
README
# Insoshi social software

First, join the Insoshi Google group at

http://groups.google.com/group/insoshi/subscribe

Then get started with Insoshi.  If you encounter problems, be sure to refer to the Insoshi wiki at 
http://docs.insoshi.com, which expands on some of the points here.

## Get Git

The source code to Insoshi is managed via Git, a version control system developed by Linus Torvalds to host the Linux 
kernel.  

The first step is to install it from here:

http://git.or.cz/

Linux and Mac users should have no problems; Windows users might have to install Cygwin (http://cygwin.com/) first.

For more detailed information, check out our guide for Installing Git under Git Guides at

http://docs.insoshi.com

## Install libraries and gems

### Libraries

You'll need to install FreeImage, SQLite, and (optionally) MySQL.  Install instructions for all three are easy to find 
using Google.

### Gems

You probably have Rails already, but might not have the others.

$ sudo gem install rails
$ sudo gem install image_science
$ sudo gem install ferret
$ sudo gem install BlueCloth
$ sudo gem install sqlite3-ruby
$ sudo gem install mysql

## Installing the app

Here are the steps to get up and running with the Insoshi Rails app.

### Git steps

Our public Git repository is hosted on GitHub and can be viewed at

http://github.com/insoshi/insoshi

You can clone the the repository with the command

$ git clone git://github.com/insoshi/insoshi.git

The clone make take a moment to complete (mainly due to the frozen Rails gems).

Then make a local Git branch for yourself:

$ git checkout -b <local_branch>

where you should replace <local_branch> with the name of your choice (without angle brackets!).  

For more information on configuring your local clone of our repository, check out our Git Guides at

http://docs.insoshi.com

which also includes a scripted Quick Local Repository Setup.

### Config files and tests

You will to set up your database configuration.  If you're using SQLite, you can just copy the example file

$ cp config/database.example config/database.yml

If you're using MySQL, you'll need to create a configure the database.yml manually.  The easiest way is to copy and 
modify one from an existing Rails application or from a new Rails project that explicitly uses MySQL (rails -d mysql 
<mysql project>).

Run the following custom rake task

$ rake install

The install rake task runs the database migration and performs some additional setup tasks (generate an encryption 
keypair for password management, creating an admin account, etc.)

If the install step fails, you may not have properly set up the configuration files.

Then prepare the test database and run the tests (which are actually RSpec examples in the spec/ directory):

$ rake db:test:prepare
$ rake spec

If the tests fail in the Photos controller test, double-check that FreeImage and the image_science gem are installed.

### Loading sample data

Now load the sample data and start the server:

$ rake db:sample_data:reload
$ script/server

The rake task loads sample data to make developing easier.  All the sample users have email logins <name>@example.com, 
with password foobar.  

Go to http://localhost:3000 and log in as follows:

email: michael@example.com
password: foobar

### Admin user

To sign in as the pre-configured admin user, use

email: admin@example.com
password: admin

You should update the email address and password.  Insoshi will display warning messages to remind you to do that.

### Start hacking

Now open the source code with your favorite editor and start hacking!

Check out our Git Guides for information on how to manage your local development and how you can contribute your updates 
back to us:

http://docs.insoshi.com

## Stat tracker

Note that there is a minimalist stat tracker that lets us keep track of how many different installs of Isoshi are out 
there.  We don't collect any personal information, but if you don't want to be tracked just open application.html.erb 
and comment out the line after this one:

<%# A tracker to tell us about the activity of Insoshi installs %>

## License

See the file LICENSE.