{"id":16074080,"url":"https://github.com/opedrosouza/booklovers","last_synced_at":"2026-04-26T12:32:05.105Z","repository":{"id":55115754,"uuid":"326101358","full_name":"opedrosouza/booklovers","owner":"opedrosouza","description":"A simple rails app made for book lovers","archived":false,"fork":false,"pushed_at":"2021-01-09T02:50:56.000Z","size":442,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-05T10:41:52.326Z","etag":null,"topics":["rails","ruby"],"latest_commit_sha":null,"homepage":"https://thebooklovers.herokuapp.com/","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/opedrosouza.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-01-02T03:33:14.000Z","updated_at":"2021-01-09T02:29:02.000Z","dependencies_parsed_at":"2022-08-14T12:30:44.916Z","dependency_job_id":null,"html_url":"https://github.com/opedrosouza/booklovers","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/opedrosouza/booklovers","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/opedrosouza%2Fbooklovers","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/opedrosouza%2Fbooklovers/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/opedrosouza%2Fbooklovers/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/opedrosouza%2Fbooklovers/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/opedrosouza","download_url":"https://codeload.github.com/opedrosouza/booklovers/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/opedrosouza%2Fbooklovers/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32297893,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-26T09:34:17.070Z","status":"ssl_error","status_checked_at":"2026-04-26T09:34:00.993Z","response_time":129,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["rails","ruby"],"created_at":"2024-10-09T08:41:20.803Z","updated_at":"2026-04-26T12:32:05.090Z","avatar_url":"https://github.com/opedrosouza.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"# BookLovers\n\nBookLovers é um webapp criado com o Framework Rails 6 com o objetivo de passar no teste da Zygo.\n\n\n## Libs e Framework\nA aplicacão foi desenvolvida com Ruby on Rails e Bootstrap e as versões das ferramentas estão listadas abaixo:\n\n - Ruby 2.7.2\n - Rails 6.0.3\n - [Bootstrap](https://getbootstrap.com/docs/4.5/getting-started/introduction/) 4.5.3\n - Postgresql como banco de dados\n - [Devise](https://github.com/heartcombo/devise) para autenticacão dos admins\n - [Rspec](https://github.com/rspec/rspec-rails) e [Capybara](https://rubygems.org/gems/capybara) para escrever os testes\n - [Ransack](https://github.com/activerecord-hackery/ransack) para fazer as buscas\n - Outras libs podem ser encontradas no Gemfile do projeto.\n\n## Rodando o projeto localmente\nPara rodar o projeto na sua máquina e testar e fazer melhorias basta ter o Ruby instalado, e a gem [Bundler](https://rubygems.org/gems/bundler) e então é só seguir os passos abaixo:\n\n    $ git clone git@github.com:opedrosouza/booklovers.git\n    $ cd booklovers\n    $ bundle install\n\t\n\tCrie um arquivo .env na raiz do projeto e coloque as credenciais do seu banco postgresql seguindo o exemplo do arquivo .env.sample\n\n\t$ echo 'DATABASE_USER=seuusuariopsql\n\t\t\tDATABASE_PASSWORD=suasenhapsql' \u003e\u003e .env  \n\n    $ rails db:create db:migrate\n    $ rails s\nAgora basta acessar no seu browser http://localhost:3000 e prontinho, aplicacão rodando.\n\n## Upload de Arquivos\nQuando a aplicacão está rodando em ambiente de teste (na máquina local) os arquivos ficam salvos na própria máquina, mas quando vai pra producão preferi configurar um S3 usando o Digital Ocean Spaces, então se for subir a aplicacão em producão será necessário mudar as configuracões no arquivo .env com as credenciais do seu S3 e no arquivo config/storage da aplicacão.\n\n## Rodando os testes\nOs teste foram escritos usando o Rspec e Capybara, todos os testes estão na pasta /spec da aplicacão, onde foram feitos os testes de controller, components, models e features, para rodar os testes na sua máquina basta entrar no diretório do projeto e rodar o seguinte comando:\n\n    $ rspec\nUma pasta chamada coverage será gerada que mostra a cobertura de testes da aplicacão em um arquivo html que pode ser aberto no browser.\n\n## CI/CD\nPor diversão configurei o continuos integration e continuos deployment com o Github Actions e Heroku, assim toda vez que é aberto um pull request ou é feito um push para branch main é rodado os tests, então todo o processo fica automatizado evitando que eu suba para producão um código com erros.\n\n## Visite a aplicacão\nConfigurei uma pequena maquina no heroku para que fosse possível testar a aplicacão rodando em um ambiente de producão, para acessar e dar uma olhada sem precisar rodar na sua máquina visite: https://thebooklovers.herokuapp.com\n\n## Duvidas e Sugestões\nMe envie um email em: opedrosouza@hotmail.com para saber mais detalhes e conversarmos um pouco.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopedrosouza%2Fbooklovers","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fopedrosouza%2Fbooklovers","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopedrosouza%2Fbooklovers/lists"}