No description
Find a file
Reto Brunner 161c25ed5a update npmignore for ts build
With the introduction of typescript we need to change the exclude
list of the package generation.

This commit does just that, by flipping the logic to an include list.
Maintaining an include list is actually easier in our case than the
exclude list, but we can't use the "files" package.json field as
we need to negate specific patterns in public/.
Patterns like `!public/js/bundle.vendor.js.map` in "files" make `yarn
pack` include all the files, as the check they do is buggy.
`npm pack` would work fine, but then we mix package managers again.

Using the allow list in .npmignore makes it work with both, npm and
yarn, but gets a bit more tedious to read for a human.
2023-02-27 02:37:41 +01:00
.github Remove node 12, add node 18. Bump minimum node version 14 (#4552) 2022-04-30 13:12:24 -07:00
.vscode TypeScript and Vue 3 (#4559) 2022-06-18 17:25:21 -07:00
client Merge pull request #4686 from thelounge/decoupleServer 2023-02-26 17:20:20 -08:00
defaults Fix misleading LDAP filiter in default config 2023-01-27 20:02:57 +08:00
scripts TypeScript and Vue 3 (#4559) 2022-06-18 17:25:21 -07:00
server Merge pull request #4685 from thelounge/networkProps 2023-02-26 17:23:23 -08:00
shared Move condensedTypes to shared/ 2023-01-30 09:14:40 +01:00
test Move condensedTypes to shared/ 2023-01-30 09:14:40 +01:00
.browserslistrc Use postcss to optimize css 2019-11-01 13:47:18 +02:00
.editorconfig Set up Prettier on md, html, json, and yaml 2019-07-17 10:22:30 +01:00
.eslintignore TypeScript and Vue 3 (#4559) 2022-06-18 17:25:21 -07:00
.eslintrc.cjs eslint: add shared/ 2023-01-30 09:14:40 +01:00
.gitattributes Add gitattributes to normalize line endings 2016-01-24 16:12:08 +02:00
.gitignore TypeScript and Vue 3 (#4559) 2022-06-18 17:25:21 -07:00
.npmignore update npmignore for ts build 2023-02-27 02:37:41 +01:00
.npmrc Set sign-git-tag to true in .npmrc 2018-01-11 17:12:04 +02:00
.prettierignore TypeScript and Vue 3 (#4559) 2022-06-18 17:25:21 -07:00
.thelounge_home Switch default home location to ~/.thelounge and remove support of .lounge_home 2018-02-19 20:43:53 +02:00
babel.config.cjs TypeScript and Vue 3 (#4559) 2022-06-18 17:25:21 -07:00
CHANGELOG.md Add changelog entry for v4.3.1 2022-04-11 17:26:23 -07:00
index.js TypeScript and Vue 3 (#4559) 2022-06-18 17:25:21 -07:00
LICENSE Update LICENSE notice to add ours on top of @erming and Shout 2016-02-10 06:20:05 +00:00
package.json bump irc-framework to 4.13.1 2023-02-06 22:20:40 +01:00
postcss.config.js Use postcss to optimize css 2019-11-01 13:47:18 +02:00
prettier.config.cjs Convert configs to cjs, move babel to own file, combine webpack configs (#4561) 2022-05-02 19:19:12 -07:00
README.md TypeScript and Vue 3 (#4559) 2022-06-18 17:25:21 -07:00
renovate.json renovate: Disable digest updates 2022-04-13 21:48:21 +02:00
SECURITY.md Change the IRC server to Libera.Chat 2021-05-23 16:40:08 +02:00
stylelint.config.cjs Convert configs to cjs, move babel to own file, combine webpack configs (#4561) 2022-05-02 19:19:12 -07:00
tsconfig.base.json base tsconfig: remove files section 2023-01-30 09:14:40 +01:00
tsconfig.json tsconfig: Add shared reference 2023-01-30 09:14:40 +01:00
volar.config.js TypeScript and Vue 3 (#4559) 2022-06-18 17:25:21 -07:00
webpack.config.ts client: use the versions in shared/ where applicable 2023-01-30 09:14:40 +01:00
yarn.lock Merge pull request #4692 from thelounge/irc-framework 2023-02-13 20:56:38 -08:00

The Lounge

Modern web IRC client designed for self-hosting

WebsiteDocsDemoDocker

#thelounge IRC channel on Libera.Chat npm version Build Status

Overview

  • Modern features brought to IRC. Push notifications, link previews, new message markers, and more bring IRC to the 21st century.
  • Always connected. Remains connected to IRC servers while you are offline.
  • Cross platform. It doesn't matter what OS you use, it just works wherever Node.js runs.
  • Responsive interface. The client works smoothly on every desktop, smartphone and tablet.
  • Synchronized experience. Always resume where you left off no matter what device.

To learn more about configuration, usage and features of The Lounge, take a look at the website.

The Lounge is the official and community-managed fork of Shout, by Mattias Erming.

Installation and usage

The Lounge requires latest Node.js LTS version or more recent. The Yarn package manager is also recommended. If you want to install with npm, --unsafe-perm is required for a correct install.

Running stable releases

Please refer to the install and upgrade documentation on our website for all available installation methods.

Running from source

The following commands install and run the development version of The Lounge:

git clone https://github.com/thelounge/thelounge.git
cd thelounge
yarn install
NODE_ENV=production yarn build
yarn start

When installed like this, thelounge executable is not created. Use node index <command> to run commands.

⚠️ While it is the most recent codebase, this is not production-ready! Run at your own risk. It is also not recommended to run this as root.

Development setup

Simply follow the instructions to run The Lounge from source above, on your own fork.

Before submitting any change, make sure to:

  • Read the Contributing instructions
  • Run yarn test to execute linters and the test suite
    • Run yarn format:prettier if linting fails
  • Run yarn build:client if you change or add anything in client/js or client/components
    • The built files will be output to public/ by webpack
  • Run yarn build:server if you change anything in server/
    • The built files will be output to dist/ by tsc
  • yarn dev can be used to start The Lounge with hot module reloading