開発するもの
Lonely Twitter
概要
ローカルな環境下で動作し、
ユーザー登録、ログインを管理者が独りで行い、独りでユーザーを切り替えて心の闇をつぶやくWebアプリケーション
まさにダークウェブ(ローカル)
身につけたい技術
- 言語の基本文法
- フォーム送信(GET, POST)
- データベース連携
- セッション・クッキー
- ログイン認証
- ググり力
追加で身につけたい技術
- HTML/CSS(簡単なデザイン)
- セキュアな設計
- 美しいコーディング(今後の追記に備える)
仕様
機能
ユーザー登録
- ユーザーIDは半角英数字1文字以上,10文字以内
- メールアドレス登録必須
- ユーザー名は未記入を許可、その場合はIDを表示する
- 自己紹介文を50文字、未記入可
- 非公開設定をすると自分以外tweetを見れない
ユーザー認証
- ログイン機能
- セッションでログイン状態を維持
- tweetには必ずユーザーを紐付ける
ユーザーページ(マイページ)
- ユーザー毎のプロフィールページを表示
- 自分のページの場合は編集可能
Tweet機能
- 投稿
- tweetは140文字まで、未記入不可
- 非公開設定で自分以外には非表示(1tweet単位で設定可能)
- 編集
- 削除
- 閲覧
- 特定ユーザーのタイムライン
- すべてのタイムライン(非公開設定を除く)
DB設計
Users Table
カラム名 | 型 | NULL | KEY |
---|---|---|---|
user_id | varchar | No | PRI |
password | varchar | No | |
varchar | No | UNI | |
name | varchar | Yes | |
intro | varchar | Yes | |
private | boolean | No |
Tweets Table
カラム名 | 型 | NULL | KEY |
---|---|---|---|
tweet_id | int | No | PRI |
user_id | varchar | No | MUL |
content | varchar | No | |
private | boolean | No |
プラスアルファ
- パスワードはハッシュ化して保存
- フォロー機能
- Tweet公開範囲の設定
- クロスサイトスクリプティング防止