Skip to content
Permalink
Browse files

Add $HOME

  • Loading branch information...
takonomura authored and isucon committed Sep 8, 2019
0 parents commit 91327c03cb68e4d071dd30aee50ffafcdeb91bc3
Showing with 44,071 additions and 0 deletions.
  1. +19 −0 .bash_profile
  2. +117 −0 .bashrc
  3. +4 −0 .config/configstore/update-notifier-npm.json
  4. +62 −0 .gitignore
  5. +27 −0 .profile
  6. +5 −0 env.sh
  7. +19 −0 isucari/webapp/README.md
  8. +76 −0 isucari/webapp/docs/APPLICATION_SPEC.md
  9. +201 −0 isucari/webapp/docs/EXTERNAL_SERVICE_SPEC.md
  10. BIN isucari/webapp/docs/images/1-1.png
  11. BIN isucari/webapp/docs/images/2-1.png
  12. BIN isucari/webapp/docs/images/2-2.png
  13. BIN isucari/webapp/docs/images/3-1.png
  14. BIN isucari/webapp/docs/images/3-2.png
  15. BIN isucari/webapp/docs/images/logo.png
  16. +23 −0 isucari/webapp/frontend/.gitignore
  17. +8 −0 isucari/webapp/frontend/.prettierrc.js
  18. +2 −0 isucari/webapp/frontend/.storybook/addons.js
  19. +19 −0 isucari/webapp/frontend/.storybook/config.tsx
  20. +11 −0 isucari/webapp/frontend/.storybook/webpack.config.js
  21. +28 −0 isucari/webapp/frontend/README.md
  22. +17,726 −0 isucari/webapp/frontend/package-lock.json
  23. +90 −0 isucari/webapp/frontend/package.json
  24. BIN isucari/webapp/frontend/public/favicon.png
  25. +15 −0 isucari/webapp/frontend/public/index.html
  26. BIN isucari/webapp/frontend/public/internal_server_error.png
  27. BIN isucari/webapp/frontend/public/logo.png
  28. +15 −0 isucari/webapp/frontend/public/manifest.json
  29. BIN isucari/webapp/frontend/public/not_found.png
  30. +33 −0 isucari/webapp/frontend/src/App.css
  31. +9 −0 isucari/webapp/frontend/src/App.test.tsx
  32. +11 −0 isucari/webapp/frontend/src/App.tsx
  33. +24 −0 isucari/webapp/frontend/src/actionHelper/ajaxErrorHandler.ts
  34. +23 −0 isucari/webapp/frontend/src/actionHelper/responseChecker.ts
  35. +49 −0 isucari/webapp/frontend/src/actions/actionTypes.ts
  36. +85 −0 isucari/webapp/frontend/src/actions/authenticationActions.ts
  37. +153 −0 isucari/webapp/frontend/src/actions/buyAction.ts
  38. +25 −0 isucari/webapp/frontend/src/actions/errorAction.ts
  39. +106 −0 isucari/webapp/frontend/src/actions/fetchItemAction.ts
  40. +123 −0 isucari/webapp/frontend/src/actions/fetchTimelineAction.ts
  41. +119 −0 isucari/webapp/frontend/src/actions/fetchTransactionsAction.ts
  42. +110 −0 isucari/webapp/frontend/src/actions/fetchUserItemsAction.ts
  43. +168 −0 isucari/webapp/frontend/src/actions/fetchUserPageDataAction.ts
  44. +11 −0 isucari/webapp/frontend/src/actions/locationChangeAction.ts
  45. +74 −0 isucari/webapp/frontend/src/actions/postBumpAction.ts
  46. +78 −0 isucari/webapp/frontend/src/actions/postCompleteAction.ts
  47. +95 −0 isucari/webapp/frontend/src/actions/postItemEditAction.ts
  48. +78 −0 isucari/webapp/frontend/src/actions/postShippedAction.ts
  49. +84 −0 isucari/webapp/frontend/src/actions/postShippedDoneAction.ts
  50. +77 −0 isucari/webapp/frontend/src/actions/registerAction.ts
  51. +81 −0 isucari/webapp/frontend/src/actions/sellingItemAction.ts
  52. +102 −0 isucari/webapp/frontend/src/actions/settingsAction.ts
  53. +11 −0 isucari/webapp/frontend/src/actions/snackBarAction.ts
  54. +49 −0 isucari/webapp/frontend/src/components/BasePageComponent.tsx
  55. +20 −0 isucari/webapp/frontend/src/components/ErrorMessageComponent.tsx
  56. +36 −0 isucari/webapp/frontend/src/components/Header/Header.stories.tsx
  57. +180 −0 isucari/webapp/frontend/src/components/Header/Header.tsx
  58. +1 −0 isucari/webapp/frontend/src/components/Header/index.tsx
  59. +32 −0 isucari/webapp/frontend/src/components/Item/Item.stories.tsx
  60. +47 −0 isucari/webapp/frontend/src/components/Item/Item.tsx
  61. +1 −0 isucari/webapp/frontend/src/components/Item/index.tsx
  62. +137 −0 isucari/webapp/frontend/src/components/ItemBuyFormComponent.tsx
  63. +52 −0 isucari/webapp/frontend/src/components/ItemFooter/ItemFooter.stories.tsx
  64. +81 −0 isucari/webapp/frontend/src/components/ItemFooter/ItemFooter.tsx
  65. +1 −0 isucari/webapp/frontend/src/components/ItemFooter/index.tsx
  66. +33 −0 isucari/webapp/frontend/src/components/ItemImage/ItemImage.stories.tsx
  67. +64 −0 isucari/webapp/frontend/src/components/ItemImage/ItemImage.tsx
  68. +1 −0 isucari/webapp/frontend/src/components/ItemImage/index.tsx
  69. +153 −0 isucari/webapp/frontend/src/components/ItemImageUploadComponent.tsx
  70. +47 −0 isucari/webapp/frontend/src/components/ItemList/ItemList.stories.tsx
  71. +65 −0 isucari/webapp/frontend/src/components/ItemList/ItemList.tsx
  72. +1 −0 isucari/webapp/frontend/src/components/ItemList/index.tsx
  73. +17 −0 isucari/webapp/frontend/src/components/LoadingButton/LoadingButton.stories.tsx
  74. +54 −0 isucari/webapp/frontend/src/components/LoadingButton/LoadingButton.tsx
  75. +1 −0 isucari/webapp/frontend/src/components/LoadingButton/index.tsx
  76. +32 −0 isucari/webapp/frontend/src/components/LoadingComponent.tsx
  77. +52 −0 isucari/webapp/frontend/src/components/Route/AuthRoute.tsx
  78. +52 −0 isucari/webapp/frontend/src/components/Route/NonAuthRoute.tsx
  79. +238 −0 isucari/webapp/frontend/src/components/SellFormComponent.tsx
  80. +34 −0 isucari/webapp/frontend/src/components/SellingButtonComponent.tsx
  81. +143 −0 isucari/webapp/frontend/src/components/SignInFormComponent.tsx
  82. +168 −0 isucari/webapp/frontend/src/components/SignUpFormComponent.tsx
  83. +23 −0 isucari/webapp/frontend/src/components/SnackBar/SnackBar.stories.tsx
  84. +94 −0 isucari/webapp/frontend/src/components/SnackBar/SnackBar.tsx
  85. +1 −0 isucari/webapp/frontend/src/components/SnackBar/index.tsx
  86. +7 −0 isucari/webapp/frontend/src/components/TimelineLoading/TimelineLoading.stories.tsx
  87. +25 −0 isucari/webapp/frontend/src/components/TimelineLoading/TimelineLoading.tsx
  88. +1 −0 isucari/webapp/frontend/src/components/TimelineLoading/index.tsx
  89. +14 −0 isucari/webapp/frontend/src/components/Transaction/Buyer/Done.tsx
  90. +15 −0 isucari/webapp/frontend/src/components/Transaction/Buyer/Initial.tsx
  91. +42 −0 isucari/webapp/frontend/src/components/Transaction/Buyer/WaitDone.tsx
  92. +15 −0 isucari/webapp/frontend/src/components/Transaction/Buyer/WaitShipping.tsx
  93. +14 −0 isucari/webapp/frontend/src/components/Transaction/Seller/Done.tsx
  94. +42 −0 isucari/webapp/frontend/src/components/Transaction/Seller/Initial.tsx
  95. +17 −0 isucari/webapp/frontend/src/components/Transaction/Seller/WaitDone.tsx
  96. +64 −0 isucari/webapp/frontend/src/components/Transaction/Seller/WaitShipping.tsx
  97. +24 −0 isucari/webapp/frontend/src/components/TransactionBuyer/TransactionBuyer.stories.tsx
  98. +40 −0 isucari/webapp/frontend/src/components/TransactionBuyer/TransactionBuyer.tsx
  99. +1 −0 isucari/webapp/frontend/src/components/TransactionBuyer/index.tsx
  100. +36 −0 isucari/webapp/frontend/src/components/TransactionComponent/TransactionComponent.stories.tsx
  101. +74 −0 isucari/webapp/frontend/src/components/TransactionComponent/TransactionComponent.tsx
  102. +1 −0 isucari/webapp/frontend/src/components/TransactionComponent/index.tsx
  103. +12 −0 isucari/webapp/frontend/src/components/TransactionLabel/TransactionLabel.stories.tsx
  104. +79 −0 isucari/webapp/frontend/src/components/TransactionLabel/TransactionLabel.tsx
  105. +1 −0 isucari/webapp/frontend/src/components/TransactionLabel/index.tsx
  106. +44 −0 isucari/webapp/frontend/src/components/TransactionList/TransactionList.stories.tsx
  107. +64 −0 isucari/webapp/frontend/src/components/TransactionList/TransactionList.tsx
  108. +1 −0 isucari/webapp/frontend/src/components/TransactionList/index.tsx
  109. +26 −0 isucari/webapp/frontend/src/components/TransactionSeller/TransactionSeller.stories.tsx
  110. +50 −0 isucari/webapp/frontend/src/components/TransactionSeller/TransactionSeller.tsx
  111. +1 −0 isucari/webapp/frontend/src/components/TransactionSeller/index.tsx
  112. +1 −0 isucari/webapp/frontend/src/config.ts
  113. +15 −0 isucari/webapp/frontend/src/configureStore.ts
  114. +25 −0 isucari/webapp/frontend/src/containers/AuthContainer.tsx
  115. +15 −0 isucari/webapp/frontend/src/containers/BasePageContainer.tsx
  116. +19 −0 isucari/webapp/frontend/src/containers/BuyCompleteContainer.tsx
  117. +20 −0 isucari/webapp/frontend/src/containers/BuyerTransactionContainer.tsx
  118. +33 −0 isucari/webapp/frontend/src/containers/CategoryItemListPageContainer.tsx
  119. +43 −0 isucari/webapp/frontend/src/containers/HeaderContainer.tsx
  120. +14 −0 isucari/webapp/frontend/src/containers/InternalServerContainer.tsx
  121. +24 −0 isucari/webapp/frontend/src/containers/ItemBuyFormContainer.tsx
  122. +20 −0 isucari/webapp/frontend/src/containers/ItemBuyPageContainer.tsx
  123. +29 −0 isucari/webapp/frontend/src/containers/ItemEditPageContainer.tsx
  124. +26 −0 isucari/webapp/frontend/src/containers/ItemListPageContainer.tsx
  125. +38 −0 isucari/webapp/frontend/src/containers/ItemPageContainer.tsx
  126. +25 −0 isucari/webapp/frontend/src/containers/NonAuthContainer.tsx
  127. +14 −0 isucari/webapp/frontend/src/containers/NotFoundContainer.tsx
  128. +37 −0 isucari/webapp/frontend/src/containers/SellFormContainer.tsx
  129. +24 −0 isucari/webapp/frontend/src/containers/SellerTransactionContainer.tsx
  130. +24 −0 isucari/webapp/frontend/src/containers/SellingButtonContainer.tsx
  131. +20 −0 isucari/webapp/frontend/src/containers/SignInFormContainer.tsx
  132. +21 −0 isucari/webapp/frontend/src/containers/SignUpFormContainer.tsx
  133. +22 −0 isucari/webapp/frontend/src/containers/SnackBarContainer.tsx
  134. +25 −0 isucari/webapp/frontend/src/containers/TransactionContainer.tsx
  135. +27 −0 isucari/webapp/frontend/src/containers/TransactionPageContainer.tsx
  136. +42 −0 isucari/webapp/frontend/src/containers/UserPageContainer.tsx
  137. +17 −0 isucari/webapp/frontend/src/containers/UserSettingPageContainer.tsx
  138. +12 −0 isucari/webapp/frontend/src/dataObjects/category.ts
  139. +43 −0 isucari/webapp/frontend/src/dataObjects/item.ts
  140. +8 −0 isucari/webapp/frontend/src/dataObjects/settings.ts
  141. +1 −0 isucari/webapp/frontend/src/dataObjects/shipping.ts
  142. +1 −0 isucari/webapp/frontend/src/dataObjects/transaction.ts
  143. +6 −0 isucari/webapp/frontend/src/dataObjects/user.ts
  144. +3 −0 isucari/webapp/frontend/src/errors/AppResponseError.ts
  145. +2 −0 isucari/webapp/frontend/src/errors/InternalServerError.ts
  146. +2 −0 isucari/webapp/frontend/src/errors/NotFoundError.ts
  147. +3 −0 isucari/webapp/frontend/src/errors/PaymentResponseError.ts
  148. +12 −0 isucari/webapp/frontend/src/errors/ResponseError.ts
  149. +29 −0 isucari/webapp/frontend/src/hoc/withBaseComponent.tsx
  150. +85 −0 isucari/webapp/frontend/src/httpClients/appClient.ts
  151. +30 −0 isucari/webapp/frontend/src/httpClients/paymentClient.ts
  152. +13 −0 isucari/webapp/frontend/src/index.css
  153. +24 −0 isucari/webapp/frontend/src/index.tsx
  154. +28 −0 isucari/webapp/frontend/src/middlewares/checkLocationChange.ts
  155. +6 −0 isucari/webapp/frontend/src/middlewares/index.ts
  156. +25 −0 isucari/webapp/frontend/src/pages/BuyComplete.tsx
  157. +146 −0 isucari/webapp/frontend/src/pages/CategoryItemListPage.tsx
  158. +40 −0 isucari/webapp/frontend/src/pages/ItemBuyPage.tsx
  159. +135 −0 isucari/webapp/frontend/src/pages/ItemEditPage.tsx
  160. +76 −0 isucari/webapp/frontend/src/pages/ItemListPage.tsx
  161. +240 −0 isucari/webapp/frontend/src/pages/ItemPage.tsx
  162. +30 −0 isucari/webapp/frontend/src/pages/SellPage.tsx
  163. +29 −0 isucari/webapp/frontend/src/pages/SignInPage.tsx
  164. +28 −0 isucari/webapp/frontend/src/pages/SignUpPage.tsx
  165. +88 −0 isucari/webapp/frontend/src/pages/TopPage.tsx
  166. +148 −0 isucari/webapp/frontend/src/pages/TransactionPage.tsx
  167. +228 −0 isucari/webapp/frontend/src/pages/UserPage.tsx
  168. +88 −0 isucari/webapp/frontend/src/pages/UserSettingPage.tsx
  169. +18 −0 isucari/webapp/frontend/src/pages/error/InternalServerErrorPage/InternalServerErrorPage.stories.tsx
  170. +59 −0 isucari/webapp/frontend/src/pages/error/InternalServerErrorPage/InternalServerErrorPage.tsx
  171. +1 −0 isucari/webapp/frontend/src/pages/error/InternalServerErrorPage/index.tsx
  172. +18 −0 isucari/webapp/frontend/src/pages/error/NotFoundPage/NotFoundPage.stories.tsx
  173. +55 −0 isucari/webapp/frontend/src/pages/error/NotFoundPage/NotFoundPage.tsx
  174. +1 −0 isucari/webapp/frontend/src/pages/error/NotFoundPage/index.tsx
  175. +1 −0 isucari/webapp/frontend/src/react-app-env.d.ts
  176. +71 −0 isucari/webapp/frontend/src/reducers/authStatusReducer.ts
  177. +33 −0 isucari/webapp/frontend/src/reducers/buyPageReducer.ts
  178. +27 −0 isucari/webapp/frontend/src/reducers/categoriesReducer.ts
  179. +56 −0 isucari/webapp/frontend/src/reducers/errorReducer.ts
  180. +45 −0 isucari/webapp/frontend/src/reducers/formErrorReducer.ts
  181. +32 −0 isucari/webapp/frontend/src/reducers/index.ts
  182. +79 −0 isucari/webapp/frontend/src/reducers/pageReducuer.ts
  183. +49 −0 isucari/webapp/frontend/src/reducers/snackBarReducer.ts
  184. +38 −0 isucari/webapp/frontend/src/reducers/timelineReducer.ts
  185. +40 −0 isucari/webapp/frontend/src/reducers/transactionsReducer.ts
  186. +40 −0 isucari/webapp/frontend/src/reducers/userItemsReducer.ts
  187. +23 −0 isucari/webapp/frontend/src/reducers/viewingItemReducer.ts
  188. +27 −0 isucari/webapp/frontend/src/reducers/viewingUserReducer.ts
  189. +129 −0 isucari/webapp/frontend/src/routes/Route.tsx
  190. +20 −0 isucari/webapp/frontend/src/theme.ts
  191. +232 −0 isucari/webapp/frontend/src/types/appApiTypes.ts
  192. +11 −0 isucari/webapp/frontend/src/types/paymentApiTypes.ts
  193. +4 −0 isucari/webapp/frontend/tool/clean.js
  194. +25 −0 isucari/webapp/frontend/tsconfig.json
  195. +1 −0 isucari/webapp/go/.gitignore
  196. +184 −0 isucari/webapp/go/api.go
  197. +11 −0 isucari/webapp/go/go.mod
  198. +20 −0 isucari/webapp/go/go.sum
  199. +2,317 −0 isucari/webapp/go/main.go
  200. +3 −0 isucari/webapp/nodejs/.gitignore
  201. +3 −0 isucari/webapp/nodejs/.vscode/settings.json
  202. +101 −0 isucari/webapp/nodejs/api.ts
  203. +2,238 −0 isucari/webapp/nodejs/index.ts
  204. +1,691 −0 isucari/webapp/nodejs/package-lock.json
  205. +37 −0 isucari/webapp/nodejs/package.json
  206. +1 −0 isucari/webapp/nodejs/public
  207. +66 −0 isucari/webapp/nodejs/tsconfig.json
  208. +1 −0 isucari/webapp/perl/.gitignore
  209. +11 −0 isucari/webapp/perl/Makefile.PL
  210. +21 −0 isucari/webapp/perl/app.psgi
  211. +15 −0 isucari/webapp/perl/cpanfile
  212. +2,349 −0 isucari/webapp/perl/cpanfile.snapshot
  213. +10 −0 isucari/webapp/perl/lib/Isucari.pm
  214. +99 −0 isucari/webapp/perl/lib/Isucari/API.pm
  215. +1,402 −0 isucari/webapp/perl/lib/Isucari/Web.pm
  216. +1 −0 isucari/webapp/perl/public
  217. +12 −0 isucari/webapp/perl/t/00_compile.t
  218. +1 −0 isucari/webapp/php/.gitattributes
  219. +3 −0 isucari/webapp/php/.gitignore
  220. +31 −0 isucari/webapp/php/composer.json
  221. +1,991 −0 isucari/webapp/php/composer.lock
  222. +38 −0 isucari/webapp/php/public/index.php
  223. +16 −0 isucari/webapp/php/src/App/Environment.php
  224. +1,845 −0 isucari/webapp/php/src/App/Service.php
  225. +108 −0 isucari/webapp/php/src/dependencies.php
  226. +24 −0 isucari/webapp/php/src/middleware.php
  227. +78 −0 isucari/webapp/php/src/routes.php
  228. +37 −0 isucari/webapp/php/src/settings.php
  229. +3 −0 isucari/webapp/public/.gitignore
  230. +15 −0 isucari/webapp/public/asset-manifest.json
  231. BIN isucari/webapp/public/favicon.png
  232. +1 −0 isucari/webapp/public/index.html
  233. BIN isucari/webapp/public/internal_server_error.png
  234. BIN isucari/webapp/public/logo.png
  235. +15 −0 isucari/webapp/public/manifest.json
  236. BIN isucari/webapp/public/not_found.png
  237. +22 −0 isucari/webapp/public/precache-manifest.b2bd30b977e2fb5edb9ffe534b18d478.js
  238. +39 −0 isucari/webapp/public/service-worker.js
  239. +2 −0 isucari/webapp/public/static/css/main.19393e92.chunk.css
  240. +1 −0 isucari/webapp/public/static/css/main.19393e92.chunk.css.map
  241. +2 −0 isucari/webapp/public/static/js/2.ff6e1067.chunk.js
  242. +1 −0 isucari/webapp/public/static/js/2.ff6e1067.chunk.js.map
  243. +2 −0 isucari/webapp/public/static/js/main.babc3d4d.chunk.js
  244. +1 −0 isucari/webapp/public/static/js/main.babc3d4d.chunk.js.map
  245. +2 −0 isucari/webapp/public/static/js/runtime~main.a8a9905a.js
  246. +1 −0 isucari/webapp/public/static/js/runtime~main.a8a9905a.js.map
  247. 0 isucari/webapp/python/.gitignore
  248. +1,363 −0 isucari/webapp/python/app.py
  249. +18 −0 isucari/webapp/python/requirements.txt
  250. +1 −0 isucari/webapp/python/templates
  251. +2 −0 isucari/webapp/ruby/.gitignore
  252. +11 −0 isucari/webapp/ruby/Gemfile
  253. +43 −0 isucari/webapp/ruby/Gemfile.lock
  254. +6 −0 isucari/webapp/ruby/config.ru
  255. +2 −0 isucari/webapp/ruby/lib/isucari.rb
  256. +94 −0 isucari/webapp/ruby/lib/isucari/api.rb
  257. +1,283 −0 isucari/webapp/ruby/lib/isucari/web.rb
  258. +1 −0 isucari/webapp/ruby/public
  259. +1 −0 isucari/webapp/sql/.gitignore
  260. +10 −0 isucari/webapp/sql/00_create_database.sql
  261. +74 −0 isucari/webapp/sql/01_schema.sql
  262. +47 −0 isucari/webapp/sql/02_categories.sql
  263. +14 −0 isucari/webapp/sql/init.sh
  264. +49 −0 recipe.rb
@@ -0,0 +1,19 @@
# BEGIN ANSIBLE MANAGED BLOCK go
export PATH=/home/isucon/local/go/bin:/home/isucon/go/bin:$PATH
export GOROOT=/home/isucon/local/go
# END ANSIBLE MANAGED BLOCK go
# BEGIN ANSIBLE MANAGED BLOCK perl
export PATH=/home/isucon/local/perl/bin:$PATH
# END ANSIBLE MANAGED BLOCK perl
# BEGIN ANSIBLE MANAGED BLOCK php
export PATH=/home/isucon/local/php/bin:$PATH
# END ANSIBLE MANAGED BLOCK php
# BEGIN ANSIBLE MANAGED BLOCK ruby
export PATH=/home/isucon/local/ruby/bin:$PATH
# END ANSIBLE MANAGED BLOCK ruby
# BEGIN ANSIBLE MANAGED BLOCK python
export PATH=/home/isucon/local/python/bin:$PATH
# END ANSIBLE MANAGED BLOCK python
# BEGIN ANSIBLE MANAGED BLOCK nodejs
export PATH=/home/isucon/local/node/bin:$PATH
# END ANSIBLE MANAGED BLOCK nodejs
117 .bashrc
@@ -0,0 +1,117 @@
# ~/.bashrc: executed by bash(1) for non-login shells.
# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc)
# for examples

# If not running interactively, don't do anything
case $- in
*i*) ;;
*) return;;
esac

# don't put duplicate lines or lines starting with space in the history.
# See bash(1) for more options
HISTCONTROL=ignoreboth

# append to the history file, don't overwrite it
shopt -s histappend

# for setting history length see HISTSIZE and HISTFILESIZE in bash(1)
HISTSIZE=1000
HISTFILESIZE=2000

# check the window size after each command and, if necessary,
# update the values of LINES and COLUMNS.
shopt -s checkwinsize

# If set, the pattern "**" used in a pathname expansion context will
# match all files and zero or more directories and subdirectories.
#shopt -s globstar

# make less more friendly for non-text input files, see lesspipe(1)
[ -x /usr/bin/lesspipe ] && eval "$(SHELL=/bin/sh lesspipe)"

# set variable identifying the chroot you work in (used in the prompt below)
if [ -z "${debian_chroot:-}" ] && [ -r /etc/debian_chroot ]; then
debian_chroot=$(cat /etc/debian_chroot)
fi

# set a fancy prompt (non-color, unless we know we "want" color)
case "$TERM" in
xterm-color|*-256color) color_prompt=yes;;
esac

# uncomment for a colored prompt, if the terminal has the capability; turned
# off by default to not distract the user: the focus in a terminal window
# should be on the output of commands, not on the prompt
#force_color_prompt=yes

if [ -n "$force_color_prompt" ]; then
if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then
# We have color support; assume it's compliant with Ecma-48
# (ISO/IEC-6429). (Lack of such support is extremely rare, and such
# a case would tend to support setf rather than setaf.)
color_prompt=yes
else
color_prompt=
fi
fi

if [ "$color_prompt" = yes ]; then
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
else
PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
fi
unset color_prompt force_color_prompt

# If this is an xterm set the title to user@host:dir
case "$TERM" in
xterm*|rxvt*)
PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$PS1"
;;
*)
;;
esac

# enable color support of ls and also add handy aliases
if [ -x /usr/bin/dircolors ]; then
test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)"
alias ls='ls --color=auto'
#alias dir='dir --color=auto'
#alias vdir='vdir --color=auto'

alias grep='grep --color=auto'
alias fgrep='fgrep --color=auto'
alias egrep='egrep --color=auto'
fi

# colored GCC warnings and errors
#export GCC_COLORS='error=01;31:warning=01;35:note=01;36:caret=01;32:locus=01:quote=01'

# some more ls aliases
alias ll='ls -alF'
alias la='ls -A'
alias l='ls -CF'

# Add an "alert" alias for long running commands. Use like so:
# sleep 10; alert
alias alert='notify-send --urgency=low -i "$([ $? = 0 ] && echo terminal || echo error)" "$(history|tail -n1|sed -e '\''s/^\s*[0-9]\+\s*//;s/[;&|]\s*alert$//'\'')"'

# Alias definitions.
# You may want to put all your additions into a separate file like
# ~/.bash_aliases, instead of adding them here directly.
# See /usr/share/doc/bash-doc/examples in the bash-doc package.

if [ -f ~/.bash_aliases ]; then
. ~/.bash_aliases
fi

# enable programmable completion features (you don't need to enable
# this, if it's already enabled in /etc/bash.bashrc and /etc/profile
# sources /etc/bash.bashrc).
if ! shopt -oq posix; then
if [ -f /usr/share/bash-completion/bash_completion ]; then
. /usr/share/bash-completion/bash_completion
elif [ -f /etc/bash_completion ]; then
. /etc/bash_completion
fi
fi
@@ -0,0 +1,4 @@
{
"optOut": false,
"lastUpdateCheck": 1567762362644
}
@@ -0,0 +1,62 @@

# Created by https://www.gitignore.io/api/linux,vim
# Edit at https://www.gitignore.io/?templates=linux,vim

### Linux ###
*~

# temporary files which can be created if a process still has a handle open of a deleted file
.fuse_hidden*

# KDE directory preferences
.directory

# Linux trash folder which might appear on any partition or disk
.Trash-*

# .nfs files are created when an open file is removed but is still being accessed
.nfs*

### Vim ###
# Swap
[._]*.s[a-v][a-z]
[._]*.sw[a-p]
[._]s[a-rt-v][a-z]
[._]ss[a-gi-z]
[._]sw[a-p]

# Session
Session.vim
Sessionx.vim

# Temporary
.netrwhist
# Auto-generated tag files
tags
# Persistent undo
[._]*.un~

# End of https://www.gitignore.io/api/linux,vim


/.*_history
/.*_logout
/.ssh
/.gitconfig
/logs
/.viminfo
/.sudo_as_admin_successful
/.lesshst
/.gem
/.bundle
/.cache

*.log
*.prof
/xbuild
/local
/go
/.npm
/.cpanm
/isucari/webapp/python/venv
/.composer
@@ -0,0 +1,27 @@
# ~/.profile: executed by the command interpreter for login shells.
# This file is not read by bash(1), if ~/.bash_profile or ~/.bash_login
# exists.
# see /usr/share/doc/bash/examples/startup-files for examples.
# the files are located in the bash-doc package.

# the default umask is set in /etc/profile; for setting the umask
# for ssh logins, install and configure the libpam-umask package.
#umask 022

# if running bash
if [ -n "$BASH_VERSION" ]; then
# include .bashrc if it exists
if [ -f "$HOME/.bashrc" ]; then
. "$HOME/.bashrc"
fi
fi

# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/bin" ] ; then
PATH="$HOME/bin:$PATH"
fi

# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/.local/bin" ] ; then
PATH="$HOME/.local/bin:$PATH"
fi
5 env.sh
@@ -0,0 +1,5 @@
MYSQL_HOST=127.0.0.1
MYSQL_PORT=3306
MYSQL_USER=isucari
MYSQL_DBNAME=isucari
MYSQL_PASS=isucari
@@ -0,0 +1,19 @@
# isucon9-qualify

## アプリケーションのディレクトリ構成

アプリケーションのディレクトリ構成は以下のようになっています。

```
/home/isucon/isucari/webapp/
├── docs # アプリケーションおよび外部サービスについてのドキュメント
├── frontend # フロントエンドのソースコード
├── go # Go実装
├── nodejs # Node.js実装
├── perl # Perl実装
├── php # PHP実装
├── python # Python実装
├── ruby # Ruby実装
├── public # jsやcss、画像データ等の静的ファイル
└── sql # データベースのスキーマおよび初期化に必要なSQL
```
@@ -0,0 +1,76 @@
# ISUCARI アプリケーション仕様書

<img src="images/logo.png" alt="ISUCARIロゴ" height="300px">

ISUCARIは椅子を売りたい人/買いたい人をつなげるフリマアプリです。
従来のECサービスと比べて以下の特徴があります。

* 安心安全の決済基盤
* 匿名配送により住所を伝えなくても取引が可能に
* 買いたい/売りたいと思った時にすぐに使えるシンプルさ

## ISUCARIの使い方

### 椅子を売ろう!

#### まずは椅子を出品しよう!

1. 椅子の情報をいれよう!
- タイムラインページの右下の出品ボタンを押すと出品画面にいくよ!
- シンプルなフォームに情報を入力すれば即出品♪
- ![1-1](images/1-1.png)
1. 売れるのを待とう!
- あなたの椅子が買われるのを楽しみに待とう♪
1. 椅子を発送しよう!
- 無事購入されたら椅子を発送しよう!
- 商品ページかマイページから取引画面に行こう👀

#### 売れた椅子を発送しよう!

1. 集荷予約をしよう!
- 集荷予約をして椅子を送る準備をしよう😤
- 集荷予約は取引画面からできるぞ!
- ![2-1](images/2-1.png)
1. 配達員に椅子をわたそう!
- 配達員が来たらQRコードを見せよう📱
- 椅子を渡したら発送完了ボタンを押そう♪
- ![2-2](images/2-2.png)
1. 購入者の受け取りを待とう!
- 椅子が届くのをまとう♪
- 届いたかどうかは取引画面で確認できるぞ!
- 購入者が椅子を受け取ったら取引完了♪

### 椅子を買おう!

1. ほしい椅子を探そう!
- タイムライン、カテゴリタイムラインから好みの椅子を探そう👀
- カテゴリタイムラインへはサイドバーからいけるよ!
- ![3-1](images/3-1.png)
1. 椅子を買おう!
- 運命の椅子を見つけたら購入しよう😎
- カード番号を入力して簡単1ステップ購入!
- ![3-2](images/3-2.png)
1. 椅子が届くのを待とう⏱
- 出品者が発送するのを待とう!
- 発送されたかどうかは取引画面で確認できるぞ!
1. 取引を完了しよう!
- 椅子が届いたら「取引完了」をしよう!
- これで取引完了♪

## キャンペーン機能について

マニュアルを参照

## 外部サービスの仕様

[外部サービス仕様書](EXTERNAL_SERVICE_SPEC.md) を参照

## ISUCARI ステータス遷移表

| | WHO | items | transaction_evidences | shippings |
|------------------------|:------:|:--------:|:---------------------:|:-------------------:|
| /sell (出品) | 出品者 | on_sale | - | - |
| /buy (購入) | 購入者 | trading | wait_shipping | initial |
| /ship (集荷予約) | 出品者 | ↓ | ↓ | wait_pickup |
| /ship_done (発送完了)| 出品者 | ↓ | wait_done | shipping or done |
| /complete (取引完了) | 購入者 | sold_out | done | done |

0 comments on commit 91327c0

Please sign in to comment.
You can’t perform that action at this time.