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 ##
|
||||
|
||||
Most of the main operations can be done through the helper script
|
||||
`manage.sh`.
|
||||
### Introduction ###
|
||||
|
||||
The development requires of UXBOX is done through a single docker
|
||||
container. Each main service is opened in a different
|
||||
[tmux](https://github.com/tmux/tmux) sessions.
|
||||
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.
|
||||
|
||||
|
||||
## 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
|
||||
frontend. Use the helper script `manage.sh` to build the images. You
|
||||
|
|
Loading…
Add table
Reference in a new issue