Giter Club home page Giter Club logo

frontend's Introduction

Revolt Frontend

This repository contains the code for Revolt's frontend, built with Solid.js.

You can find the code style guidelines here.

Development Guide

Before getting started, you'll want to install:

  • Git
  • Node.js
  • pnpm (run corepack enable)

Then proceed to setup:

# clone the repository
git clone --recursive https://github.com/revoltchat/frontend client
cd client

# update submodules if you pull new changes
# git submodule init && git submodule update

# install all packages
pnpm i

# build deps:
pnpm build:deps

# or build a specific dep (e.g. revolt.js updates):
# pnpm --filter revolt.js run build

# run dev server
pnpm dev:web

Finally, navigate to http://local.revolt.chat:5173.

Pulling in Revolt's assets

If you want to pull in Revolt brand assets after pulling, run the following:

# update the assets
git -c submodule."packages/client/assets".update=checkout submodule update --init packages/client/assets

You can switch back to the fallback assets by running deinit and continuing as normal:

# deinit submodule which clears directory
git submodule deinit packages/client/assets

Faster iteration with Revolt.js

To make it easier to work with revolt.js, you may want to temporarily make this change:

# packages/revolt.js/package.json
-  "module": "lib/esm/index.js",
+  "module": "src/index.ts",

Any edits to the revolt.js codebase will immediately be reflected while developing.

Deployment Guide

Build the app

# install packages
pnpm i

# build dependencies
pnpm build:deps

# build for web
pnpm build:web

# ... when building for Revolt production, use this instead of :web
pnpm build:prod

You can now deploy the directory packages/client/dist.

Routing Information

The app currently needs the following routes:

  • /login
  • /pwa
  • /dev
  • /settings
  • /friends
  • /server
  • /channel

This corresponds to Content.tsx#L33.

frontend's People

Contributors

insertish avatar brecert avatar reflexguru avatar revolt-ci avatar rexogamer avatar jackdotjs avatar supertigerdev avatar grouting avatar harshmangalam avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.