音频推特:Twitter克隆,其中包含由React,Apollo和MongoDB发出的音频消息

上传者: 42112685 | 上传时间: 2023-03-26 15:23:08 | 文件大小: 4.06MB | 文件类型: ZIP
音频推特 使用React,Apollo,MongoDB,Material-UI,Wavesurfer制作的Twitter克隆 这是Twitter的完整版本,带有音频而不是文本消息。 它仅用于教育目的,与Twitter无关。 产品特点 一般功能 录制语音,预览示波器,重做录制,预览录制,取消录制,预览录制的波形 将音频文件存储到服务器 使用波形预览播放/暂停/停止音频消息 自动播放现有消息,自动播放传入消息 将自动播放时间限制为5、10、15或20秒 以下用户的消息的时间轴提要 通知供稿,未看到的通知计数 个人资料页面,其中包含用户的消息供稿,关注者和关注者列表 社交网络功能:关注/取消关注用户,喜欢/不喜欢消息,转发/取消转发消息 使用Apollo缓存进行本地状态管理,不使用Redux 编辑头像,封面,姓名和个人简介 认证方式 http和websocket链接上的JWT身份验证 使用电子邮件/密码注册,登录 用户/管理员角色 具有HOC的受保护路线 设计 Material-UI响应式设计 在4种不同的绿色/橙色浅色/深色主题之间进行选择 在本地存储中保留主题 标签导航 带用户卡的弹出

文件下载

资源详情

[{"title":"( 99 个子文件 4.06MB ) 音频推特:Twitter克隆,其中包含由React,Apollo和MongoDB发出的音频消息","children":[{"title":"audio-twitter-master","children":[{"title":"client","children":[{"title":".travis.yml <span style='color:#111;'> 87B </span>","children":null,"spread":false},{"title":"package.json <span style='color:#111;'> 1.18KB </span>","children":null,"spread":false},{"title":".prettierrc <span style='color:#111;'> 88B </span>","children":null,"spread":false},{"title":"LICENSE <span style='color:#111;'> 1.04KB </span>","children":null,"spread":false},{"title":"package-lock.json <span style='color:#111;'> 560.71KB </span>","children":null,"spread":false},{"title":"src","children":[{"title":"index.js <span style='color:#111;'> 3.58KB </span>","children":null,"spread":false},{"title":"constants","children":[{"title":"routes.js <span style='color:#111;'> 281B </span>","children":null,"spread":false},{"title":"history.js <span style='color:#111;'> 87B </span>","children":null,"spread":false},{"title":"paths.js <span style='color:#111;'> 158B </span>","children":null,"spread":false}],"spread":true},{"title":"session","children":[{"title":"withAuthorization.js <span style='color:#111;'> 607B </span>","children":null,"spread":false},{"title":"withSession.js <span style='color:#111;'> 509B </span>","children":null,"spread":false},{"title":"queries.js <span style='color:#111;'> 138B </span>","children":null,"spread":false}],"spread":true},{"title":"pages","children":[{"title":"Notifications.js <span style='color:#111;'> 1.12KB </span>","children":null,"spread":false},{"title":"NotFound.js <span style='color:#111;'> 216B </span>","children":null,"spread":false},{"title":"Admin.js <span style='color:#111;'> 295B </span>","children":null,"spread":false},{"title":"RouteWithLayout.js <span style='color:#111;'> 477B </span>","children":null,"spread":false},{"title":"Home.js <span style='color:#111;'> 1.43KB </span>","children":null,"spread":false},{"title":"Profile.js <span style='color:#111;'> 14.62KB </span>","children":null,"spread":false},{"title":"SignIn.js <span style='color:#111;'> 3.66KB </span>","children":null,"spread":false},{"title":"Layout.js <span style='color:#111;'> 835B </span>","children":null,"spread":false},{"title":"SignUp.js <span style='color:#111;'> 4.95KB </span>","children":null,"spread":false}],"spread":true},{"title":"graphql","children":[{"title":"resolvers.js <span style='color:#111;'> 2.04KB </span>","children":null,"spread":false},{"title":"queries.js <span style='color:#111;'> 3.57KB </span>","children":null,"spread":false},{"title":"schema.js <span style='color:#111;'> 739B </span>","children":null,"spread":false},{"title":"mutations.js <span style='color:#111;'> 2.40KB </span>","children":null,"spread":false},{"title":"subscriptions.js <span style='color:#111;'> 1.05KB </span>","children":null,"spread":false}],"spread":true},{"title":"components","children":[{"title":"UserCard","children":[{"title":"UserCard.js <span style='color:#111;'> 4.77KB </span>","children":null,"spread":false}],"spread":false},{"title":"Microphone","children":[{"title":"microphone.css <span style='color:#111;'> 67B </span>","children":null,"spread":false},{"title":"Microphone.js <span style='color:#111;'> 9.40KB </span>","children":null,"spread":false}],"spread":false},{"title":"Messages","children":[{"title":"Messages.js <span style='color:#111;'> 5.46KB </span>","children":null,"spread":false}],"spread":false},{"title":"Autoplay","children":[{"title":"Autoplay.js <span style='color:#111;'> 3.84KB </span>","children":null,"spread":false}],"spread":false},{"title":"SignOutButton","children":[{"title":"SignOutButton.js <span style='color:#111;'> 577B </span>","children":null,"spread":false}],"spread":false},{"title":"MessageDelete","children":[{"title":"MessageDelete.js <span style='color:#111;'> 1012B </span>","children":null,"spread":false}],"spread":false},{"title":"Notifications","children":[{"title":"Notifications.js <span style='color:#111;'> 7.96KB </span>","children":null,"spread":false}],"spread":false},{"title":"MessagePlayer","children":[{"title":"MessagePlayer.js <span style='color:#111;'> 14.59KB </span>","children":null,"spread":false}],"spread":false},{"title":"Navigation","children":[{"title":"Navigation.js <span style='color:#111;'> 8.84KB </span>","children":null,"spread":false}],"spread":false},{"title":"MessageCreate","children":[{"title":"MessageCreate.js <span style='color:#111;'> 1.35KB </span>","children":null,"spread":false}],"spread":false},{"title":"UsersTab","children":[{"title":"UsersTab.js <span style='color:#111;'> 6.71KB </span>","children":null,"spread":false}],"spread":false},{"title":"Error","children":[{"title":"Error.js <span style='color:#111;'> 137B </span>","children":null,"spread":false}],"spread":false},{"title":"Loading","children":[{"title":"Loading.js <span style='color:#111;'> 713B </span>","children":null,"spread":false}],"spread":false},{"title":"WhoToFollow","children":[{"title":"WhoToFollow.js <span style='color:#111;'> 6.27KB </span>","children":null,"spread":false}],"spread":false}],"spread":false},{"title":"App.js <span style='color:#111;'> 1.96KB </span>","children":null,"spread":false},{"title":"theme","children":[{"title":"withTheme.js <span style='color:#111;'> 542B </span>","children":null,"spread":false},{"title":"theme.js <span style='color:#111;'> 1.76KB </span>","children":null,"spread":false}],"spread":false},{"title":"utils","children":[{"title":"customFetch.js <span style='color:#111;'> 1.72KB </span>","children":null,"spread":false}],"spread":false}],"spread":true},{"title":".gitignore <span style='color:#111;'> 285B </span>","children":null,"spread":false},{"title":"public","children":[{"title":"manifest.json <span style='color:#111;'> 317B </span>","children":null,"spread":false},{"title":"index.html <span style='color:#111;'> 1.90KB </span>","children":null,"spread":false},{"title":"favicon.ico <span style='color:#111;'> 3.78KB </span>","children":null,"spread":false}],"spread":true}],"spread":true},{"title":"server","children":[{"title":".travis.yml <span style='color:#111;'> 87B </span>","children":null,"spread":false},{"title":".babelrc <span style='color:#111;'> 196B </span>","children":null,"spread":false},{"title":"package.json <span style='color:#111;'> 1.42KB </span>","children":null,"spread":false},{"title":".prettierrc <span style='color:#111;'> 88B </span>","children":null,"spread":false},{"title":"uploads","children":[{"title":"images","children":[{"title":"avatar.jpg <span style='color:#111;'> 111.52KB </span>","children":null,"spread":false},{"title":"cover.jpg <span style='color:#111;'> 676.63KB </span>","children":null,"spread":false}],"spread":true},{"title":"audio","children":[{"title":"test.mp3 <span style='color:#111;'> 440.88KB </span>","children":null,"spread":false}],"spread":true}],"spread":true},{"title":"LICENSE <span style='color:#111;'> 1.04KB </span>","children":null,"spread":false},{"title":"package-lock.json <span style='color:#111;'> 214.39KB </span>","children":null,"spread":false},{"title":".env.example <span style='color:#111;'> 96B </span>","children":null,"spread":false},{"title":"src","children":[{"title":"models","children":[{"title":"user.js <span style='color:#111;'> 1.71KB </span>","children":null,"spread":false},{"title":"index.js <span style='color:#111;'> 893B </span>","children":null,"spread":false},{"title":"file.js <span style='color:#111;'> 407B </span>","children":null,"spread":false},{"title":"message.js <span style='color:#111;'> 800B </span>","children":null,"spread":false},{"title":"seed.js <span style='color:#111;'> 273B </span>","children":null,"spread":false},{"title":"notification.js <span style='color:#111;'> 731B </span>","children":null,"spread":false}],"spread":true},{"title":"subscription","children":[{"title":"index.js <span style='color:#111;'> 263B </span>","children":null,"spread":false},{"title":"message.js <span style='color:#111;'> 42B </span>","children":null,"spread":false},{"title":"notification.js <span style='color:#111;'> 99B </span>","children":null,"spread":false}],"spread":true},{"title":"index.js <span style='color:#111;'> 4.88KB </span>","children":null,"spread":false},{"title":"loaders","children":[{"title":"user.js <span style='color:#111;'> 329B </span>","children":null,"spread":false},{"title":"index.js <span style='color:#111;'> 96B </span>","children":null,"spread":false},{"title":"file.js <span style='color:#111;'> 199B </span>","children":null,"spread":false}],"spread":false},{"title":"schema","children":[{"title":"user.js <span style='color:#111;'> 1.07KB </span>","children":null,"spread":false},{"title":"index.js <span style='color:#111;'> 505B </span>","children":null,"spread":false},{"title":"message.js <span style='color:#111;'> 1.08KB </span>","children":null,"spread":false},{"title":"notification.js <span style='color:#111;'> 558B </span>","children":null,"spread":false}],"spread":false},{"title":"tests","children":[{"title":"user.spec.js <span style='color:#111;'> 6.31KB </span>","children":null,"spread":false},{"title":"api.js <span style='color:#111;'> 2.48KB </span>","children":null,"spread":false},{"title":"message.spec.js <span style='color:#111;'> 1.41KB </span>","children":null,"spread":false}],"spread":false},{"title":"resolvers","children":[{"title":"user.js <span style='color:#111;'> 7.46KB </span>","children":null,"spread":false},{"title":"index.js <span style='color:#111;'> 401B </span>","children":null,"spread":false},{"title":"authorization.js <span style='color:#111;'> 1.22KB </span>","children":null,"spread":false},{"title":"message.js <span style='color:#111;'> 13.95KB </span>","children":null,"spread":false},{"title":"notification.js <span style='color:#111;'> 3.66KB </span>","children":null,"spread":false}],"spread":false},{"title":"utils","children":[{"title":"upload.js <span style='color:#111;'> 1.89KB </span>","children":null,"spread":false},{"title":"seed.js <span style='color:#111;'> 3.61KB </span>","children":null,"spread":false}],"spread":false}],"spread":true},{"title":".gitignore <span style='color:#111;'> 181B </span>","children":null,"spread":false}],"spread":true},{"title":"screenshots","children":[{"title":"Screenshot_4.png <span style='color:#111;'> 329.70KB </span>","children":null,"spread":false},{"title":"Screenshot_1.png <span style='color:#111;'> 93.80KB </span>","children":null,"spread":false},{"title":"Screenshot_10.png <span style='color:#111;'> 103.08KB </span>","children":null,"spread":false},{"title":"Screenshot_9.png <span style='color:#111;'> 384.62KB </span>","children":null,"spread":false},{"title":"Screenshot_8.png <span style='color:#111;'> 341.36KB </span>","children":null,"spread":false},{"title":"Screenshot_6.png <span style='color:#111;'> 147.81KB </span>","children":null,"spread":false},{"title":"Screenshot_2.png <span style='color:#111;'> 337.78KB </span>","children":null,"spread":false},{"title":"Screenshot_11.png <span style='color:#111;'> 22.31KB </span>","children":null,"spread":false},{"title":"Screenshot_5.png <span style='color:#111;'> 224.80KB </span>","children":null,"spread":false},{"title":"Screenshot_3.png <span style='color:#111;'> 399.74KB </span>","children":null,"spread":false},{"title":"Screenshot_7.png <span style='color:#111;'> 375.52KB </span>","children":null,"spread":false}],"spread":false},{"title":"README.md <span style='color:#111;'> 3.56KB </span>","children":null,"spread":false}],"spread":true}],"spread":true}]

评论信息

免责申明

【只为小站】的资源来自网友分享,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,【只为小站】 无法对用户传输的作品、信息、内容的权属或合法性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论 【只为小站】 经营者是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。
本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二条之规定,若资源存在侵权或相关问题请联系本站客服人员,zhiweidada#qq.com,请把#换成@,本站将给予最大的支持与配合,做到及时反馈和处理。关于更多版权及免责申明参见 版权及免责申明