Giter VIP home page Giter VIP logo

musixise's Introduction

musixise 稀客

it's a historic music live experience, with minimum network consumption, premium sound feedback, and ~zero timing latency to the audience.

musixise-api-server

api接口项目

musixise-io-server

socket-io项目

musixise-m-node

普通用户听众客户端

musixise-www-node

音乐人用户采集客户端

项目开启方法

musixise-io-server,musixise-m-node,musixise-www-node基于node,打开项目指令cd dir -> npm start

host文件配置

127.0.0.1 localhost 255.255.255.255 broadcasthost ::1 localhost fe80::1%lo0 localhost

127.0.0.1 www.musixise.com #艺人PC端 e.g. http://www.musixise.com:3000/stage/ff(无反向代理)http://www.musixise.com/stage/ff(有反向代理) 127.0.0.1 m.musixise.com #普通用户H5端 e.g. http://m.musixise.com:3001/stage/ff 127.0.0.1 io.musixise.com #socketio server e.g. not necessary though, http://io.musixise.com:3002 127.0.0.1 api.musixise.com #api server

反向代理基于nginx,nginx host文件具体配置:

server { listen 80; server_name www.musixise.com; root html; #access_log /Users/ziwen/Documents/musixise/musixise-www-server/npm-debug; location / { proxy_pass http://127.0.0.1:3000; proxy_set_header Host $http_host; proxy_set_header X-Forward-For $remote_addr; } }

server { listen 80; server_name m.musixise.com; root html; #access_log /Users/ziwen/Documents/musixise/musixise-m-server/npm-debug; location / { proxy_pass http://127.0.0.1:3001; proxy_set_header Host $http_host; proxy_set_header X-Forward-For $remote_addr; } }

server { listen 80; server_name io.musixise.com; root html; #access_log /Users/ziwen/Documents/musixise/musixise-io-server/npm-debug; location / { proxy_pass http://127.0.0.1:3002; proxy_set_header Host $http_host; proxy_set_header X-Forward-For $remote_addr; } }

MIDI配置

有MIDI乐器直接插入并正常配置 如果没有midi乐器,可临时下载VMPK, 在edit下面选择Midi Connections, MIDI In Driver选择Network, MIDI OUT Driver选择CoreMIDI,Output MIDI Connection 选择 IAC Driver Bus

musixise's People

Contributors

zfan40 avatar

Watchers

 avatar  avatar  avatar  avatar

Forkers

leamiko

musixise's Issues

目前app存在的bug

  1. 当设置隐藏空页面时,空页面不隐藏
  2. webView跳转到下一页时,没有返回箭头
  3. toast多次调用重叠

首页

最新曲子
最新人
收藏最多曲子
喜欢最多人

引导页面

web:一张图在首屏有入口
app:进入页面展示图片

单曲页面

参考网易云正在播放的状态,
点击单曲直接播放,不进入单曲页面
点击播放条或播放中按钮,才进入单曲页面
单曲页面主要模仿小样
(如果是我的,全局看如果是自己的,增加edit)

cache issues

within app, like html page, static files, especially IMAGES!! THOSE are huge, need to be cached

optimise saved work

need more keys for the work
e.g. title, motion, etc... use ur imagination

收藏类接口warm up

sudden thought... who can be categorised as musixisers? listening is also an exercise, so every one using musixise is a musixiser. Thus, we need try to minimise the differences between normal user and musicians, and that's why Zhaowei suggested combining two account systems as one.
e.g. getMyWorks works on normal user as well, the result is empty though.

based on user behavior (including normal user and musixisers)
musixiser/getInfo(token) => api/musixisers/getInfo
musixiser/getMyWorks(token)
musixiser/updateMyWorkStatusById(token,id,status) 0remove 1public 2 private
musixiser/getInfoById(id)
musixiser/getWorksById(id)
favoriteMusixisers/getAll(token,page) 获取所有收藏音乐人
favoriteMusixisers/ update(id,token) 收藏,删除,屏蔽...某位音乐人 0 remove 1add 2...3...4...
favoriteWorks/getAll(token,page) 获取所有收藏作品
favoriteWorks/update(id,token) 收藏,删除...某作品 0 remove 1add 2...3...4...

based on work
work/getContentById(id)

sql backend

do not store as cache or something similar...

store work

store work, and create a musixiser personal page to show and replay

更新作品

api/work/updateInfo/{id} 更新作品信息 (title, description)
全局是自己的作品允许编辑信息

ios sharing

  1. sharing stage page
    2.sharing work! this is hard, need to figure out ways to achieve

show real name

since currently, Chinese names can be put in as 'realname', show them on H5

midi test page

based on url param, play different test files as test pages

'个人收藏页'

myFavorite page:
Entrance is the first tab on the bottom.
functions:
two tabs on the top. One is "my favorite performers" (many small avatars linked to 艺人详情页).
One is "my favorite works", onclick play the piece.

Native Module(Components/Plugins) & Bridges & schemeURLs

we need components and bridges, hopefully won't double the work...
Finally we need a wiki doc page for all the native plugins/bridges... @xiaoming20152015 please go ahead and create a minimal wiki in Github first.
some plugins/bridges in my mind, (and feel free to add whatever):

Bridges:
PushWebPage
SetTitle
ShowToast
GetUserInfo

MusixiserCheckerDialog(关注,私信那个对话框)
UploadImage
ShareToThirdParty
GetAppInfo via useragent
’enableShare’,true
SchemeURL:
musixise://play/{work_ids}
musixise://musixiser/{musixiser_id} //H5 page: m.musixise.com/musixiser-detail/{musixiser_id}
musixise://stage/{musixiser_id} //H5 page: m.musixisie.com/stage/{musixiser_id}
musixise://login !important
musixise://openWebPage?url=
musixise://share?title=' + encodeURIComponent(content) + '&url=' + encodeURIComponent('http://alimusic.xiami.com/markets/xiami/redeem_code') + '&pic='+ encodeURIComponent(self.modulesData.headerModule.albumLogo) + '&content=' + encodeURIComponent(content);

insert musixise into UserAgent
scan QR code

in the future:
pay related
API ajax related

ios sharing

  1. sharing stage page
    2.sharing work! this is hard, need to figure out ways to achieve

‘艺人详情页’

'performer's page'
Entrance is kind of random. e.g. small avatar in stagelist, small avatar in my favorite page . etc.
functions:
two tabs, one is basicInfo, one is past work (参考映客)

‘我的’page

"myInfo" page, whose entrance is the 3rd tab on the bottom.
functions include:

  1. view basic info
    2.update basic info
    (3. if the user is performer as well,show his work in the future)

list page, stage page

after entering stage page, the list page might stop updating, which causes weird behaviors.
Try letting list page keep updated constantly.

ios https

需要先做白名单操作,之后可到godaddy上购买ssl证书

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.