Skip to content

slack vivliostyle pub 2020 04 26

akabeko edited this page Jun 14, 2020 · 1 revision

2020-04-26

Time (UTC) Icon Name Message
03:26 uetchy 14時から15時ということでやってみて、短すぎたら次回は長めに、長過ぎたら短めに設定しなおしましょう。
03:26 Kiara Translation 🇬🇧: Try it from 14:00 to 15:00, and if it is too short, set it longer next time, and if it is too long, set it short.
03:38 ogwata 本日の会議、冒頭数分をお借りして、一般社団法人ビブリオスタイルの活動報告と今後の展望について報告させてください。
03:38 Kiara Translation 🇬🇧: I would like to borrow the first few minutes of today's meeting to report on the activity report of Vibrio Style and the future outlook.
04:50 uetchy ルームURL👉 https://meet.google.com/fnc-cpem-jzp
Real-time meetings by Google. Using your browser, share your video, desktop, and presentations with teammates and customers.
04:50 Kiara Translation 🇬🇧: Room URL: point_right: https://meet.google.com/fnc-cpem-jzp
05:02 akabeko 14:00 - 15:00 予定でオンラインミーティング開始
05:02 Kiara Translation 🇬🇧: 14:00_15:00 Scheduled online meeting start
05:02 akabeko まずは本プロジェクトの現状と今後の方針など
05:02 Kiara Translation 🇬🇧: First, the current status of this project and future policies
05:03 akabeko GitHub Sponsors を有効にした
早速入金あり、これは一般社団法人ビブリオスタイルの口座に振り込まれたとのこと
05:04 akabeko IPA の話、事業報告を作成中
05:04 Kiara Translation 🇬🇧: IPA talk, preparing business report
05:04 akabeko NPO のテンプレを参考にしてほしいとのこと、次年度の事業計画が必要
05:04 Kiara Translation 🇬🇧: I want you to refer to the template of NPO, you need a business plan for the next year
05:05 akabeko テンプレそのままでなくてもよい、メンバー部分を抜く、今はここに各人の本名が入っている
05:05 Kiara Translation 🇬🇧: You don't have to keep the template as it is, pull out the members, now each person's real name is entered
05:05 akabeko 報告書は適宜、メンバーに共有して内容確認していただく予定
05:05 Kiara Translation 🇬🇧: We plan to share the report with members and check the contents as appropriate.
05:06 akabeko 公式サイトのスポンサー募集でクレジットカード登録関係はまだ有効にしていない
05:06 Kiara Translation 🇬🇧: Credit card registration relationship has not been activated yet due to recruitment of official website sponsors
05:06 akabeko ↑は Vivliostyle の公式サイトの話
05:06 Kiara Translation 🇬🇧: ↑ is the story of the official website of Vivliostyle
05:07 akabeko https://congrant.com/jp/ を利用したい
congrant(コングラント)はNPOのための寄付募集・支援者管理ツールです。コングラントでは寄付・会員の募集ページを簡単に作成でき、クレジットカード決済も連携しています。資金・会員情報は自動的に反映され、管理も簡単です。コングラントは日本全国の小さな活動を真剣に応援します。
05:07 Kiara Translation 🇬🇧: I want to use https://congrant.com/jp/
05:08 uetchy https://www.techsoupjapan.org/node/789122
05:08 Kiara Translation 🇬🇧: https://www.techsoupjapan.org/node/789122
🇯🇵: https://www.techsoupjapan.org/node/789122
05:08 akabeko 未踏が不合格だった場合のプラン B を検討しておく必要あり
05:08 Kiara Translation 🇬🇧: It is necessary to consider plan B when unexplored fails
05:09 akabeko ビジネスコンテンスト系を探すのが近道だと考えている
05:09 Kiara Translation 🇬🇧: I think it's a shortcut to find a business content system
05:09 akabeko 例えば https://change-saitama.com/ など
あなたの新しいビジネスが、世界を、業界を、地域を変えていく
05:09 Kiara Translation 🇬🇧: For example https://change-saitama.com/
05:09 uetchy http://ivs-launchpad.mystrikingly.com/
Infinity Ventures Summit Launch Pad
05:09 Kiara Translation 🇬🇧: http://ivs-launchpad.mystrikingly.com/
🇯🇵: http://ivs-launchpad.mystrikingly.com/
Infinity Ventures Summit Launch Pad
05:09 akabeko 他にこういうものがあれば教えてほしい
05:10 Kiara Translation 🇬🇧: If there is something else like this, please tell me
05:11 akabeko 有名なのは @uetchy さんが挙げた↑の 2 つ
05:11 Kiara Translation 🇬🇧: Two of ↑ which is famous is
05:12 akabeko Vivliostyle としては出資と寄付の違いも考慮する必要あり
05:12 Kiara Translation 🇬🇧: Vivliostyle also needs to consider the difference between investment and donation
05:13 akabeko この手のコンテストは学生や 30 歳までなど、年齢枠を限定していることもある
05:13 Kiara Translation 🇬🇧: This kind of contest may have limited age limits, such as students and up to 30 years old
05:14 akabeko NPO、例えば Mozilla はどう資金調達しているのだろう?
org と corp を分けて後者で事業する手もある
05:14 Kiara Translation 🇬🇧: How are NPOs like Mozilla funding?
There is also a way to split org and corp and operate in the latter.
05:15 akabeko 個人メモ
予め時間を決めてミーティングするならアジェンダと各項目の想定時間を大雑把でもよいので定義しておいたほうがいいです
05:15 Kiara Translation 🇬🇧: Personal note
If you decide the time in advance and have a meeting, it is better to define the agenda and the estimated time of each item so it can be roughly
05:16 akabeko ビジネスコンテストなどの情報があれば、このチャンネルに情報提供してほしい
05:16 Kiara Translation 🇬🇧: If you have information such as business contests, please provide information to this channel
05:17 akabeko 現在の審査の通知は 5/12 に発表、5/17 に二次審査
05:17 Kiara Translation 🇬🇧: Notification of the current audit will be announced on May 12 and the secondary audit will be held on May 17
05:17 akabeko 5/14 までの通知とのこと
05:17 Kiara Translation 🇬🇧: Notification until 5/14
05:18 akabeko 二次審査とは?
05:18 Kiara Translation 🇬🇧: What is the secondary examination?
05:18 akabeko チームでプレゼンなどを実施する
05:18 Kiara Translation 🇬🇧: Presenting with team
05:18 akabeko オンライン実施可能か?
可能
05:18 Kiara Translation 🇬🇧: Is it possible to carry out online?
Possible
05:19 akabeko 10 分で概要をプレゼンする、時間的な制約から内容の絞り込みが重要
05:19 Kiara Translation 🇬🇧: Presenting the outline in 10 minutes, it is important to narrow down the content due to time constraints
05:19 akabeko <http://note.com
05:19 Kiara Translation 🇬🇧: Save data to GitHub using <http: //note.com
05:20 akabeko エディターに monaco を導入した
05:20 Kiara Translation 🇬🇧: Introduced monaco to the editor
05:20 akabeko エディターの Git ブランチを参照のこと
05:20 Kiara Translation 🇬🇧: See the editor's Git branch
05:21 akabeko Git リポジトリーのディレクトリー構成について議論中
05:21 Kiara Translation 🇬🇧: Discussing directory structure of Git repository
05:21 akabeko React Vivliostyle Viewer を実装中
05:21 Kiara Translation 🇬🇧: Implementing React Vivliostyle Viewer
05:22 akabeko Vivliostyle Viewer の React Component 版?
05:22 Kiara Translation 🇬🇧: React Component version of Vivliostyle Viewer?
05:22 akabeko これの置き場所をどうするか?
とりあえず packages へ置く。
05:22 Kiara Translation 🇬🇧: What do you do with the place of this?
Put it in the packages for now.
05:23 spring-raining https://vivliostyle.slack.com/files/UAFGMSJJK/F012H73MQDB/image_from_ios.jpg
05:23 akabeko 来週までに @uetchy さん部分を @spring-raining さん部分へ merge したい
05:23 Kiara Translation 🇬🇧: I want to merge 3rd part into 3rd part by next week
05:24 akabeko 認証関連の設計について
05:24 Kiara Translation 🇬🇧: Certification related design
05:24 akabeko OAuth App と GitHub App を個別に用意しようと考えている
05:24 Kiara Translation 🇬🇧: Thinking to have OAuth App and GitHub App separately
05:25 akabeko OAuth App: Firebase Auth に使用
GitHub App: 実際のドキュメント操作 (Vivliostyle 管轄のコンテンツ?) に使用
05:25 Kiara Translation 🇬🇧: OAuth App: Used for Firebase Auth
GitHub App: Used for actual document operations (content under Vivliostyle jurisdiction?)
05:30 akabeko 処理遷移としては、はじめに Vivliostyle へログインさせて、その後に GitHub Apps をインストールさせる
05:30 Kiara Translation 🇬🇧: As a process transition, first log in to Vivliostyle and then install GitHub Apps.
05:31 akabeko GitHub Apps も OAuth をサポートしている
しかし Firebase Auth 経由で取得した token は見られないので OAuth App が必要と考えている
05:31 Kiara Translation 🇬🇧: GitHub Apps also supports OAuth
However, I can't see the token obtained via Firebase Auth, so I think I need OAuth App.
05:32 takanakahiko https://firebase.google.com/docs/auth/web/github-auth
05:32 Kiara Translation 🇬🇧: https://firebase.google.com/docs/auth/web/github-auth
🇯🇵: https://firebase.google.com/docs/auth/web/github-auth
05:32 akabeko ↑の方法で取得できるのでは?とのこと
05:32 Kiara Translation 🇬🇧: Is it possible to obtain by the method of ↑? That
05:33 akabeko ログイン時のイベント ハンドラーで token 取れるので、これを処理して保存する手もありそう
05:33 Kiara Translation 🇬🇧: Since you can get the token in the event handler at the time of login, there seems to be a way to process and save this
05:34 akabeko token はリポジトリー毎にしたほうが、リポジトリー単位でアクセス制御できるので好ましいのではないか?
05:34 Kiara Translation 🇬🇧: Isn't it preferable to use a token for each repository because access control can be performed for each repository?
05:35 uetchy https://github.com/vivliostyle/vivliostyle-pub/pull/8
05:35 Kiara Translation 🇬🇧: https://github.com/vivliostyle/vivliostyle-pub/pull/8
🇯🇵: https://github.com/vivliostyle/vivliostyle-pub/pull/8
05:39 akabeko node-git はビルド時間が長いので isomorphic-git のほうがよいかも、移行を検討したい
05:39 Kiara Translation 🇬🇧: Since node-git has a long build time, isomorphic-git may be better, I would like to consider migration
05:41 akabeko 次回ミーティングの次週が未踏関連なので、直近は隔週ではなく毎週にしたい
05:41 Kiara Translation 🇬🇧: Since the next week of the next meeting is unexplored, I want to make it the most recent week instead of biweekly
05:42 akabeko 5/3 までに各人の実装を merge して一つにしたい
05:42 Kiara Translation 🇬🇧: I want to merge each person's implementation into one by 5/3
05:43 uetchy https://github.com/organizations/vivliostyle/settings/apps
05:43 Kiara Translation 🇬🇧: https://github.com/organizations/vivliostyle/settings/apps
🇯🇵: https://github.com/organizations/vivliostyle/settings/apps
05:43 uetchy webhookのテストに便利なサービス https://smee.io/
05:43 Kiara Translation 🇬🇧: Service useful for testing webhooks https://smee.io/
05:49 akabeko Firebase の権限、開発メンバーは持っているか?
確認した、持っている
05:49 Kiara Translation 🇬🇧: Do you have Firebase privileges and development members?
Confirmed, have
05:51 GitHub
Subscribed to <https://github.com/vivliostyle/vivliostyle-pub
05:52 uetchy https://www.gatsbyjs.com/
The Future is Fast
05:52 Kiara Translation 🇬🇧: https://www.gatsbyjs.com/
🇯🇵: https://www.gatsbyjs.com/
05:59 akabeko GraphQL と REST のどちらにするか検討中
これらの選択は Functions に影響あり
05:59 Kiara Translation 🇬🇧: Considering whether to use GraphQL or REST
These choices affect Functions
06:01 akabeko Vivliostyle Viewer で処理する際に URI 上のファイル参照関係が解決されていなければならない
サーバー側の設計として制約になる
06:01 Kiara Translation 🇬🇧: File reference relationship on URI must be resolved when processing with Vivliostyle Viewer
It becomes a constraint as a server side design
06:02 akabeko viola-pub はどうやっていたか
06:02 Kiara Translation 🇬🇧: how was viola-pub
06:03 akabeko 外部サービスで処理していた、これを自前で実装するのは厳しいかも
06:03 Kiara Translation 🇬🇧: It was handled by an external service, it may be difficult to implement this by yourself
06:03 akabeko ↑この辺、勘違いしてるかもしれないので誤りがあれば補足おねがいします
06:03 Kiara Translation 🇬🇧: ↑ I may be misunderstanding around here, so if there is an error, please supplement
06:05 akabeko 各人がやることを GitHub issues に登録する
06:05 Kiara Translation 🇬🇧: Register what everyone does in GitHub issues
06:11 akabeko 次回は来週日曜 14:00 - 15:00 で
06:11 Kiara Translation 🇬🇧: Next time next Sunday at 14:00_15:00
06:12 akabeko 定刻になったので終了します
みなさんお疲れさまでした
06:12 Kiara Translation 🇬🇧: It's on time, so it ends
Thank you everyone
06:13 akabeko ミーティング後の補足として viola のエディター設計に関する説明中
06:13 Kiara Translation 🇬🇧: Viola's editor design is being explained as a supplement after the meeting
06:20 spring-raining https://github.com/violapub/viola/blob/master/src/misc/project.js
```
import { GraphQLClient } from 'graphql-request';
import axios from 'axios';
import Tar from 'tarts';
import untar from 'js-untar';
import * as gz from 'jsziptools/gz';
import toml from 'toml';
import shortid from 'shortid';
import { NotLoggedInError, ProjectNotFoundError, TemplateNotFoundError, CelloServerConnectionError } from './error';

const {
REACT_APP_CELLO_HOST_URL,
} = process.env;

const API_SESSION = REACT_APP_CELLO_HOST_URL + '/auth/session';
const API_GRAPHQL = REACT_APP_CELLO_HOST_URL + '/graphql';
const API_PROJECT_DOWNLOAD = REACT_APP_CELLO_HOST_URL + '/api/1/project/download';
const API_PROJECT_UPLOAD = REACT_APP_CELLO_HOST_URL + '/api/1/project/upload';
const API_PROJECT_COMMIT = REACT_APP_CELLO_HOST_URL + '/api/1/project/commit';
const DIRECTORY_PROJECTS = '/viola/project';
const DIRECTORY_DEMO_PROJECT = '/viola/demo';
const DIRECTORY_BATA_PROJECT = '/viola/beta';
const DOWNLOAD_PROJECT_TIMEOUT = 20 * 1000;
const UPLOAD_PROJECT_TIMEOUT = 15 * 1000;

const FilerEvents = {
Create: 'create',
Move: 'move',
Delete: 'delete',
};

const Bramble = window.Bramble;

class FilerImpl {
open = async (filename, option = 'utf8') => {
const { fs } = this;
return new Promise((res, rej) => {
fs.readFile(filename, option, (err, data) => {
if (err) rej(err);
else res(data);
});
});
}

save = async (filename, data, override = false, writeOptions = null) => {
const { path } = this;

if (!override) {
const fileExists = await this.exists(filename);
if (fileExists) {
throw Error(file '${filename}' already exists);
}
}
await this.mkdirp(path.dirname(filename));
await this.writeFile(filename, data, writeOptions);
};

stat = (path) => {
const { fs } = this;
return new Promise((res, rej) => {
fs.stat(path, (err, stats) => {
if (err) {
if (err.code === 'ENOENT') {
res(null); // not found
} else {
rej(err);
}
}
else res(stats);
});
});
};

exists = (path) => {
const { fs } = this;
return new Promise((res, rej) => {
fs.exists(path, res);
});
};

rename = (oldPath, newPath) => {
const { fs } = this;
return new Promise((res, rej) => {
fs.rename(oldPath, newPath, err => {
if (err) rej(err);
else res();
});
});
};

mkdirp = (dirname) => {
const { sh } = this;
return new Promise((res, rej) => {
sh.mkdirp(dirname, err => {
if (err) rej(err);
else res(dirname);
});
});
};

writeFile = async (filename, data, options) => {
const { fs } = this;
return new Promise((res, rej) => {
fs.writeFile(filename, data, options, err => {
if (err) rej(err);
else res(data);
});
});
};

removeFile = async (filename, recursive = false) => {
const { sh } = this;
return new Promise((res, rej) => {
sh.rm(filename, { recursive }, (err) => {
if (err) rej(err);
else res();
});
});
};

readdir = async (path) => {
const { fs } = this;
return new Promise((res, rej) => {
fs.readdir(path, (err, files) => {
if (err) rej(err);
else res(files);
});
});
};
}

export class SyncManager extends FilerImpl {
constructor(args) {
super(args);
const { path, fs, sh, FilerBuffer, session, projectId } = args;
this.path = path;
this.fs = fs;
this.sh = sh;
this.FilerBuffer = FilerBuffer;
this.session = session;
this.projectId = projectId;

this.syncingSemaphore = 1;
this.queuedFilerEvents = [];
this.requestFilerEvents = [];
this.stalledFilerEvents = [];
this.unsyncedFiles = {};
}

// Reduce event duplications by the time series
static retroactFilerEvents(events) {
function find(path, node) {
if (node === true) {
return true;
} else if (typeof node !== 'object'
06:20 Kiara Translation 🇬🇧: https://github.com/violapub/viola/blob/master/src/misc/project.js
🇯🇵: https://github.com/violapub/viola/blob/master/src/misc/project.js
06:23 akabeko Vivliostyle Viewer をホストするため iframe を利用している
↑はそのあたりの実装の参考になるだろう
06:23 Kiara Translation 🇬🇧: Using iframe to host Vivliostyle Viewer
↑ will be a reference for implementation around that
06:44 ogwata @akabeko
冒頭の報告ですが、準備用のメモを貼っておきます。
太字が大項目です。

- GitHub Sponsor 開始
- 公式サイトの「GitHubスポンサーに寄付をする」のボタンもアクティブに
-  https://vivliostyle.org/ja/about-us/#Vivliostyle%20%E3%81%AE%E3%82%B9%E3%83%9D%E3%83%B3%E3%82%B5%E3%83%BC%E3%81%AB%E3%81%AA%E3%82%8A%E3%81%BE%E3%81%9B%E3%82%93%E3%81%8B
- 近日中にブログを公開し、宣伝開始
- 昨日村上の口座に初入金
- テックスープの審査通過を目指し、事業報告書を作成中
- 日本NPOセンターのアニュアルレポートを模範とする
- その中に次年度の事業計画を入れることになっている
- そこで、未踏の申請書類「提案プロジェクトの詳細説明」を含めてよいか
- 通過した際に利用可能なサービス
- AWSなど、Vivliostyle.Pubに使えそうなものがあるので要チェック
-  https://www.techsoupjapan.org/product
-  https://www.techsoupjapan.org/node/789122
- 「クレジットカード決済で寄付をする」について
- 公式サイトでまだアンアクティブ
- 従来、コングラントというサービスを使って寄付を集めようと考えていた
-  https://congrant.com/jp/
- しかし、テックスープのサービスメニューに、Google 寄付ツールがある
- そこで、コングラントの利用はとりやめることに
- 最優先課題でテックスープの承認に取り組み、通過したらそちらを利用することに
- 未踏が不合格だった際のプランBを考えたい
- 現状は事業構想と開発要員、そして推進する組織があり、ないのは資金だけ
- そういう状況に一番適合するのはビジネスコンテストへの応募ではないか
- これはというコンテストをまだ見つけられていないが、たとえば下記のようなもの
-  https://change-saitama.com/
- ただ、今年も開催するのか不安
Vivliostyle — open source, web browser based CSS typesetting engine project

congrant(コングラント)はNPOのための寄付募集・支援者管理ツールです。コングラントでは寄付・会員の募集ページを簡単に作成でき、クレジットカード決済も連携しています。資金・会員情報は自動的に反映され、管理も簡単です。コングラントは日本全国の小さな活動を真剣に応援します。

あなたの新しいビジネスが、世界を、業界を、地域を変えていく
07:43 shinyu
- 昨日村上の口座に初入金
訂正お願い。これは村上の口座にではなくて、一般社団法人ビブリオスタイルの口座にです。
正確に説明すると、Vivliostyle組織のGitHub Sponsorsの前に、MurakamiShinyuアカウントのGitHub Sponsorsでの入金があって、その入金先も一般社団法人ビブリオスタイルの口座にしていたということです。Vivliostyle組織のGitHub Sponsorsから入金があるのも、まだ先のことです。
07:43 Kiara Translation 🇬🇧: & gt;-Yesterday, the first deposit to Murakami's account
Please correct me. This is not a Murakami account, but a Vibrio style account.
To be precise, there is a deposit at the GitHub Sponsors of the Murakami Shinyu account before the GitHub Sponsors of the Vivliostyle organization, and the deposit destination was also the account of the general incorporated association Vibrio style. It's not long before we receive a deposit from GitHub Sponsors, a Vivliostyle organization.
07:53 ogwata 失礼。
口頭ではそう言ったのですが、草稿が間違っていました。
07:53 Kiara Translation 🇬🇧: Excuse me.
Orally I said, but the draft was wrong.
08:17 akabeko ログを修正しました
対訳は編集できないようなので削除済みです
08:17 Kiara Translation 🇬🇧: Fixed the log
The translation has been deleted because it seems that you can not edit it
Clone this wiki locally