owncast/web
2022-04-26 14:04:35 -07:00
..
.github Fix linter workflow? 2022-03-07 00:02:00 -08:00
.storybook Some Storybook configuration 2022-04-25 15:55:05 -07:00
.vscode Start codec selection in admin 2021-04-13 13:54:57 -07:00
components WIP VideoPoster 2022-04-26 13:50:14 -07:00
docs - add <Col>s to areas with <Row>s for consitency 2021-02-15 21:22:17 -08:00
models Initial api requests + stores + basic layout 2022-04-25 23:10:07 -07:00
pages Initial api requests + stores + basic layout 2022-04-25 23:10:07 -07:00
public Prettified Code! 2022-04-25 15:52:39 -07:00
services Added user registration call 2022-04-26 14:04:35 -07:00
stories WIP VideoPoster 2022-04-26 13:50:14 -07:00
styles Prettified Code! 2022-04-25 15:52:39 -07:00
types Display the representation % of players in metrics 2022-03-27 16:28:14 -07:00
utils Fix join msgs switch not firing api call 2022-04-19 12:52:40 -07:00
.editorconfig Bootstrap the admin project 2020-09-30 15:13:06 -07:00
.env.development blah 2020-10-07 23:09:42 -07:00
.env.production Support API calls without auth and without cors 2020-11-07 16:44:11 -08:00
.eslintignore Configure eslint action 2021-02-06 19:13:04 -08:00
.eslintrc.js Add support for less variables and using a custom theme 2022-04-25 15:52:38 -07:00
.gitignore Add support for less variables and using a custom theme 2022-04-25 15:52:38 -07:00
.prettierignore Add linting and code formatting 2020-09-30 18:47:18 -07:00
.prettierrc Add ability to set a user as a moderator via the admin (#355) 2021-11-02 17:06:46 -07:00
favicon.ico a bit of refactor, use context for overall broacast status; move files around for routing 2020-10-22 16:18:18 -07:00
LICENSE Initial commit 2020-09-30 14:47:14 -07:00
next-env.d.ts Admin social features (#408) 2022-01-12 13:52:37 -08:00
next.config.js Moved admin to /admin and created blank placeholder for v2 frontend 2022-04-25 15:54:37 -07:00
package-lock.json Initial api requests + stores + basic layout 2022-04-25 23:10:07 -07:00
package.json Initial api requests + stores + basic layout 2022-04-25 23:10:07 -07:00
postcss.config.js First pass at component library 2022-04-25 15:52:38 -07:00
README.md Update readme instructions 2022-04-25 19:10:29 -07:00
renovate.json Require NPM modules to be stable for 3 days 2022-02-02 14:49:50 -08:00
tsconfig.json Project setting updates 2021-11-08 00:37:15 -08:00

Owncast Web

Owncast Web Frontend

The Owncast web frontend is a Next.js project with React components, TypeScript, Sass styling, using Ant Design UI components.

Getting Started

First, install the dependencies.

npm install --include=dev

Run the web project

Make sure you're running an instance of Owncast on localhost:8080, as your copy of the admin will look to use that as the API.

Next, start the web project with npm.

npm run dev

Update the project

You can add or edit a pages by modifying pages/something.js. The page auto-updates as you edit the file.

Routes will automatically be available for this new page components.

Since this project hits API endpoints you should make requests in componentDidMount, and not in getStaticProps, since they're not static and we don't want to fetch them at build time, but instead at runtime.

A list of API end points can be found here: https://owncast.online/api/development/

Admin Authentication

The pages until /admin require authentication to make API calls.

Auth: HTTP Basic

username: admin

pw: [your streamkey]

Learn More

To learn more about Next.js, take a look at the following resources:

You can check out the Next.js GitHub repository - your feedback and contributions are welcome!

Style guide and components

We are currently experimenting with using Storybook to build components, experiment with styling, and have a single place to find colors, fonts, and other styles.

To work with Storybook:

npm run storybook