Skip to content

BenHand/git_social

Repository files navigation

GitSocial

  • A Website for coders who use GitHub and want to chat about code. Through the use of omniauth users can login through github and a profile is created to display their information. Includes stats on repo counts as well as creation date of github account. Through the use of the github api and octokit, users repos and recent github activity will also be displayed.
  • The Forum is open to all who are logged in. Create topics to chat about and within those topics create posts and comments.
  • Check out the live site here.

What was used

  • Omniauth-GitHub as well as devise for logging in.
  • Octokit.rb for creating user profile and github profile as well as retreiving pertanent user information.
  • Redcarpet for markdown of posts and comments.
  • Pygments.rb for syntax highlighting of code in posts and comments.
  • Materialize CSS for styling and JS.
  • strftime for datetime formatting.
  • Check out the Gemfile to see all that was used.
  • Rails (4.2.3)
  • Hosting by Heroku
  • Postgresql Database
  • Puma webserver
  • Sass

Installation Steps

  • Fork this repo
  • Clone this repo
  • Run bundle install
  • Run rake db:create Postgres will need to be setup and running.
  • Register an application to have access to the github API here. Alt text
  • Setup Figaro with your github api keys. # Remember to not push your keys to GitHub.
  • Run rails s to start the server

more info

  • trello scrum board
  • UML (excluding currently unused models) Alt text
  • model relations
  _User_                        _GitHub_Profile_
  has_many :github_profiles     belongs_to :user
  has_many :forums
  has_many :posts
  has_many :comments

  _Forum_                _Post_                   _Comment_
  belongs_to :user       belongs_to :user         belongs_to :user
  has_many   :posts      belongs_to :forum        belongs_to :post
                         has_many   :comments
  • white board wire frames Alt text Alt text

File Structure

.
├── Gemfile
├── Gemfile.lock
├── Procfile
├── README.md
├── Rakefile
├── app
│   ├── assets
│   │   ├── font
│   │   │   └── material-design-icons
│   │   ├── images
│   │   │   ├── GitHub-bw.png
│   │   │   └── Octocat.png
│   │   ├── javascripts (3 directories, 38 files)
│   │   └── stylesheets (2 directories, 39 files)
│   ├── controllers
│   │   ├── application_controller.rb
│   │   ├── comments_controller.rb
│   │   ├── concerns
│   │   ├── forums_controller.rb
│   │   ├── friend_lists_controller.rb
│   │   ├── friend_requests_controller.rb
│   │   ├── posts_controller.rb
│   │   ├── users
│   │   │   └── omniauth_callbacks_controller.rb
│   │   └── users_controller.rb
│   ├── helpers
│   │   ├── application_helper.rb
│   │   ├── comments_helper.rb
│   │   ├── forums_helper.rb
│   │   ├── friend_lists_helper.rb
│   │   ├── friend_requests_helper.rb
│   │   ├── posts_helper.rb
│   │   └── users_helper.rb
│   ├── mailers
│   ├── models
│   │   ├── comment.rb
│   │   ├── concerns
│   │   ├── forum.rb
│   │   ├── friend_list.rb
│   │   ├── friend_request.rb
│   │   ├── github_profile.rb
│   │   ├── post.rb
│   │   └── user.rb
│   └── views
│       ├── comments    (0 directories, 7 files)
│       ├── devise      (7 directories, 11 files)
│       ├── forums      (0 directories, 5 files)
│       ├── layouts     (0 directories, 1 file)
│       ├── posts       (0 directories, 5 files)
│       ├── shared      (0 directories, 4 files)
│       └── users       (0 directories, 3 files)
├── bin
│   ├── bundle
│   ├── rails
│   ├── rake
│   ├── setup
│   └── spring
├── config              (3 directories, 21 files)
├── config.ru
├── coverage
├── db                  (1 directory, 13 files)
├── lib
│   ├── assets
│   └── tasks
├── log
│   ├── development.log
│   └── test.log
├── public              (0 directories, 5 files)
├── test                (6 directories, 21 files)
└── vendor
    └── assets
        ├── javascripts
        └── stylesheets

Project Total: 74 directories, 1791 files

About

final project for The Iron Yard: social site with github omniauth

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors