Better docs
Signed-off-by: Thomas Citharel <tcit@tcit.fr> Nicer docs No 3rd stage Add mix.deps get before docs Add :ex_doc on test env so that it runs into CI
This commit is contained in:
53
support/guides/development/development.md
Normal file
53
support/guides/development/development.md
Normal file
@@ -0,0 +1,53 @@
|
||||
# Development
|
||||
Clone the repo, and start the project trough Docker. You'll need both Docker and Docker-Compose.
|
||||
```bash
|
||||
git clone https://framagit.org/framasoft/mobilizon && cd mobilizon
|
||||
make
|
||||
```
|
||||
## Manual
|
||||
|
||||
### Server
|
||||
|
||||
* Install dependencies:
|
||||
|
||||
* Elixir (and Erlang) by following the instructions at [https://elixir-lang.github.io/install.html](https://elixir-lang.github.io/install.html)
|
||||
* Fetch backend Elixir dependencies with `mix deps.get`.
|
||||
* [PostgreSQL]() with PostGIS
|
||||
* Start services:
|
||||
* Start postgres
|
||||
* Setup services:
|
||||
* Make sure the postgis extension is installed on your system.
|
||||
* Create a postgres user with database creation capabilities, using the
|
||||
following: `createuser -d -P mobilizon` and set `mobilizon` as the password.
|
||||
* Create your database with `mix ecto.create`.
|
||||
* Create the postgis extension on the database with a postgres user that has
|
||||
superuser capabilities: `psql mobilizon_dev`
|
||||
|
||||
``` create extension if not exists postgis; ```
|
||||
|
||||
* Run migrations: `mix ecto.migrate`.
|
||||
* Start Phoenix endpoint with `mix phx.server`.
|
||||
|
||||
Now you can visit [`localhost:4000`](http://localhost:4000) from your browser
|
||||
and see the website (server *and* client) in action.
|
||||
|
||||
### Client
|
||||
|
||||
If you plan to specifically change the client side (frontend), do the following
|
||||
once the server is running:
|
||||
|
||||
* Install the NodeJS (we guarantee support for the latest LTS and later) 
|
||||
* Change directory to `js/` and do:
|
||||
* Install JavaScript package dependencies: `npm install`.
|
||||
* Run the developement server in watch mode: `npm run dev`. This will open a
|
||||
browser on [`localhost:8080`](http://localhost:8080) that gets
|
||||
automatically reloaded on change.
|
||||
|
||||
## Docker
|
||||
You need to install the latest supported [Docker](https://docs.docker.com/install/#supported-platforms) and [Docker-Compose](https://docs.docker.com/compose/install/) before using the Docker way of installing Mobilizon.
|
||||
|
||||
Just run :
|
||||
```bash
|
||||
make start
|
||||
```
|
||||
to start a database container, an API container and the front-end dev container running on localhost.
|
||||
Reference in New Issue
Block a user