All Projects → 0918nobita → Tsundoku

0918nobita / Tsundoku

Licence: MIT license
Web App for people having lots of unread tech books

Programming Languages

typescript
32286 projects
HTML
75241 projects
CSS
56736 projects
javascript
184084 projects - #8 most used programming language
shell
77523 projects

Projects that are alternatives of or similar to Tsundoku

ionic-angular-news-app
📋 Ionic-Angular app to fetch news articles from a REST API using Typescript interfaces to define the expected structure of the json objects returned & http service providers. Custom pipes used to modify API news article titles, contents and convert the Universal Time Constant (UTC) date string. Dark mode, Offline Storage of favourite articles & …
Stars: ✭ 21 (-58%)
Mutual labels:  ionic
nuxt-netlifycms-boilerplate
A simple boilerplate for using NetlifyCMS with Nuxt
Stars: ✭ 51 (+2%)
Mutual labels:  netlify
ionic-hockeyapp
Need HockeyApp in your Ionic application, add this package!
Stars: ✭ 19 (-62%)
Mutual labels:  ionic
memberhive
Relationship Management System for churches and organisations
Stars: ✭ 12 (-76%)
Mutual labels:  ionic
pothole detection
By using this app users can report the potholes on road by clicking a photo via our app and if a pothole is detected by Machine Learning modal then it is saved to our Database from where officials can view the specifics like location,reported by and official can resolve the request.User are notified by email for every update regarding their request
Stars: ✭ 17 (-66%)
Mutual labels:  netlify
ionic3-calendar
Ionic Calendar Component
Stars: ✭ 23 (-54%)
Mutual labels:  ionic
ionic-shrinkage
Directive for Ionic 2 to cause headers to shrink & reveal, in parallactic fashion, based on user scrolling.
Stars: ✭ 18 (-64%)
Mutual labels:  ionic
ionic-video-chat-support
Ionic 3 Video and Group Text Chat
Stars: ✭ 19 (-62%)
Mutual labels:  ionic
ionic-cryptocurrency
Ionic cryptocurrency tracker 🚀
Stars: ✭ 22 (-56%)
Mutual labels:  ionic
vuefes-2018
Vue Fes Japan 2018 の Web サイトのソースコードです。ナレッジ共有のために公開します
Stars: ✭ 39 (-22%)
Mutual labels:  netlify
netlify-plugin-image-optim
Optimize images as part of your Netlify build process. Optimizes PNG, JPEG, GIF and SVG file formats.
Stars: ✭ 63 (+26%)
Mutual labels:  netlify
aristotl
A logical fallacy lookup tool
Stars: ✭ 39 (-22%)
Mutual labels:  netlify
portfolio
🌔 My Portfolio site
Stars: ✭ 22 (-56%)
Mutual labels:  netlify
stencil-shimmer
StencilJS component for adding shimmer UI effect to your applications.
Stars: ✭ 14 (-72%)
Mutual labels:  ionic
nuxt-netlify-cms-starter
🏞 A very spartan starter for using Nuxt.js with Netlify CMS.
Stars: ✭ 67 (+34%)
Mutual labels:  netlify
astra-tik-tok
A simple Tik Tok clone running on AstraDB that leverages the Document API.
Stars: ✭ 21 (-58%)
Mutual labels:  netlify
ionic4-boilerplate
🚀 boilerplate for ionic4 with CI based on travis and fastlane. doc and example are provided
Stars: ✭ 25 (-50%)
Mutual labels:  ionic
ionic-chat-tutorial-react
Build a Real-Time Chat App with Ionic, React, and Stream
Stars: ✭ 19 (-62%)
Mutual labels:  ionic
11straps
11straps is a static website boilerplate. It combines Eleventy with Bootstrap 5. 🎉
Stars: ✭ 85 (+70%)
Mutual labels:  netlify
cordova-plugin-amap
Amap Maps plugin for Cordova
Stars: ✭ 51 (+2%)
Mutual labels:  ionic

Tsundoku.tech

Packagist Build Status Maintainability Total alerts Language grade: JavaScript

効率的に技術書を読もう。賢く積読しよう。

  • フロントエンド (Ionic 3, Angular 6, RxJS v6, NgRx, AngularFire, FirebaseUI)
  • フロントエンドの静的ファイルは Netlify でホスティング
  • バックエンド (Cloud Functions, Cloud Firestore, Algolia)
  • Firebase Authentication でアカウントを管理

スクリーンショット1

スクリーンショット2

スクリーンショット3

ローカル開発環境の構築

まず、 yarn をインストールして下さい。

その後、以下のコマンドを実行して Firebase CLI の初期設定を行って下さい。

# npm を利用している場合は npm i -g firebase-tools
$ yarn global add firebase-tools

$ firebase login
# Google アカウントでログインして下さい

次に、以下のコマンドを実行して Tsundoku のソースコードの取得と依存パッケージのインストールを行って下さい。
client ディレクトリと functions ディレクトリは分離された npm プロジェクトです。
shared ディレクトリ内の .ts 形式のソースファイルは、この 2 つの npm プロジェクトで共有されます。

$ git clone https://github.com/TsundokuApp/Tsundoku
$ cd Tsundoku/client

# npm を利用している場合は npm i
$ yarn install

$ cd ../functions
$ yarn install

最後に、client/src/app/config.tsfunctions/src/config.ts を手動で作成して下さい。
どちらも API キー等をエクスポートするものです。

client/src/app/config.ts の書き方

// Firebase プロジェクトを作成し、各キーを取得してここに書き込んでください
export const firebaseConfig = {
  apiKey: 'xxxxxxxxxxxxxxxxxxxx',
  authDomain: 'xxxxxxxxxxxxxxxxxxxx',
  databaseURL: 'xxxxxxxxxxxxxxxxxxxx',
  projectId: 'xxxxxxxxxxxxxxxxxxxx',
  storageBucket: 'xxxxxxxxxxxxxxxxxxxx',
  messagingSenderId: 'xxxxxxxxxxxxxxxxxxxx'
};

// Algolia アカウントを作成し、App ID と (クライアント用) API キーを取得した後、
// スキル情報を蓄積するインデックスを作成して、それぞれここに書き込んでください
export const algoliaConfig = {
  appId: 'XXXXXXXXXX',
  apiKey: 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx',
  indexName: 'xxxxx'
};

functions/src/config.ts の書き方

// Google Books API の API キーを取得してここに書き込んでください
export const apiKey = 'xxxxxxxxxxxxxxxxxxxx';

// appId, indexName: 上記 algoliaConfig と同じ値を書き込んでください
// apiKey: Admin API キーを書き込んでください (クライアント用とは異なります)
export const algoliaAdminConfig = {
  appId: 'XXXXXXXXXX',
  apiKey: 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx',
  indexName: 'xxxxx'
};

client の開発用サーバの起動

以下のコマンドを実行すると Ionic App Scripts が提供する start コマンドが実行され、
開発用サーバが起動し、ブラウザの新規タブで localhost:8100 のページが表示されます。

ソースファイルを変更すると自動でビルドし直し、それが完了するとブラウザも自動でリロードされます。
※ たまにバグるので、その時は端末上で Ctrl + C でコマンドの実行を停止し、再度 start コマンドを実行してください。

$ cd client

# npm を利用している場合は npm run start
$ yarn start

細かな仕様や DB の設計などについては、Reference リポジトリを参照して下さい。

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].