Giter Site home page Giter Site logo

hackershare / hackershare Goto Github PK

View Code? Open in Web Editor NEW
556.0 15.0 50.0 4.29 MB

Hackershare is a powerful social bookmarking service and a knowledge-sharing community, with advanced search and tag management feature

Home Page: https://hackershare.dev

License: MIT License

Ruby 39.52% JavaScript 3.54% HTML 46.13% Shell 1.11% SCSS 0.35% PLpgSQL 8.79% Dockerfile 0.55%
hackernews delicious pocket reddit bookmark rss rss-feed producthunt

hackershare's Introduction

Hackershare

Social bookmarks website for hackers. Alternative to delicious, hackernews, pocket. Hackershare is the open source software which powers hackershare.dev

There is also a project introduction article for your reference: hackershare: Social bookmarking reinvented!

CI

Dependencies

Setup local

Setup by Docker

  1. Make a copy of the example environment file and modify as required [optional].
cp .env .env.local
  1. Build the images.
docker-compose build
  1. After building the image or after destroying the stack you would have to reset the database using the following command.
docker-compose run --rm rails bundle exec rails db:create
docker-compose run --rm rails bundle exec rails db:migrate
docker-compose run --rm rails bundle exec rails db:seed_fu

or 

docker-compose run --rm rails bundle exec rails db:reset
docker-compose run --rm rails bundle exec rails db:seed_fu
  1. Run app
docker-compose up
  1. stop app
docker-compose down

Deployment

  • Nginx conf sync: bundle exec cap production puma:nginx_config
  • Deploy: bundle exec cap production deploy

Chrome extension

Refresh sitemap

  • bundle exec rake sitemap:refresh

hackershare's People

Contributors

benjaminx avatar bindiry avatar cuilei5205189 avatar dependabot[bot] avatar hooopo avatar huacnlee avatar izayl avatar nimrapro avatar songhuangcn avatar spekulatius avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

hackershare's Issues

preset rss list

Unable to docker-compose build

The docker-compose.yaml file should be fixed or at least we should have more instructions, follows the output of a build attempt:

ubuntu@bengal:~/WORKSPACE/hackershare$ sudo docker compose build
WARN[0000] The "RAILS_PORT" variable is not set. Defaulting to a blank string.
[+] Building 1.1s (7/8)
 => [hackershare-webpack:development internal] load build definition from webpack.Dockerfile                       0.0s
 => => transferring dockerfile: 161B                                                                               0.0s
 => [hackershare:development internal] load build definition from Dockerfile                                       0.0s
 => => transferring dockerfile: 2.31kB                                                                             0.0s
 => [hackershare-rails:development internal] load build definition from Dockerfile                                 0.0s
 => => transferring dockerfile: 2.31kB                                                                             0.0s
 => [hackershare-webpack:development internal] load .dockerignore                                                  0.0s
 => => transferring context: 252B                                                                                  0.0s
 => [hackershare-rails:development internal] load .dockerignore                                                    0.0s
 => => transferring context: 252B                                                                                  0.0s
 => [hackershare:development internal] load .dockerignore                                                          0.0s
 => => transferring context: 252B                                                                                  0.0s
 => ERROR [hackershare-webpack:development internal] load metadata for docker.io/library/hackershare:development   0.9s
 => CANCELED [hackershare-rails:development internal] load metadata for docker.io/library/ruby:2.7.2-alpine        1.0s
------
 > [hackershare-webpack:development internal] load metadata for docker.io/library/hackershare:development:
------
failed to solve: rpc error: code = Unknown desc = failed to solve with frontend dockerfile.v0: failed to create LLB definition: pull access denied, repository does not exist or may require authorization: server message: insufficient_scope: authorization failed

宣传帖记录

Ruby China

V2EX

知乎

微信公众号

#SEO 对于UGC生成的出站链接都应该添加`nofollow`

查看了下生成的HTML代码,现在的做法是对于用户分享的bookmark都通过生成一个/goto/链接做302跳转。这会带来一些SEO问题:

因为搜索引擎抓取时发现/goto/链接做了302跳转到新的地址了,所以它会继续去抓取目标页面的内容,然后收录索引,这就会产生重复内容的问题,通过在Google执行site:https://hackershare.dev/ goto/ bmpi就会发现它已经收录了两篇文章,并且用的链接是hackershare的链接,但是内容和https://www.bmpi.dev博客的链接内容完全一样,由于博客的内容要早于hackershare的内容,Google就会认为hackershare在复制其他站的内容,从而对hackershare做一些惩罚,可能会标记为垃圾站。

最佳的做法就是给/goto/链接做一个nofollow的标签属性,这方面可以参考Hacker News的做法,一般的分享站或者UGC的站都会对出站链接做nofollow

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.