mirror of
https://github.com/penpot/penpot.git
synced 2025-01-23 06:58:58 -05:00
📚 Move some deleted docs from CONTRIBUTIN file to README.
This commit is contained in:
parent
6483800e49
commit
5a820b4f9e
1 changed files with 78 additions and 6 deletions
84
README.md
84
README.md
|
@ -28,15 +28,87 @@ editable in many other vector tools and easy to use on the web.
|
||||||
|
|
||||||
## Development ##
|
## Development ##
|
||||||
|
|
||||||
Most of the main operations can be done through the helper script
|
### Introduction ###
|
||||||
`manage.sh`.
|
|
||||||
|
|
||||||
The development requires of UXBOX is done through a single docker
|
The development environment consists in a docker container that mounts
|
||||||
container. Each main service is opened in a different
|
your local copy of the uxbox souce code directory tree and executes a
|
||||||
[tmux](https://github.com/tmux/tmux) sessions.
|
tmux inside the container in order to facilitate execute multiple
|
||||||
|
processes inside.
|
||||||
|
|
||||||
|
|
||||||
## Docker
|
### 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-devenv
|
||||||
|
```
|
||||||
|
|
||||||
|
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 repl should be started automatically, if not, you can execute:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
clojure -Adev:repl
|
||||||
|
```
|
||||||
|
|
||||||
|
Then 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.
|
||||||
|
|
||||||
|
|
||||||
|
## Production (Docker)
|
||||||
|
|
||||||
Docker is also used to build release images for backend and
|
Docker is also used to build release images for backend and
|
||||||
frontend. Use the helper script `manage.sh` to build the images. You
|
frontend. Use the helper script `manage.sh` to build the images. You
|
||||||
|
|
Loading…
Add table
Reference in a new issue