Code Monkey home page Code Monkey logo

exported's Introduction

F-List Exported

This repository contains the open source parts of F-list and F-Chat 3.0. All necessary files to build F-Chat 3.0 as an Electron, mobile or web application are included.

Setting up a Dev Environment

  • Clone the repo
  • Install Yarn
  • Change into the cloned directory and run yarn install. If you only want to make a custom theme, you do not need to do this!
  • IntelliJ IDEA is recommended for development.

Building for Electron

  • To build native Node assets, you will need to install Python 2.7 and the Visual C++ 2015 Build tools. More information can be found in the node-gyp docs.
  • Change into the electron directory.
  • Run yarn build/yarn watch to build assets. They are placed into the app directory.
  • Run yarn start to start the app in debug mode. Use Ctrl+Shift+I to open the Chromium debugger.

Packaging

See https://electron.atom.io/docs/tutorial/application-distribution/

  • Run yarn build:dist to create a minified production build.
  • Run yarn run pack. The generated installer is placed into the dist directory.
    • On Windows you can add the path to and password for a code signing certificate as arguments.
    • On Mac you can add your code signing identity as an argument. zip is required to be installed.
    • On Linux you can add a GPG key for signing and its password as arguments. mksquashfs and zsyncmake are required to be installed.

Building for Mobile

  • Change into the mobile directory.
  • Run yarn build/yarn watch to build assets. They are placed into the www directory.
  • For Android, change into the android directory and run ./gradlew assembleDebug. The generated APK is placed into app/build/outputs/apk.
  • For iOS, change into the ios directory and open F-Chat.xcodeproj using XCode. From there, simply run the app using the play button.

Building for Web

  • Change into the webchat directory.
  • Run yarn build/yarn watch to build assets. They are placed into the dist directory.
  • The compiled main.js file can be included by an HTML file that is expected to provide a global const chatSettings: {account: string, theme: string, characters: ReadonlyArray<string>, defaultCharacter: string | null};. It should also normalize the page to 100% height.

Building a custom theme

See the wiki for instructions on how to create a custom theme.

  • Change into the scss directory.
  • Run yarn install.
  • Run yarn build themes/chat/{name}.scss.
  • Your theme file will be placed into the scss/css directory.

Dependencies

Note: Adding and upgrading dependencies should only be done with prior consideration and subsequent testing.

That's why yarn.lock exists and is version controlled.

To upgrade NPM dependencies, run yarn upgrade locally. Run yarn outdated to see pending upgrades.

exported's People

Contributors

film-projector avatar

Watchers

James Cloos 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.