Coder Social home page Coder Social logo

ananyo2012 / lobsters Goto Github PK

View Code? Open in Web Editor NEW

This project forked from lobsters/lobsters

0.0 2.0 0.0 6.04 MB

Rails code running the Lobsters link aggregation site

Home Page: https://lobste.rs

License: Other

Ruby 50.39% HTML 26.83% JavaScript 15.65% CSS 7.09% Shell 0.04%

lobsters's Introduction

###Lobsters Rails Project

This is the source code to the site operating at https://lobste.rs. It is a Rails 4 codebase and uses a SQL (MariaDB in production) backend for the database and Sphinx for the search engine.

While you are free to fork this code and modify it (according to the license) to run your own link aggregation website, this source code repository and bug tracker are only for the site operating at lobste.rs. Please do not use the bug tracker for support related to operating your own site unless you are contributing code that will also benefit lobste.rs.

####Contributing bugfixes and new features

Please see the CONTRIBUTING file.

####Initial setup

  • Install Ruby. This code has been tested with Ruby versions 1.9.3, 2.0.0, 2.1.0, and 2.3.0.

  • Checkout the lobsters git tree from Github

       $ git clone git://github.com/jcs/lobsters.git
       $ cd lobsters
       lobsters$ 
    
  • Run Bundler to install/bundle gems needed by the project:

       lobsters$ bundle
    
  • Create a MySQL (other DBs supported by ActiveRecord may work, only MySQL and MariaDB have been tested) database, username, and password and put them in a config/database.yml file:

        development:
          adapter: mysql2
          encoding: utf8mb4
          reconnect: false
          database: lobsters_dev
          socket: /tmp/mysql.sock
          username: *username*
          password: *password*
          
        test:
          adapter: sqlite3
          database: db/test.sqlite3
          pool: 5
          timeout: 5000
    
  • Load the schema into the new database:

        lobsters$ rake db:schema:load
    
  • Create a config/initializers/secret_token.rb file, using a randomly generated key from the output of rake secret:

        Lobsters::Application.config.secret_key_base = 'your random secret here'
    
  • (Optional, only needed for the search engine) Install Sphinx. Build Sphinx config and start server:

        lobsters$ rake ts:rebuild
    
  • Define your site's name and default domain, which are used in various places, in a config/initializers/production.rb or similar file:

        class << Rails.application
          def domain
            "example.com"
          end
        
          def name
            "Example News"
          end
        end
        
        Rails.application.routes.default_url_options[:host] = Rails.application.domain
    
  • Put your site's custom CSS in app/assets/stylesheets/local.

  • Seed the database to create an initial administrator user and at least one tag:

        lobsters$ rake db:seed
        created user: test, password: test
        created tag: test
    
  • Run the Rails server in development mode. You should be able to login to http://localhost:3000 with your new test user:

        lobsters$ rails server
    

lobsters's People

Contributors

a-chernykh avatar aborgna avatar abutler3 avatar akkartik avatar alanpca avatar amalrik avatar apg avatar bennyhallett avatar causal-agent avatar cpg avatar crertel avatar derekprior avatar jcs avatar jdan avatar jordigh avatar jryans avatar llelf avatar mongey avatar mxswd avatar nikuda avatar oa414 avatar prayagverma avatar pushcx avatar rhysforyou avatar rjsamson avatar rvoicilas avatar samhasler avatar srgpqt avatar walle avatar zubkonst avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.