Ruby HTML CSS CoffeeScript JavaScript
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
app
bin
config
db
lib
public
spec
vendor/assets
.codeclimate.yml
.env.example
.eslintignore
.eslintrc
.gitignore
.jsbeautifyrc
.reek
.rspec
.rubocop.yml
.ruby-version
GUIA.md
Gemfile
Gemfile.lock
LICENSE
Procfile
README.md
Rakefile
codeclimate-config.patch
coffeelint.json
config.ru

README.md

San Pedro Valley Jobs - Beta

Deploy to Heroku

Este é o repositório do novo Job Board de San Pedro Valley

Veja funcionando em jobs.sanpedrovalley.org

Build Status Join the chat at https://gitter.im/hugodias/san-pedro-valley-jobs

Requerimentos

  • Ruby 2.3.0
  • Rails 4.2.5.2
  • Elasticsearch (Searchkick)
  • Sidekiq (Opcional)
  • Mailgun (Free no heroku)

Como funciona

Qualquer pessoa pode cadastrar um job no aplicativo, porém apenas adminstradores podem aprovar ou reprovar um job.

Ao cadastrar um job, o adminstrador recebe um e-mail com dois links: Aprovar ou Reprovar, e os dados do job no corpo do e-mail.

O adminstrador poderá também aprovar, reprovar e remover jobs no dashboard dentro da plataforma, protegida por login. Utilizamos o devise para authenticação.

O autor da vaga poderá remove-la a qualquer momento informando o e-mail de cadastro do job. Ao solicitar a remoção da vaga o mesmo receberá um e-mail com o link para remover o job do site.

A busca de jobs é realizada utilizando o elasticsearch e os e-mail são enviados em background pelo sidekiq.

Um usuário adminstrador é criado ao rodar o seed com rake db:seed- Não se esqueça de fazer o passo 4 do guia abaixo para funcionar.

Discussões Join the chat at https://gitter.im/hugodias/san-pedro-valley-jobs

Para discussões relacionadas ao projeto, é utilizado o gitter que disponibiliza um chat em tempo real.

Começando

Pré-requisitos: Instale o Elasticsearch e o Sidekiq. PS: Atualmente utilizamos o sidekiq apenas para enviar os e-mails.

  1. Clone o repositório:

    $ git clone git://github.com/hugodias/san-pedro-valley-jobs.git
  2. Vá para pasta do projeto:

    $ cd san-pedro-valley-jobs
  3. Instale todas as gems:

    $ bundle install
  4. Duplique o arquivo .env.example na raiz do projeto:

    cp .env.example .env
    
  5. Crie as tabelas:

    $ rake db:create && rake db:migrate && rake db:seed
  6. E finalmente rode:

    $ rails s
  7. Opcional: utilize heroku local para ligar o server e iniciar o sidekiq

    $ heroku local

Deploy

A aplicação já está preparada para para fazer o deploy para o heroku sem nenhuma alteração adicional.

Addons necessários no heroku:

  • Bonsai Elasticsearch (Ou algum outro de Elasticsearch)
  • Postgres
  • Redis To Go (Para o sidekiq)
  • Mailgun/Sandgrid/Mandril

Não se esqueça de habilitar ao menos 1 worker no painel do heroku para que o sidekiq funcione corretamente.

Contribuindo

Quer ajudar? Excelente! O primeiro passo é procurar issues com a tag help wanted no github.

Não tem nada lá? Não tem problema, porque como você sabe, Software has bugs. This is normal. Encontrou um Bug? A casa é sua, fique a vontade, a geladeira é ali ó.

Se quiser enviar um pull request, por favor faça-o na branch dev.

  • master contém a versão estável do projeto.
  • dev contém as funcionalidades que estão em desenvolvimento.

Tenha certeza que sua pull-request está bem testada, de preferência com testes unitários e de integração (Veja a pasta specs/features)

Garantia da Qualidade Code Climate Test Coverage

Para garantir a qualidade, é utilizado um guia de estilos, boas práticas e má praticas. Essa garantia é monitorada pelo Code Climate e pelo houndci. O Code Climate checa por má práticas de programação em relação a estrutura do código enquanto que o Houndci checa má práticas na sintaxe do código, isto é, se a leitura do mesmo não é demasiada complicada.