monkeytype/frontend
Ryan Souza 154b88eecf
feat(language): add Erlang programming language support (@Ryrden) (#7013)
### Description

This PR adds support for the Erlang programming language to Monkeytype,
providing developers with a comprehensive set of essential Erlang
keywords, OTP behaviors, and standard library functions for typing
practice.

**Changes made:**
- Add `code_erlang` to language schema
(`packages/schemas/src/languages.ts`)
- Add `code_erlang` to frontend constants in the `code` language group
(`frontend/src/ts/constants/languages.ts`)
- Create `code_erlang.json` with 245 essential Erlang keywords and
functions
- Includes core language constructs (after, and, case, receive, spawn),
OTP behaviors (gen_server, supervisor, application), built-in functions
(spawn_link, monitor, register), and standard library modules (lists,
string, ets, mnesia, file, io)

### Checks

- [ ] Adding quotes?
- [ ] Make sure to include translations for the quotes in the
description (or another comment) so we can verify their content.
- [x] Adding a language?
- Make sure to follow the [languages
documentation](https://github.com/monkeytypegame/monkeytype/blob/master/docs/LANGUAGES.md)
  - [x] Add language to `packages/schemas/src/languages.ts`
- [x] Add language to exactly one group in
`frontend/src/ts/constants/languages.ts`
  - [x] Add language json file to `frontend/static/languages` 
- [ ] Adding a theme?
- Make sure to follow the [themes
documentation](https://github.com/monkeytypegame/monkeytype/blob/master/docs/THEMES.md)
  - [ ] Add theme to `packages/schemas/src/themes.ts`
  - [ ] Add theme to `frontend/src/ts/constants/themes.ts`
  - [ ] Add theme css file to `frontend/static/themes`
- [ ] Add some screenshot of the theme, especially with different test
settings (colorful, flip colors) to your pull request
- [ ] Adding a layout?
- [ ] Make sure to follow the [layouts
documentation](https://github.com/monkeytypegame/monkeytype/blob/master/docs/LAYOUTS.md)
  - [ ] Add layout to `packages/schemas/src/layouts.ts`
  - [ ] Add layout json file to `frontend/static/layouts` 
- [ ] Adding a font?
- Make sure to follow the [themes
documentation](https://github.com/monkeytypegame/monkeytype/blob/master/docs/FONTS.md)
  - [ ] Add font file  to `frontend/static/webfonts`
  - [ ] Add font to `packages/schemas/src/fonts.ts`
  - [ ] Add font to `frontend/src/ts/constants/fonts.ts`
- [x] Check if any open issues are related to this PR; if so, be sure to
tag them below.
- [x] Make sure the PR title follows the Conventional Commits standard.
(https://www.conventionalcommits.org for more info)
- [x] Make sure to include your GitHub username prefixed with @ inside
parentheses at the end of the PR title.

<!-- No related issues found -->

Note: Please, is it possible to add the label `hacktoberfest-accepted`
to this PR?

Co-authored-by: Jack <jack@monkeytype.com>
2025-10-15 10:44:50 +02:00
..
__tests__ fix: additional accents not applied correctly 2025-10-12 16:20:06 +02:00
docker chore: update nodejs to 20.19.4 (@fehmer) (#6805) 2025-07-30 10:06:04 +02:00
scripts ci: improve error messages for check-assets (@fehmer) (#6994) 2025-10-15 10:35:34 +02:00
src feat(language): add Erlang programming language support (@Ryrden) (#7013) 2025-10-15 10:44:50 +02:00
static feat(language): add Erlang programming language support (@Ryrden) (#7013) 2025-10-15 10:44:50 +02:00
.eslintrc.cjs chore(eslint): add rule to protect against accessing __testing outside of test files 2025-09-01 14:25:58 +02:00
.firebaserc_example
.oxlintrc.json chore: change oxlint config to jsonc 2025-09-11 22:04:48 +02:00
firebase.json
package.json chore: bump oxlint 2025-09-11 22:04:48 +02:00
tsconfig.json
vite.config.dev.js refactor(schema): move font config to schema (@fehmer) (#6780) 2025-07-26 13:34:03 +02:00
vite.config.js refactor(schema): move font config to schema (@fehmer) (#6780) 2025-07-26 13:34:03 +02:00
vite.config.prod.js chore: implement manual chunks, make sentry a dynamic import 2025-08-20 21:56:26 +02:00
vitest.config.ts test: don't use globals for vitest (@fehmer) (#6871) 2025-08-14 11:25:44 +02:00