サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
Pixel 9
qiita.com/dala00
僕は趣味でCrieitというQiitaのような感じのもっとゆるいサービスを運営しています。そちらで有料記事の販売機能を開発しました。ユーザーが自由に記事を販売することが出来るようになっています。開発にはStripeという決済サービスのStripe Connectという機能を使っています。 実際の作り方や考える必要があった事などをまとめていきます。 Stripe Connectとは まずStripeというのは簡単にアプリケーションに決済機能を導入することができるサービスです。そしてStripeにはStripe Connectという機能があり、ECサイトや今回の技術記事のように、サービス内でユーザーに商品を販売する機能を提供することが可能になります。 サービス運営者は手数料を設定することで収益を得ることが出来ます。例えばStripe Connectを使わずに振り込みで運用する場合は一度全ての商
音楽の知識がなくても誰でも曲を演奏したり作曲したりできるアプリ(伴奏のみ)をFlutterで作成しました。 音楽の知識がなくてもタップだけで演奏や作曲が出来るアプリを作りました(伴奏のみ)。合うコードだけ表示しているので適当なボタン操作でも曲が作れます。 外でふとコード進行が思い浮かんだ時にでも使ってみてください。 #Flutter Androidhttps://t.co/NESpvoRl5O iOShttps://t.co/DgvsuStjwC pic.twitter.com/4lOTlAdXP9 — だら🎄5/18~5/24開催Webサービス作るイベント (@dala00) May 13, 2020 技術的に共有できる部分を紹介していきたいと思います。 使い方 基本的な使い方としては並んでいる大きなボタンをタップするだけです。これで選択したコードが勝手に再生されます。 今回のアプリで
とあるSESの現場では本番リリースの時期が近づいてきており、僕を含めた数人のエンジニアは間に合いそうもない残作業の開発を進めたり、本番で使うためのデータの整備を本番サーバー内で行ったりしていた。ほとんどがその案件のために集められたメンバーだったため特に和気あいあいとするでもなく、エアコンの風の音が響く小さなオフィスの片隅で静かに作業をしていた。 業務上のやりとりもRedmineで行われており、声を発するのもたまにメンバー同士で話をしたり、クライアントから電話がかかってきた時だけ。その日もメールで通知が届いてきており、確認してみるとRedmineで僕が関係しているチケットにコメントが届いているという通知だった。 通知のURLをクリックしてRedmineのチケットを確認してみる。 それによると一旦本番サーバー上に存在するデータの中の一部の主要データをCSV形式で送ってほしいという依頼だった。無
Twitterの自分のタイムラインは自分しか見ることができない特別な世界ですが、それをシェアして見せあいっこすることができる「TLシェア」というミニサービスを作りました。 使っているもの PHP7.3 Laravel5.8 Vue.js2.5 Buefy Google Compute Engine (f1-micro) Google Cloud SQL (MySQL5.7) どうやっているのか TwitterのAPIは当然のように自分のTLを取得できます。それを自分用ではなく公開用として誰でも閲覧できるように表示している、というだけになります。 具体的な処理 Laravel Socialite Laravel Socialiteを使うと簡単にTwitter認証ができますので、ちょちょいと入れて認証します。今回はミニアプリにする予定だったので、ログイン機能もつけませんでした。認証した時にタイ
基本情報 次に作りたいQiita、dev.toの様なサービスについて で書いたサービスを開発中です。 前回の記事 できたサービス Crieit はじめに 前回ユーザー認証を作成してログインできるようにしたので、早速記事を投稿できるようにします。 掲示板等であれば普通にtextareaでいいのですが、エンジニアが記事を投稿するサービスはだいたいMarkdownで記述できるようになっているので、今回はMarkdownエディタを導入してMarkdownで記事を投稿できるようにします。 あとはタグ入力コンポーネントも導入します。 Markdownエディタ 使用するライブラリ TOAST UI Editor これを使うことにしました。下記は公式のイメージサンプルです。 QiitaライクなMarkdownエディタというだけでなく、グラフやUMLを書くこともできるとりあえずなんかすごいエディタっぽいです
Qiitaの様だけど、プログラマー、クリエイターが興味のあることであればポエムでも何でも書いていいWebサービス「Crieit(クリエイト)」を作りました。 2018/5末頃に最低限の機能だけを実装したα版として早期公開し、実際に運用しながらのスタイルで開発を続けていっています。 どんなサービスか ベースのベース部分の構成はほとんどQiitaと同じで、何かしらをMarkdownで投稿でき、投稿されたものの一覧があり、投稿詳細ページがあるという形になっています。投稿画面もほぼQiitaと同じでプレビュー付きのほぼ全画面エディタになっています。 今必要なもの、という考え方を優先して機能を追加していっているため、まだユーザー数や投稿数が少ない現状ではあまり必要なさそうなフォロー関連機能やストック機能等はなく、今後状況に応じて随時追加していく事を考えています。 なぜ作ろうと思ったか Qiitaには
はじめに クソアプリ Advent Calendar 2018 の3日目です。 概要 Twitterでツイートしようと思った時にふと「Markdownで書きたい」と思ったことはないでしょうか? ここに訪れている方であれば誰もがあるはずです。僕も時々そう思っていたので今回TwitterでMarkdownを使えるようにしてみました。 とりあえず完成したもの 例えば下記のようなツイートを行うと… こんな感じで表示されます。 リンクや画像も、コードまでも思いのままです。さあ、皆さん思う存分Twitter上でMarkdownライフをエンジョイしてください! …と、すみません、技術解説や使い方の説明が抜けていました。 技術解説 何はともあれツイート文に書かれているMarkdownを変換する必要がありますので、変換用ライブラリと、コードハイライトのライブラリを導入します。あとCSSも一緒に入れておきます
とりあえず最初の1歩としてローカル環境を作ります。ちなみに下記の構成で開発を行います。 PHP7.2 Laravel5.6 MySQL5.7 (どこかで8にしたい) Vue.js Bootstrap Material Design Docker ローカル環境はdocker-composeを使います。 version: '2' volumes: mysql_data: driver: 'local' services: mysql: image: mysql:5.7 volumes: - mysql_data:/var/lib/mysql ports: - 3307:3306 environment: MYSQL_ALLOW_EMPTY_PASSWORD: "true" MYSQL_DATABASE: dbname phpmyadmin: image: phpmyadmin/phpmyadm
qiita.com
bosyu.meの一覧ページを作成してみました。ちなみに僕はbosyuの運営とは何の関わりもありません。 概要 ちょっと前にbosyuという募集を行うことができるサービスがリリースされました。応募が来るとサービス上で簡単一覧できる便利なサービスです。 ただ、Twitter上で自分のフォロワーさん宛に募集を行う形での利用を想定されて作られている感じのため、募集の一覧ページなどがありません。 そのため、募集一覧ページを勝手に作ってみました。 bosyu.meの募集一覧 ただ、ただほんとに一覧するだけだとTwitter上で#bosyuというハッシュタグを使って見ればいいだけなので、独自の機能としてカテゴリ分類機能を追加し、カテゴリ毎の募集を見られるようにしてみました。(カテゴリの自動分類方法詳細は後述) 環境 PHP7.2 Laravel5.6 Vue Vue Material Twitter
誰かが作っていたものを10年くらい前に引き継いで今も継続している案件がある。何度かサーバーは変わったが、とはいえかなり古いものなのでPHP5.3で動作していた。 ただ、お客さんの依頼で使用したいパッケージで5.3では動かないものが出てきたので、サーバー移転ついでにPHP7.2にした話。 環境 フレームワークなし composerあり やり方 基本的にはとりあえずPHP7.2の環境で動作させてひたすら修正していくだけ。ローカルでも一時的に借りたVPSとかでも何でも良い。自分の場合はDockerを使った。Dockerの詳細は興味ない人もいると思うので最後の方に書く。 PHP5.3というのがわりと微妙なところで、結構面倒な部分が出てくる。大きな山となったのは下記2つだった。 register_globals 古いプロジェクトなのでregister_globalsが有効化されており、しっかりとこの
僕がフリーランスのWEBエンジニアになってから10年以上が経ちました(今は法人化)。もしかすると今現在フリーランスのエンジニアになりたいと思っている誰かの役に立つかもしれないと思い、当時の話を書いてみます。 当時 当時、秋葉原にてアルバイトでC言語を使った組み込み系のエンジニアをやっていました。 元々ゲームプランナーを目指して企画書とかを作っていたので、大学で就職活動もせずだらだらしており、結局卒業後は就職もせず警備員のアルバイトをしていました。そんなことをしながら見つけた仕事がその開発会社だったので、ただプログラミングができるというだけで嬉しく、あまり待遇などは気にせず働いていました。 待遇 月給20万ほど。社会保険無し。しかも大きな仕事が入ると、徹夜続きでした。残業代なし。 日常生活 そんな中結婚しました。妻は働けないどころか入院とかしてたので、しょっちゅうお金が尽きて足りなくなってま
経緯 2016年にこんなCakePHPとLaravelの比較記事を書いた。 CakePHPとLaravelの使い道 また、こちらの記事もCakePHPのみの記事だが完全にLaravelとの比較を意識していた。 CakePHP3の優位性を色々 この頃は正直CakePHPびいきだったが、時も流れ色々と状況や考え方も変わってきたので改めて考察してみた。(人によってはなんで今さらCakeとLaravelの比較なんてやってんだ、と思うかもしれないが) 情報量 検索にしても日本語の情報が非常に少ない気がするので本当に人気があるのかと思ってしまう。 当時Laravelについては上記のように書いていた。 今はどちらも十分。CakePHP3とか、Laravel5とかで検索すれば紛らわしい情報も減るし、困ったらドキュメント見れば大体分かったりする。 ヘルパー LaravelのHtml, Formヘルパーはなん
PHPで仕事をしていると色々変なコードを見かける事があるので適当にまとめてみた。 タブ幅が自由 どういうエディタの設定になっているのだろうか。 function doSomethig($some, $thing) { $testa = 1; $testb = 2; if ($some) { callSomething(); return $thing; } $thing .= "a"; return $thing; } function deepFunc() { if ($this->data) { while($user = $this->getNextUser()) { if ($user['good']) { foreach ($user['rows'] as $row) { foreach ($row['children'] as $child) { if ($child['goo
概要 一人で開発し、mobage & Yahoo! mobageで運営していたゲームを終了申請しており、ついに今月終了となった。 プログラムを見ると2014年のものがいくつかあるので恐らく3年弱くらいになるだろう。 細かい裏話 mobageで運営していたゲームを終了させた で。当記事では技術的なことをまとめる。 環境 PHP (CakePHP2) MySQL cocos2d-x(JS) 古く汚いので、そもそもうまく動かない、くらいの人でないと役にはたたないと思われる。 cocos2d-x(JS & Java & Objective-C)側 https://github.com/dala00/endingroad (フリー素材の再配布等を防ぐため念の為素材は全部削除済み) サーバー(PHP)側 セキュリティ上(主にmobageのため)の懸念があったのでほとんど削除して公開している。 http
Elixir1.6のformatterを使っているという記事を見かけたので羨ましくなって試してみた。 サイボウズLiveを作るで書いたコードを一括でformatterにかけてみた。今回対象にしたのはex, exsのみ。 リストやマップが綺麗に 自動生成されたデフォルトのmix.exs等のコードは変なリストの書き方だったので改善された。自動生成されたモデルのひどいcastも全部修正される。ちなみにリストやマップの最後にカンマがある場合は削除される。 [mod: {Cybozulive.Application, []}, applications: [:phoenix, :phoenix_pubsub, :phoenix_html, :cowboy, :logger, :gettext, :phoenix_ecto, :mariaex, :ueberauth_twitter, :arc_ect
このページを最初にブックマークしてみませんか?
『@dala00のマイページ - Qiita』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く