1
0

atlas.config.yml 23 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439
  1. general:
  2. appName: 'Atlas' # Application name - used in the copy throughout the app, in index.html, open graph meta tags, etc
  3. appDescription: 'The streaming platform empowering viewers, creators, and builders. Built on and operated by the Joystream blockchain and DAO.' # Application description - used in index.html meta tags
  4. appTwitterId: '@JoystreamDAO' # Twitter handle for the app - used in open graph meta tags in HTML
  5. appUrl: 'https://play.joystream.org' # URL at which the app is hosted - used in open graph meta tags in HTML
  6. appGithubUrl: 'https://github.com/Joystream/atlas' # URL for Atlas GitHub repository - used in the footer
  7. appOgImgPath: '/og-image.webp' # Path to the open graph image - used in open graph meta tags in HTML
  8. pioneerMemberUrlPrefix: 'https://dao.joystream.org/#/members' # URL prefix for Pioneer member profile page - used to link to member details
  9. joystreamLandingPageUrl: 'https://www.joystream.org' # URL for Joystream landing page - used in the footer and in "Learn more" links
  10. joystreamDiscordUrl: 'https://discord.gg/DE9UN3YpRP' # URL for Joystream Discord - used for support when errors occur
  11. storage:
  12. assetResponseTimeout: 20000 # Timeout for asset response in ms - after this timeout, different distributor will be tried
  13. assetUploadStatusPollingInterval: 2000 # Interval for polling asset upload status in ms - polling begins once asset is uploaded and is finished once QN reports the asset as accepted
  14. uploadProcessingTimeout: 60000 # Timeout for processing uploaded asset in ms - after this timeout, upload will be considered failed
  15. minimumDistributorRefetchTime: 1000 # Minimum time before refetching distributors list in ms - refetching is done if certain bag is not found on any distributor
  16. geolocationServiceUrl: '$VITE_GEOLOCATION_SERVICE_URL' # URL for geolocation service - used to determine user's location to find the closest distributor
  17. channelBagPrefix: 'dynamic:channel:' # Prefix for channel bag ID - used to create a unique bag ID for each channel
  18. uploadPath: 'api/v1/files' # Path to Storage Node upload endpoint
  19. assetPath: 'api/v1/assets' # Path to Distributor Node asset endpoint
  20. joystream:
  21. tokenTicker: 'tJOY' # Ticker for the token used in the app
  22. tokenPriceFeedUrl: null # URL for the token price feed - used to display token price in the app
  23. alternativeNodes:
  24. - name: 'Jsgenesis (Europe/UK)'
  25. url: 'wss://testnet-rpc-3-uk.joystream.org'
  26. - name: 'Jsgenesis (US/East)'
  27. url: 'wss://testnet-rpc-1-us.joystream.org'
  28. - name: 'JoystreamStats.Live'
  29. url: 'wss://pl.joystreamstats.live/rpc'
  30. - name: 'Local'
  31. url: 'ws://localhost:9944'
  32. features:
  33. nft:
  34. auctionMinimumBidStepMultiplier: 0.02 # Multiplier for the auction's starting price used to determine auction's minimum bid step. See more: https://joystream.gitbook.io/testnet-workspace/system/content-directory/nft#auction
  35. openAuctionBidLockDuration: 300 # Number of blocks for which bids on open auctions are locked from withdrawal. See more: https://joystream.gitbook.io/testnet-workspace/system/content-directory/nft#auction-type
  36. englishAuctionExtensionPeriod: 5 # Number of blocks from the auction's end during which auction will be extended if a bid is placed. See more: https://joystream.gitbook.io/testnet-workspace/system/content-directory/nft#auction-type
  37. statusPollingInterval: 20000 # Interval for polling NFT status on VideoView in ms
  38. notifications:
  39. pollingInterval: 30000 # Interval for polling notifications in ms
  40. members:
  41. avatarServiceUrl: '$VITE_AVATAR_SERVICE_URL' # URL for avatar service - used to upload member's avatar
  42. hcaptchaSiteKey: '$VITE_HCAPTCHA_SITE_KEY' # Site key for hCaptcha - used to verify users are not bots when creating memberships - depends on hCaptcha being enabled in the faucet
  43. playback:
  44. playbackRates: [2, 1.5, 1.25, 1, 0.5, 0.25] # Playback rates available in the player
  45. comments:
  46. reactions: # List of allowed comment reactions
  47. - id: 1
  48. emoji: '👍'
  49. name: 'like'
  50. - id: 2
  51. emoji: '❤️'
  52. name: 'love'
  53. - id: 3
  54. emoji: '😂'
  55. name: 'laugh'
  56. - id: 4
  57. emoji: '🤯'
  58. name: 'shock'
  59. - id: 5
  60. emoji: '😠'
  61. name: 'anger'
  62. content:
  63. blockedDataObjectIds: [] # Array of data object IDs that should be blocked from being displayed in the app
  64. blockedVideoIds: [] # Array of video IDs that should be blocked from being displayed in the app
  65. blockedChannelIds: [] # Array of channel IDs that should be blocked from being displayed in the app
  66. officialJoystreamChannelId: null # ID of the official Joystream channel to display "Official Joystream updates" section on the homepage - can be set to null to disable this section
  67. categories: # List of display categories to be used in the app. Those are local to the application and are related to metaprotocol categories via 'videoCategories' array.
  68. - id: '1' # Local category ID
  69. name: 'Science & Technology' # Display name of the category
  70. color: '#D92E61' # Color used in the UI for this category
  71. iconUrl: 'https://eu-central-1.linodeobjects.com/atlas-assets/category-icons/science-and-technology.svg' # URL for category icon SVG
  72. coverImgUrl: 'https://eu-central-1.linodeobjects.com/atlas-assets/category-images/science-and-technology.webp' # URL for category cover image
  73. videoCategories: ['275141-2'] # List of metaprotocol category IDs that should be included in this display category
  74. defaultVideoCategory: '275141-2'
  75. - id: '2'
  76. name: 'Pets & Animals'
  77. color: '#E7BE2D'
  78. iconUrl: 'https://eu-central-1.linodeobjects.com/atlas-assets/category-icons/pets-and-animals.svg'
  79. coverImgUrl: 'https://eu-central-1.linodeobjects.com/atlas-assets/category-images/pets-and-animals.webp'
  80. videoCategories: ['275146-2']
  81. defaultVideoCategory: '275146-2'
  82. - id: '3'
  83. name: 'Film & Animation'
  84. color: '#BD4BE4'
  85. iconUrl: 'https://eu-central-1.linodeobjects.com/atlas-assets/category-icons/film-and-animation.svg'
  86. coverImgUrl: 'https://eu-central-1.linodeobjects.com/atlas-assets/category-images/film-and-animation.webp'
  87. videoCategories: ['275153-2']
  88. defaultVideoCategory: '275153-2'
  89. - id: '4'
  90. name: 'People & Blogs'
  91. color: '#BDE933'
  92. iconUrl: 'https://eu-central-1.linodeobjects.com/atlas-assets/category-icons/people-and-blogs.svg'
  93. coverImgUrl: 'https://eu-central-1.linodeobjects.com/atlas-assets/category-images/people-and-blogs.webp'
  94. videoCategories: ['275164-2']
  95. defaultVideoCategory: '275164-2'
  96. - id: '5'
  97. name: 'Entertainment'
  98. color: '#54A7F0'
  99. iconUrl: 'https://eu-central-1.linodeobjects.com/atlas-assets/category-icons/entertainment.svg'
  100. coverImgUrl: 'https://eu-central-1.linodeobjects.com/atlas-assets/category-images/entertainment.webp'
  101. videoCategories: ['275174-2']
  102. defaultVideoCategory: '275174-2'
  103. - id: '6'
  104. name: 'Education'
  105. color: '#DD379D'
  106. iconUrl: 'https://eu-central-1.linodeobjects.com/atlas-assets/category-icons/education.svg'
  107. coverImgUrl: 'https://eu-central-1.linodeobjects.com/atlas-assets/category-images/education.webp'
  108. videoCategories: ['275189-2']
  109. defaultVideoCategory: '275189-2'
  110. - id: '7'
  111. name: 'Travel & Events'
  112. color: '#5A7AEE'
  113. iconUrl: 'https://eu-central-1.linodeobjects.com/atlas-assets/category-icons/travel-and-events.svg'
  114. coverImgUrl: 'https://eu-central-1.linodeobjects.com/atlas-assets/category-images/travel-and-events.webp'
  115. videoCategories: ['275201-2']
  116. defaultVideoCategory: '275201-2'
  117. - id: '8'
  118. name: 'Sports'
  119. color: '#41EE5A'
  120. iconUrl: 'https://eu-central-1.linodeobjects.com/atlas-assets/category-icons/sports.svg'
  121. coverImgUrl: 'https://eu-central-1.linodeobjects.com/atlas-assets/category-images/sports.webp'
  122. videoCategories: ['275212-2']
  123. defaultVideoCategory: '275212-2'
  124. - id: '9'
  125. name: 'Gaming'
  126. color: '#9455E8'
  127. iconUrl: 'https://eu-central-1.linodeobjects.com/atlas-assets/category-icons/gaming.svg'
  128. coverImgUrl: 'https://eu-central-1.linodeobjects.com/atlas-assets/category-images/gaming.webp'
  129. videoCategories: ['275218-2']
  130. defaultVideoCategory: '275218-2'
  131. - id: '10'
  132. name: 'Comedy'
  133. color: '#4FE1F2'
  134. iconUrl: 'https://eu-central-1.linodeobjects.com/atlas-assets/category-icons/comedy.svg'
  135. coverImgUrl: 'https://eu-central-1.linodeobjects.com/atlas-assets/category-images/comedy.webp'
  136. videoCategories: ['275226-2']
  137. defaultVideoCategory: '275226-2'
  138. - id: '11'
  139. name: 'Autos & Vehicles'
  140. color: '#6E5FEC'
  141. iconUrl: 'https://eu-central-1.linodeobjects.com/atlas-assets/category-icons/autos-and-vehicles.svg'
  142. coverImgUrl: 'https://eu-central-1.linodeobjects.com/atlas-assets/category-images/autos-and-vehicles.webp'
  143. videoCategories: ['275231-2']
  144. defaultVideoCategory: '275231-2'
  145. - id: '12'
  146. name: 'Howto & Style'
  147. color: '#E57827'
  148. iconUrl: 'https://eu-central-1.linodeobjects.com/atlas-assets/category-icons/howto-and-style.svg'
  149. coverImgUrl: 'https://eu-central-1.linodeobjects.com/atlas-assets/category-images/howto-and-style.webp'
  150. videoCategories: ['275234-2']
  151. defaultVideoCategory: '275234-2'
  152. - id: '13'
  153. name: 'Music'
  154. color: '#6EEC3A'
  155. iconUrl: 'https://eu-central-1.linodeobjects.com/atlas-assets/category-icons/music.svg'
  156. coverImgUrl: 'https://eu-central-1.linodeobjects.com/atlas-assets/category-images/music.webp'
  157. videoCategories: ['275237-2']
  158. defaultVideoCategory: '275237-2'
  159. - id: '14'
  160. name: 'Nonprofits & Activism'
  161. color: '#E141D6'
  162. iconUrl: 'https://eu-central-1.linodeobjects.com/atlas-assets/category-icons/nonprofits-and-activism.svg'
  163. coverImgUrl: 'https://eu-central-1.linodeobjects.com/atlas-assets/category-images/nonprofit-and-activism.webp'
  164. videoCategories: ['275241-2']
  165. defaultVideoCategory: '275241-2'
  166. - id: '15'
  167. name: 'News & Politics'
  168. color: '#48F0B3'
  169. iconUrl: 'https://eu-central-1.linodeobjects.com/atlas-assets/category-icons/news-and-politics.svg'
  170. coverImgUrl: 'https://eu-central-1.linodeobjects.com/atlas-assets/category-images/news-and-politics.webp'
  171. videoCategories: ['275244-2']
  172. defaultVideoCategory: '275244-2'
  173. showAllContent: true # With this disabled, Atlas will display only content from display categories defined above. If you want your app to display all Joystream content, set this to true.
  174. languages: # List of languages to be used in the app. Those will be used when setting video's language, for adding subtitles, etc.
  175. - isoCode: ar
  176. name: Arabic
  177. - isoCode: zh
  178. name: Chinese
  179. - isoCode: en
  180. name: English
  181. - isoCode: fr
  182. name: French
  183. - isoCode: de
  184. name: German
  185. - isoCode: ja
  186. name: Japanese
  187. - isoCode: ms
  188. name: Malay
  189. - isoCode: pt
  190. name: Portuguese
  191. - isoCode: ru
  192. name: Russian
  193. - isoCode: st
  194. name: Spanish
  195. - isoCode: am
  196. name: Amharic
  197. - isoCode: bn
  198. name: Bengali
  199. - isoCode: bg
  200. name: Bulgarian
  201. - isoCode: hr
  202. name: Croatian
  203. - isoCode: cs
  204. name: Czech
  205. - isoCode: da
  206. name: Danish
  207. - isoCode: dv
  208. name: Dutch
  209. - isoCode: et
  210. name: Estonian
  211. - isoCode: fj
  212. name: Filipino
  213. - isoCode: fi
  214. name: Finnish
  215. - isoCode: el
  216. name: Greek
  217. - isoCode: ha
  218. name: Hausa
  219. - isoCode: he
  220. name: Hebrew
  221. - isoCode: hu
  222. name: Hungarian
  223. - isoCode: ga
  224. name: Irish
  225. - isoCode: it
  226. name: Italian
  227. - isoCode: ko
  228. name: Korean
  229. - isoCode: lo
  230. name: Lao
  231. - isoCode: lv
  232. name: Latvian
  233. - isoCode: lt
  234. name: Lithuanian
  235. - isoCode: mt
  236. name: Maltese
  237. - isoCode: pl
  238. name: Polish
  239. - isoCode: pa
  240. name: Punjabi
  241. - isoCode: qu
  242. name: Romanian
  243. - isoCode: sk
  244. name: Slovak
  245. - isoCode: sl
  246. name: Slovenian
  247. - isoCode: sw
  248. name: Swahili
  249. - isoCode: sv
  250. name: Swedish
  251. - isoCode: ta
  252. name: Tamil
  253. - isoCode: th
  254. name: Thai
  255. - isoCode: tr
  256. name: Turkish
  257. - isoCode: ur
  258. name: Urdu
  259. - isoCode: vi
  260. name: Vietnamese
  261. - isoCode: yo
  262. name: Yoruba
  263. popularLanguages: ['en', 'ar', 'zh', 'fr', 'de', 'ja', 'ms', 'pt', 'ru', 'st']
  264. analytics:
  265. assetLogs: # Asset logs are used to track distributors performance
  266. url: '$VITE_ASSET_LOGS_URL'
  267. sentry: # Sentry can be used for capturing errors and logs from the app
  268. dsn: '$VITE_SENTRY_DSN' # Sentry DSN
  269. livesession: # Livesession can be used for user session recording
  270. id: '$VITE_LIVESESSION_ID'
  271. rootHostname: '$VITE_LIVESESSION_ROOT_HOSTNAME'
  272. usersnap: # Usersnap can be used to capture user feedback
  273. id: '$VITE_USERSNAP_ID'
  274. legal:
  275. termsOfService: |
  276. # Terms of Service
  277. Last updated on the 4th of May 2021
  278. This Terms of Service ("Agreement") is a binding obligation between you ("User") and Jsgenesis AS ("Company", "We", "Us", "Our") for use of our Joystream Player interface ("Atlas") hosted at play.joystream.org and all other products (collectively "Software") developed and published by Us.
  279. ## 1. Agreement to Terms
  280. By using Our Software, the User is agreeing to be bound by this Agreement. If you are acting on behalf of another company or an employer, you must have the rights to act on their behalf.
  281. ## 2. Changes to Terms
  282. This Agreement may be modified or updated at the sole discretion of Company without notice. Your continued use of our Software is confirmation of your acceptance of the latest Agreement.
  283. ## 3. Privacy Policy
  284. Please see our Privacy Policy (https://www.joystream.org/privacy-policy/) for information regarding privacy.
  285. ## 4. Membership
  286. By generating private/public cryptographic keys ("Keys") or applying for a membership account ("Membership"), you accept the risk of losing access to your Keys and Membership. Reasons include, but are not limited to:
  287. - Losing passwords
  288. - Losing recovery seeds or mnemonics
  289. - Deleting accounts and backups
  290. - Security breaches
  291. Under no circumstance will Company take any responsibility for loss resulting from losing access to Membership or Keys.
  292. ## 5. User Conduct
  293. By using Our Software, you agree to not state, write, link to, download, distribute, share or encourage other users to state, write, link to, download, distribute, share or encourage anything that:
  294. - breach or infringe any copyright or intellectual property of any third party.
  295. - is abusive, malicious, threatening or unlawful in any way.
  296. Company has not reviewed all content published on our services, and is not responsible for content submitted or provided by individuals or groups not directly tied to them.
  297. ## 6. Responsibilities and Risks
  298. In no event shall Company, its contractors, employees or owners be liable for any damage or loss of any kind to User arising out of the use or inability to use any Software made by Company. In no event shall Company, its contractors, employees or owners be liable for any damage or loss of any kind to User resulting of clicking links, following guides, using software or doing anything else recommended by Company.
  299. ## 7. Content Takedown Policy
  300. Jsgenesis has established a policy for content takedowns in accordance with the Digital Millennium Copyright Act (DMCA) which can be viewed at https://play.joystream.org/legal/copyright.
  301. ## 8. Governing Law
  302. These terms and conditions are governed by and construed in accordance with the laws of Norway.
  303. copyrightPolicy: |
  304. # DMCA Policy For Content Takedown
  305. Jsgenesis AS, the developers of the Joystream protocol, have established a copyright infringement policy in accordance with the Digital Millennium Copyright Act.
  306. Copyright owners and their agents may notify us in cases where content hosted on our testnets (available publicly at https://play.joystream.org and https://testnet.joystream.org) infringes on their copyrights by sending a DMCA notice to us using the contact information below.
  307. Upon receipt of a valid and complete notice, we will remove the content from our public-facing applications as quickly as possible. We may also suspend the ability of the uploader to participate further on our testnet.
  308. Where possible, we will attempt to notify the alleged infringer of the takedown, with a copy of your DMCA Notice, using the contact information provided to us.
  309. You can be held liable for damages, including costs and attorney fees, if you materially misrepresent that material or activity infringes on your copyright.
  310. # Requirements for DMCA Notices
  311. Your DMCA Notice must include all of the following information:
  312. - A physical or electronic signature of the copyright owner, or a person authorized to act on behalf of the copyright owner;
  313. - Identification (URL) of the copyrighted work or material being infringed upon;
  314. - Description of the work or material that you claim to be infringing and would like to be removed, including information regarding its location (URL) with enough detail so that we can and verify it;
  315. - Your full legal name, mailing address, telephone number, and email address where we can contact you;
  316. - A statement that you have a good faith belief that use of the material in the manner complained of is not authorized by the copyright owner, its agent, or the law; and
  317. - A statement that the information in your DMCA Notice is accurate, and under penalty of perjury, that you are the copyright owner or are authorized to act on behalf of the copyright owner.
  318. # DMCA Agent Information
  319. Our dedicated email address for DMCA notifications is: abuse@jsgenesis.com.
  320. Alternatively you can contact us by post:
  321. Designated DMCA Agent Jsgenesis AS
  322. CO UMA Workspace Stenersgata 8
  323. Oslo, 0184 Norway
  324. Or by telephone: **+44789553019**
  325. # DMCA Counter Notification
  326. If your content has been mistakenly removed from our testnet, you can submit a DMCA Counter Notification using
  327. the same contact information shown above.
  328. Your DMCA Counter Notification must include all of the following information:
  329. - Your physical or electronic signature;
  330. - Identification (URL) of the material that has been removed or to which access has been disabled and the location at which the material appeared before it was removed or access to it was disabled (the description from the DMCA Notice is acceptable);
  331. - A statement under penalty of perjury that you have a good faith belief that the material was removed or disabled as a result of mistake or misidentification of the material to be removed or disabled;
  332. - Your full legal name, mailing address, telephone number, and email address where we can contact you; and
  333. - A statement that you consent to the jurisdiction of Federal District Court for the judicial district in which your address is located, or if your address is outside of the United States, for any judicial district in which Jsgenesis may be found, and that you will accept service of process from the person who provided the DMCA Notice or an agent of such person.
  334. If we receive valid DMCA Counter Notification that meets the above requirements, we will forward a copy to the
  335. person who filed the original DMCA Notice. If we do not receive notice within 10 business days that the person
  336. who submitted the DMCA Notice is seeking a court order to prevent the infringement of the content at issue, we
  337. will replace or re-enable access to the content that was removed.
  338. privacyPolicy: |
  339. # 1. Privacy Policy
  340. Last updated on the 23rd of February 2022
  341. ## 1.1 Agreement to the Policy
  342. By using any of Our Software, the User are accepting this Privacy Policy. If you are acting on behalf of another company or an employer, you must have the rights to act on their behalf. The Privacy Policy is not extended to any of our newsletters, where Users are bound by the privacy policy of Mailchimp
  343. The Privacy Policy does not apply to any other third party services including, but not limited to, applications, websites, tools or software, even if accessible through links or guides in our Software.
  344. ## 1.2 Changes to Policy
  345. This Privacy Policy may be changed at the sole discretion of Company. If any material changes are made, the User will be notified in the Service that is used. Note that adding new products to be included in the term Software, e.g. a new User facing product replacing the App or a new tool for uploading Content, is not considered material as it will not affect Users unless they adopt the new product. Changing software names, terminology used in this Privacy Policy, and changing link locations are also examples of non-material changes.
  346. ## 1.3 Information colleted
  347. All data written to the Blockchain, is implicitly collected not only by Company, but also anyone else in the world that is running the Full Node locally, or accessed via the App or a third party. This includes, but is not limited to, Content hashes, Membership profile, Memo field, and any other way a User can record data on the Blockchain. ‍
  348. When using the faucet subpage of the Website, Company will record the IP address behind every new request for tokens. This data will be deleted every 14 days.
  349. Company uses Google Analytics, with IP anonymization, to collect statistics on Website and the version of App hosted by us. All customisable data sharing settings are turned off to improve the privacy of Users.
  350. Company also uses Livesession to help us find bugs, improve UX and more by using session replays. Sensitive data such as passwords and IP addresses are anonymized.
  351. Company will not sell your data for advertising, or other purposes.
  352. # 2. Cookies Policy
  353. ## 2.1 What are Cookies?
  354. Cookies are small pieces of text sent by your web browser by a website you visit. A cookie file is stored in your web browser and allows the Service or a third-party to recognise you and make your next visit easier and the Service more useful to you.
  355. Cookies can be persistent or session cookies.
  356. ## 2.2 How we use Cookies
  357. We use cookies for the following purposes our Service:
  358. - Provide Analytics
  359. - Store preferences
  360. - Persistant local storage of Keys and Membership.
  361. ## 2.3 Third-party Cookies
  362. In addition to our own cookies, we also use various third-party cookies to report usage statistics of the Service, deliver advertisements on and through the Service, and so on. They include:
  363. - Google Analytics
  364. - Mailchimp (Only when signing up for any of our newsletters)
  365. - Godaddy
  366. Please see Item 3. of the Privacy Policy for more information on the extent of these providers.
  367. ## 2.4 Regarding Your Cookies
  368. If you would like to delete cookies or instruct your web browser to delete or refuse cookies, please visit the help pages of your web browser.
  369. Please note, however, that if you delete cookies or refuse to accept them, you might not be able to use all of the features we offer, you may not be able to store your preferences, and some of our pages might not display properly.