├── .github └── FUNDING.yml ├── .gitignore ├── README.md ├── package-lock.json ├── package.json ├── public ├── favicon.ico ├── index.html ├── locales │ ├── af │ │ ├── login.json │ │ ├── network.json │ │ ├── register.json │ │ └── translation.json │ ├── ar │ │ ├── login.json │ │ ├── network.json │ │ ├── register.json │ │ └── translation.json │ ├── be │ │ ├── login.json │ │ ├── network.json │ │ ├── register.json │ │ └── translation.json │ ├── bg │ │ ├── login.json │ │ ├── network.json │ │ ├── register.json │ │ └── translation.json │ ├── ca │ │ ├── login.json │ │ ├── network.json │ │ ├── register.json │ │ └── translation.json │ ├── cs │ │ ├── login.json │ │ ├── network.json │ │ ├── register.json │ │ └── translation.json │ ├── da │ │ ├── login.json │ │ ├── network.json │ │ ├── register.json │ │ └── translation.json │ ├── de │ │ ├── login.json │ │ ├── network.json │ │ ├── register.json │ │ └── translation.json │ ├── el │ │ ├── login.json │ │ ├── network.json │ │ ├── register.json │ │ └── translation.json │ ├── en │ │ ├── login.json │ │ ├── network.json │ │ ├── register.json │ │ └── translation.json │ ├── eo │ │ ├── login.json │ │ ├── network.json │ │ ├── register.json │ │ └── translation.json │ ├── es │ │ ├── login.json │ │ ├── network.json │ │ ├── register.json │ │ └── translation.json │ ├── fi │ │ ├── login.json │ │ ├── network.json │ │ ├── register.json │ │ └── translation.json │ ├── fr │ │ ├── login.json │ │ ├── network.json │ │ ├── register.json │ │ └── translation.json │ ├── he │ │ ├── login.json │ │ ├── network.json │ │ ├── register.json │ │ └── translation.json │ ├── hi │ │ ├── login.json │ │ ├── network.json │ │ ├── register.json │ │ └── translation.json │ ├── hr │ │ ├── login.json │ │ ├── network.json │ │ ├── register.json │ │ └── translation.json │ ├── hu │ │ ├── login.json │ │ ├── network.json │ │ ├── register.json │ │ └── translation.json │ ├── id │ │ ├── login.json │ │ ├── network.json │ │ ├── register.json │ │ └── translation.json │ ├── it │ │ ├── login.json │ │ ├── network.json │ │ ├── register.json │ │ └── translation.json │ ├── ja │ │ ├── login.json │ │ ├── network.json │ │ ├── register.json │ │ └── translation.json │ ├── ko │ │ ├── login.json │ │ ├── network.json │ │ ├── register.json │ │ └── translation.json │ ├── lt │ │ ├── login.json │ │ ├── network.json │ │ ├── register.json │ │ └── translation.json │ ├── nl │ │ ├── login.json │ │ ├── network.json │ │ ├── register.json │ │ └── translation.json │ ├── no │ │ ├── login.json │ │ ├── network.json │ │ ├── register.json │ │ └── translation.json │ ├── pl │ │ ├── login.json │ │ ├── network.json │ │ ├── register.json │ │ └── translation.json │ ├── pt │ │ ├── login.json │ │ ├── network.json │ │ ├── register.json │ │ └── translation.json │ ├── ro │ │ ├── login.json │ │ ├── network.json │ │ ├── register.json │ │ └── translation.json │ ├── ru │ │ ├── login.json │ │ ├── network.json │ │ ├── register.json │ │ └── translation.json │ ├── sk │ │ ├── login.json │ │ ├── network.json │ │ ├── register.json │ │ └── translation.json │ ├── sr │ │ ├── login.json │ │ ├── network.json │ │ ├── register.json │ │ └── translation.json │ ├── sv │ │ ├── login.json │ │ ├── network.json │ │ ├── register.json │ │ └── translation.json │ ├── tr │ │ ├── login.json │ │ ├── network.json │ │ ├── register.json │ │ └── translation.json │ ├── uk │ │ ├── login.json │ │ ├── network.json │ │ ├── register.json │ │ └── translation.json │ ├── ur │ │ ├── login.json │ │ ├── network.json │ │ ├── register.json │ │ └── translation.json │ ├── vi │ │ ├── login.json │ │ ├── network.json │ │ ├── register.json │ │ └── translation.json │ └── zh │ │ ├── login.json │ │ ├── network.json │ │ ├── register.json │ │ └── translation.json ├── logo192.png ├── logo512.png ├── manifest.json └── robots.txt ├── src ├── App.tsx ├── Client.tsx ├── assets │ ├── channel.svg │ ├── login.svg │ ├── logo │ │ ├── ios │ │ │ ├── 100.png │ │ │ ├── 1024.png │ │ │ ├── 114.png │ │ │ ├── 120.png │ │ │ ├── 128.png │ │ │ ├── 144.png │ │ │ ├── 152.png │ │ │ ├── 167.png │ │ │ ├── 172.png │ │ │ ├── 180.png │ │ │ ├── 196.png │ │ │ ├── 20.png │ │ │ ├── 216.png │ │ │ ├── 256.png │ │ │ ├── 29.png │ │ │ ├── 32.png │ │ │ ├── 40.png │ │ │ ├── 48.png │ │ │ ├── 50.png │ │ │ ├── 512.png │ │ │ ├── 55.png │ │ │ ├── 57.png │ │ │ ├── 58.png │ │ │ ├── 60.png │ │ │ ├── 64.png │ │ │ ├── 72.png │ │ │ ├── 76.png │ │ │ ├── 80.png │ │ │ ├── 87.png │ │ │ ├── 88.png │ │ │ ├── logo.png │ │ │ ├── logo_gradient.png │ │ │ ├── logo_shadow.png │ │ │ └── resize.sh │ │ ├── resize.sh │ │ └── round │ │ │ ├── 100.png │ │ │ ├── 1024.png │ │ │ ├── 114.png │ │ │ ├── 120.png │ │ │ ├── 128.png │ │ │ ├── 144.png │ │ │ ├── 152.png │ │ │ ├── 16.png │ │ │ ├── 167.png │ │ │ ├── 172.png │ │ │ ├── 180.png │ │ │ ├── 196.png │ │ │ ├── 20.png │ │ │ ├── 216.png │ │ │ ├── 256.png │ │ │ ├── 29.png │ │ │ ├── 32.png │ │ │ ├── 40.png │ │ │ ├── 48.png │ │ │ ├── 50.png │ │ │ ├── 512.png │ │ │ ├── 55.png │ │ │ ├── 57.png │ │ │ ├── 58.png │ │ │ ├── 60.png │ │ │ ├── 64.png │ │ │ ├── 72.png │ │ │ ├── 76.png │ │ │ ├── 80.png │ │ │ ├── 87.png │ │ │ ├── 88.png │ │ │ ├── logo.png │ │ │ └── resize.sh │ ├── logo_big_transparent.png │ ├── logo_transparent.png │ ├── radio.svg │ ├── settings.png │ ├── settings.svg │ ├── speak.svg │ ├── speaker.png │ ├── voice.png │ └── voice.svg ├── components │ ├── Branding.scss │ ├── Branding.tsx │ ├── DevSettings.tsx │ ├── Drawer.scss │ ├── Drawer.tsx │ ├── ErrorBoundary.scss │ ├── ErrorBoundary.tsx │ ├── Routes.tsx │ └── private-route.tsx ├── framework │ ├── Button.tsx │ ├── Card.tsx │ ├── Checkbox.tsx │ ├── Dropdown.tsx │ ├── Icon.tsx │ ├── Input.tsx │ ├── Link.tsx │ ├── List.tsx │ ├── LittleModal.scss │ ├── LittleModal.tsx │ ├── Modal.scss │ ├── Modal.tsx │ ├── Spinner.scss │ ├── Spinner.tsx │ ├── Text.tsx │ ├── Types.tsx │ ├── radio.js │ └── tooltip.scss ├── index.scss ├── index.tsx ├── models │ └── networks.ts ├── pages │ ├── NotFound.tsx │ ├── TopScreen.scss │ ├── auth │ │ ├── Login.scss │ │ ├── login.tsx │ │ └── register.tsx │ ├── channel │ │ ├── messages.scss │ │ ├── messages.tsx │ │ ├── sidebar.scss │ │ └── sidebar.tsx │ ├── friends │ │ ├── friends.scss │ │ └── friends.tsx │ ├── guild │ │ ├── guild.scss │ │ └── guild.tsx │ └── loading-page.tsx ├── react-app-env.d.ts ├── reportWebVitals.ts ├── setupTests.ts └── util │ ├── Router.tsx │ ├── State.ts │ ├── Time.native.ts │ ├── Time.ts │ ├── debug.ts │ ├── i18n.ts │ ├── store.ts │ ├── useCache.ts │ └── useForceUpdate.tsx └── tsconfig.json /.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | open_collective: fosscord -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # See https://help.github.com/articles/ignoring-files/ for more about ignoring files. 2 | 3 | # dependencies 4 | /node_modules 5 | /.pnp 6 | .pnp.js 7 | 8 | # testing 9 | /coverage 10 | 11 | # production 12 | /build 13 | 14 | # misc 15 | .DS_Store 16 | .env.local 17 | .env.development.local 18 | .env.test.local 19 | .env.production.local 20 | 21 | npm-debug.log* 22 | yarn-debug.log* 23 | yarn-error.log* 24 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 |
2 |
3 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
{message}
34 | 37 | 38 | 41 |{props.description}
43 | 44 | {props.children} 45 |{tips[randomIndex]}
19 |