2015-01-20 01:53:18 -05:00
FrankerFaceZ
============
2024-10-24 13:35:58 -04:00
[](https://github.com/FrankerFaceZ/FrankerFaceZ/actions/workflows/build.yml)
[](https://github.com/FrankerFaceZ/Extension/actions/workflows/build-extension.yml)
Copyright (c) 2024 Dan Salvato LLC
2015-01-20 01:53:18 -05:00
2016-11-09 23:45:08 -05:00
Licensed under the Apache License, Version 2.0. See LICENSE.
2015-01-20 01:53:18 -05:00
Developing
==========
FrankerFaceZ uses node.js to manage development dependencies and to run an HTTP
2021-11-06 20:12:55 -04:00
server for development. This project uses the [pnpm ](https://pnpm.io/ ) package
manager. To get everything you need:
2015-01-20 01:53:18 -05:00
2021-11-06 20:12:55 -04:00
1. Install node.js and [pnpm ](https://pnpm.io/ )
2. Run `pnpm install` within the FrankerFaceZ directory.
2015-01-20 01:53:18 -05:00
2018-03-30 17:58:56 -04:00
From there, you can use npm to build FrankerFaceZ from source simply by
2021-11-06 20:12:55 -04:00
running `pnpm build` . For development, you can instruct webpack to watch
the source files for changes and re-build automatically with `pnpm start`
2015-01-20 01:53:18 -05:00
FrankerFaceZ comes with a local development server that listens on port 8000
and it serves up local development copies of files, falling back to the CDN
2017-11-13 01:23:39 -05:00
when a local copy of a file isn't present.
2015-01-20 01:53:18 -05:00
2020-08-04 18:26:11 -04:00
> **Note:** The local development server uses `webpack-dev-server` internally,
> which self-signs a certificate for hosting content via HTTPS. You will need
> to ensure your browser accepts a self-signed certificate for localhost.
2024-10-24 13:35:58 -04:00
The user-script version of FrankerFaceZ is designed to make it easy to load
from your local development server. Please switch to using the user-script
version for development purposes.
Then, you must set the local storage variable `ffzDebugMode` to true.
Just run the following in your console on Twitch:
```javascript
localStorage.ffzDebugMode = true;
```
2018-03-30 17:58:56 -04:00
2024-10-24 13:35:58 -04:00
---
2018-03-30 17:58:56 -04:00
2021-11-06 20:12:55 -04:00
You can edit the project's icon font using the `pnpm font` command. This will
2019-09-29 15:49:29 -04:00
create a new Fontello session, if one doesn't already exist, and open your
default web browser to Fontello so you can edit the font.
2021-11-06 20:12:55 -04:00
If you're running the development server with `pnpm start` , you'll be able to
2019-09-29 15:49:29 -04:00
automatically save changes to the Fontello font by clicking Fontello's Export
2021-11-06 20:12:55 -04:00
button. Otherwise, you can use `pnpm font:save` to download the changes
2019-09-29 15:49:29 -04:00
from your session.
2018-03-30 17:58:56 -04:00
Editor Settings
===============
Please make sure that your editor is configured to use tabs rather than spaces
for indentation and that lines are ended with `\n` . It's recommended that you
configure linting support for your editor as well.
If you're using Visual Studio Code, make sure to install the ESLint extension
and add the following to your workspace settings:
2018-04-02 03:30:22 -04:00
```json
2018-03-30 17:58:56 -04:00
{
"eslint.validate": [
"javascript",
2018-04-01 18:24:08 -04:00
"javascriptreact",
2018-03-30 17:58:56 -04:00
"vue"
]
2018-04-02 03:30:22 -04:00
}
```