Giter Site home page Giter Site logo

team-blog-hub's Introduction

Team Blog Hub

Demo

企業/チームのためのブログ・スターターです。Forkしてご自由にお使いください。

ブログのRSSのURLを登録することで、チームメンバーの投稿を一覧にまとめて表示します。Zenn、Qiita、Medium、note、はてなブログなど、RSSフィードを取得できるサイトであれば、メンバーは好きな場所に投稿できます。

詳しくは下記の記事をご覧ください。

チーム個々人のテックブログをRSSで集約するサイトを作った →

Demo

https://team-blog-hub.vercel.app

Development

$ yarn install
$ yarn build
$ yarn dev
  • サイトの基本設定はsite.config.tsで行います。
  • メンバーのプロフィールやRSSの登録はmembers.tsで行います。
  • 配色を変更するにはsrc/styles/variables.scssを書き換えます。
  • ロゴなどの画像を変更するにはpublic内のファイルを置き換えます。

その他、ご自由にコードを書き換えてください。

Deployment

VercelやNetlifyにデプロイすることを推奨します。yarn buildを実行することで、RSSからの投稿データの取得とサイトのビルドが行われます。1日に1回などの頻度で自動デプロイするのが良いかもしれません。

Licence

MIT

team-blog-hub's People

Contributors

catnose99 avatar empitsu avatar matsubo avatar yamanoku avatar yoshiko-pg 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

team-blog-hub's Issues

記事のフィルターをタイトルや本文から行いたい

記事のフィルターに関して、現状は includeUrlRegexexcludeUrlRegex で行っていると思いますが、これを item.titleitem.contentSnippet でも行いたいと考えてます。(理想はその記事のHTMLを取得しにいって、その中身で判断をしたい)

理由としては、例えばメンバーが業務委託などで複数社関わっているケースが多く、そうなった場合別の会社コンテキストな内容が載ってしまうのはよくないと考えているからです。

現状はこちらでソースコードを書き換えて運用する予定ですが、テンプレートの方でも可能であれば対応していただきたいと思いましたがいかがでしょうか?

Vercelでのビルドエラー

2日前から突然、Vercelでビルドエラーになり処理が止まるようになりました。
それ以前は正常にビルド出来ていて、コードも変更していません。

[10:52:05.989] Cloning github.com/btbf/team-blog-hub (Branch: master, Commit: 380cc60)
[10:52:06.716] Cloning completed: 725.914ms
[10:52:06.891] Installing build runtime...
[10:52:09.098] Build runtime installed: 2.206s
[10:52:09.402] No Build Cache available
[10:52:09.679] Installing dependencies...
[10:52:09.997] yarn install v1.22.17
[10:52:10.095] [1/4] Resolving packages...
[10:52:10.542] [2/4] Fetching packages...
[10:52:26.321] [3/4] Linking dependencies...
[10:52:26.334] warning " > @typescript-eslint/[email protected]" has unmet peer dependency "eslint@^5.0.0 || ^6.0.0 || ^7.0.0".
[10:52:26.334] warning "@typescript-eslint/eslint-plugin > @typescript-eslint/[email protected]" has unmet peer dependency "eslint@*".
[10:52:26.335] warning " > @typescript-eslint/[email protected]" has unmet peer dependency "eslint@^5.0.0 || ^6.0.0 || ^7.0.0".
[10:52:26.335] warning " > [email protected]" has unmet peer dependency "eslint@>=3.14.1".
[10:52:26.337] warning " > [email protected]" has unmet peer dependency "eslint@>=5.0.0".
[10:52:26.337] warning " > [email protected]" has unmet peer dependency "eslint@^3 || ^4 || ^5 || ^6 || ^7".
[10:52:26.337] warning " > [email protected]" has unmet peer dependency "eslint@^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0".
[10:52:32.867] [4/4] Building fresh packages...
[10:52:33.592] Done in 23.60s.
[10:52:33.620] Detected Next.js version: 9.5.5
[10:52:33.622] Running "yarn run build"
[10:52:33.981] yarn run v1.22.17
[10:52:34.033] $ run-s build:posts build:next
[10:52:34.616] $ ts-node --project tsconfig.builder.json ./src/builder/posts.ts
[10:52:37.497] (node:551) UnhandledPromiseRejectionWarning: Error: Status code 404
[10:52:37.497] at ClientRequest. (/vercel/path0/node_modules/rss-parser/lib/parser.js:88:25)
[10:52:37.498] at Object.onceWrapper (events.js:520:26)
[10:52:37.499] at ClientRequest.emit (events.js:400:28)
[10:52:37.500] at ClientRequest.emit (domain.js:475:12)
[10:52:37.500] at HTTPParser.parserOnIncomingClient (_http_client.js:647:27)
[10:52:37.500] at HTTPParser.parserOnHeadersComplete (_http_common.js:127:17)
[10:52:37.500] at TLSSocket.socketOnData (_http_client.js:515:22)
[10:52:37.501] at TLSSocket.emit (events.js:400:28)
[10:52:37.501] at TLSSocket.emit (domain.js:475:12)
[10:52:37.501] at addChunk (internal/streams/readable.js:293:12)
[10:52:37.501] (Use node --trace-warnings ... to show where the warning was created)
[10:52:37.502] (node:551) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag --unhandled-rejections=strict (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 2)
[10:52:37.502] (node:551) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
[10:52:37.949] $ next build
[10:52:38.773] Browserslist: caniuse-lite is outdated. Please run:
[10:52:38.773] npx browserslist@latest --update-db
[10:52:38.890] info - Creating an optimized production build...
[10:52:38.912] Attention: Next.js now collects completely anonymous telemetry regarding usage.
[10:52:38.912] This information is used to shape Next.js' roadmap and prioritize features.
[10:52:38.912] You can learn more, including how to opt-out if you'd not like to participate in this anonymous program, by visiting the following URL:
[10:52:38.913] https://nextjs.org/telemetry
[10:52:38.913]
[10:52:42.973] Failed to compile.
[10:52:42.973]
[10:52:42.974] ./src/pages/index.tsx:4:19
[10:52:42.974] Type error: Cannot find module '@.contents/posts.json' or its corresponding type declarations.
[10:52:42.974]
[10:52:42.974] �[0m �[90m 2 | �[39m�[36mimport�[39m �[33mLink�[39m from �[32m"next/link"�[39m�[33m;�[39m�[0m
[10:52:42.974] �[0m �[90m 3 | �[39m�[0m
[10:52:42.974] �[0m�[31m�[1m>�[22m�[39m�[90m 4 | �[39m�[36mimport�[39m posts from �[32m"@.contents/posts.json"�[39m�[33m;�[39m�[0m
[10:52:42.975] �[0m �[90m | �[39m �[31m�[1m^�[22m�[39m�[0m
[10:52:42.975] �[0m �[90m 5 | �[39m�[36mimport�[39m { config } from �[32m"@site.config"�[39m�[33m;�[39m�[0m
[10:52:42.975] �[0m �[90m 6 | �[39m�[36mimport�[39m { �[33mPostItem�[39m } from �[32m"@src/types"�[39m�[33m;�[39m�[0m
[10:52:42.975] �[0m �[90m 7 | �[39m�[36mimport�[39m { �[33mScrollableMembers�[39m } from �[32m"@src/components/ScrollableMembers"�[39m�[33m;�[39m�[0m
[10:52:42.996] error Command failed with exit code 1.
[10:52:42.997] info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
[10:52:43.010] ERROR: "build:next" exited with 1.
[10:52:43.026] error Command failed with exit code 1.
[10:52:43.027] info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
[10:52:43.044] Error: Command "yarn run build" exited with 1

image

members.ts修正後エラーになる

はじめまして、とても素敵なツールを開発頂きありがとうございます!

members.tsにメンバーを追加した後、特定のメンバーでエラーになります。
URLなどリンク切れは無いと思うのですが、いかがでしょうか?

btbf@29f881b

Template Repository機能のご提案

GitHubでは、コミット履歴を共有しないでリポジトリの内容を複製できるテンプレート機能が利用できます。

テンプレートリポジトリを作成する - GitHub Docs

使ってみたところ、コミット履歴が共有されていないので複製元に対してPRを出してしまう、という事故が防げそうでした。

image
(PR作成時に対象リポジトリを選択できないスクショです)

また、テンプレート機能はオン・オフをいつでも切り替えることができます。

私のみならず複数の方が誤って本リポジトリにPRを出されているようなので、試しに本リポジトリをテンプレート化してみるのはいかがでしょうか。ご検討、よろしくお願いいたします。

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.