https://github.com/evolvedbinary/fusion-studio
An IDE and Management Tool for FusionDB
https://github.com/evolvedbinary/fusion-studio
fusion-studio fusiondb ide theia-ide
Last synced: 2 months ago
JSON representation
An IDE and Management Tool for FusionDB
- Host: GitHub
- URL: https://github.com/evolvedbinary/fusion-studio
- Owner: evolvedbinary
- License: gpl-3.0
- Created: 2018-11-01T05:05:07.000Z (about 7 years ago)
- Default Branch: master
- Last Pushed: 2022-12-21T13:11:29.000Z (almost 3 years ago)
- Last Synced: 2024-04-24T12:23:47.110Z (over 1 year ago)
- Topics: fusion-studio, fusiondb, ide, theia-ide
- Language: JavaScript
- Homepage:
- Size: 4.05 MB
- Stars: 4
- Watchers: 6
- Forks: 2
- Open Issues: 18
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Fusion Studio
[](https://circleci.com/gh/evolvedbinary/fusion-studio/tree/master)
[](https://opensource.org/licenses/GPL-3.0)
An IDE and Management Tool for [FusionDB](https://www.fusiondb.com).
This repository holds the code for packaging the IDE as a client Desktop application.
To use this with FusionDB you will also need the server-side API installed, you can find that here: [fusion-studio-api](https://github.com/evolvedbinary/fusion-studio-api).
The latest reslease version of FusionDB is available for download from [https://fusiondb.com](https://fusiondb.com).
## Requirements
* Node.js 14
* yarn 1.17.3+
* Git 2.11+
* Java 8
* Python 3
* rpmbuild (for building RPM's on Linux)
* Apple Developer Certificate and Account (for signing DMG's on macOS)
## Building the Fusion Studio Application
We suggest using [nvm](https://github.com/nvm-sh/nvm#installing-and-updating) for running and managing different node versions.
```bash
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.34.0/install.sh | bash
nvm install 14
nvm use 14
```
Install the latest version of yarn compatible with the recommended node version.
```bash
npm install -g yarn
```
### On Linux and macOS:
```bash
git clone https://github.com/evolvedbinary/fusion-studio.git
cd fusion-studio
export NODE_OPTIONS="--max-old-space-size=8192"
yarn install --ignore-engines && yarn build
```
### On Windows:
```pwsh
git clone https://github.com/evolvedbinary/fusion-studio.git
cd fusion-studio
set NODE_OPTIONS=--max-old-space-size=8192
yarn install --ignore-engines && yarn build
```
## Creating Application Packages
After building you can produce native application packages such as: `.exe`, `.dmg`, `.deb`, and `.rpm`.
### On Linux and Windows:
```bash
yarn package
```
### On macOS:
The `APPLE_ID` and `APPLE_ID_PASSWORD` are used for notarization of the app. If you don't need notarization you can skip these.
Remember, notarization can be a slow process which can take 10+ minutes with little or no output to the console … so remain patient!
```bash
APPLE_ID=me@something.com APPLE_ID_PASSWORD=abcd-efgh-ijkl-mnop yarn package
```
Desktop Applications are then available in the `fusion-studio/dist` folder.
## Building a Release
Release packages are built for Linux, Mac, and Windows platforms.
As code-signing of Mac packages can only be performed on macOS, we assume your starting point is a Mac with Docker installed.
```
$ git clone https://github.com/evolvedbinary/fusion-studio.git
$ cd fusion-studio
$ yarn && yarn build && yarn package
$ docker run -ti \
--env USER=$UID \
--env GROUP=$GID \
-v ${PWD}:/project evolvedbinary/fs-build:centos7_x64-be \
/bin/bash -c "bash /root/build.sh"
```