mirror of
https://github.com/penpot/penpot.git
synced 2025-01-08 07:50:43 -05:00
101 lines
2.5 KiB
Markdown
101 lines
2.5 KiB
Markdown
|
# UXBOX #
|
||
|
|
||
|
## Introduction ##
|
||
|
|
||
|
TODO
|
||
|
|
||
|
## Development environment ##
|
||
|
|
||
|
### Introduction ###
|
||
|
|
||
|
The development environment consists in a docker container that mounts your local
|
||
|
copy of the uxbox souce code directory tree and executes a tmux inside the container
|
||
|
in order to facilitate execute multiple processes inside.
|
||
|
|
||
|
|
||
|
### System requirements ###
|
||
|
|
||
|
You should have `docker` installed in your system in order to set up properly
|
||
|
the uxbox development enviroment.
|
||
|
|
||
|
In debian like linux distributions you can install it executing:
|
||
|
|
||
|
```bash
|
||
|
sudo apt-get install docker
|
||
|
```
|
||
|
|
||
|
|
||
|
### Start the docker container ###
|
||
|
|
||
|
**Requires a minimum knowledge of tmux usage in order to use that development
|
||
|
environment.**
|
||
|
|
||
|
For start it, staying in this repository, execute:
|
||
|
|
||
|
```bash
|
||
|
./manage.sh run
|
||
|
```
|
||
|
|
||
|
This will do the following:
|
||
|
|
||
|
- Build the image if it is not done before.
|
||
|
- Download all repositories if them are not downloaded previously.
|
||
|
- Start a container with predefined tmux layout.
|
||
|
- Start all needed processes such as gulp and figwheel.
|
||
|
|
||
|
|
||
|
### First steps with tmux ###
|
||
|
|
||
|
Now having the the container running and tmux open inside the container, you are
|
||
|
free to execute any commands and open many shells as you want.
|
||
|
|
||
|
You can create a new shell just pressing the **Ctr+b c** shortcut. And **Ctrl+b w**
|
||
|
for switch between windows, **Ctrl+b &** for kill the current window.
|
||
|
|
||
|
### Inside the tmux session ###
|
||
|
|
||
|
#### UI ####
|
||
|
|
||
|
The UI related tasks starts automatically so you do not need do anything. The
|
||
|
**window 0** and **window 1** are used for the UI related environment.
|
||
|
|
||
|
|
||
|
#### Backend ####
|
||
|
|
||
|
The backend related environment is located in the **window 2**, and you can go
|
||
|
directly to it using `ctrl+b 2` shortcut.
|
||
|
|
||
|
By default this tasks are performed:
|
||
|
|
||
|
- Start postgresql.
|
||
|
- Load initial fixtures into the database.
|
||
|
|
||
|
The backend is not started automatically, and frontend code by default does not
|
||
|
requires that (because it uses a remote server on default config).
|
||
|
|
||
|
You can start it just execting the `run.sh` script:
|
||
|
|
||
|
```bash
|
||
|
./scripts/run.sh
|
||
|
```
|
||
|
|
||
|
You also can start an repl and strart the backend inside of them:
|
||
|
|
||
|
```bash
|
||
|
lein repl
|
||
|
```
|
||
|
|
||
|
And use `(start)` to start all the environment, `(stop)` for stoping it and
|
||
|
`(reset)` for restart with code reloading. If some exception is raised when
|
||
|
code is reloaded, just use `(refresh)` in order to finish correctly the
|
||
|
code swaping and later use `(reset)` again.
|
||
|
|
||
|
|
||
|
## License ##
|
||
|
|
||
|
```
|
||
|
This Source Code Form is subject to the terms of the Mozilla Public
|
||
|
License, v. 2.0. If a copy of the MPL was not distributed with this
|
||
|
file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||
|
```
|