mobilizon/docs/contribute/development.md

2.2 KiB

Development

Clone the repository:

# With HTTPS
git clone https://framagit.org/framasoft/mobilizon && cd mobilizon

# With SSH
git clone git@framagit.org:framasoft/mobilizon.git && cd mobilizon

Run Mobilizon:

  • with Docker and Docker-Compose (Recommended)
  • without Docker and Docker-Compose (This involves more work on your part, use Docker and Docker-Compose if you can)

With Docker and Docker-Compose

  • Install Docker and Docker-Compose for your system.
  • Run make start to build, then launch a database container and an API container.
  • Follow the progress of the build with docker-compose logs -f.
  • Access localhost:4000 in your browser once the containers are fully built and launched.

Without Docker and Docker-Compose

  • Install dependencies:
  • 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.
  • Install packages
    • Fetch backend Elixir dependencies with mix deps.get.
    • Go into the cd js directory, yarn install and then back cd ../
  • Setup
    • 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. The client development server will also automatically be launched and will reload on file change.

Now you can visit localhost:4000 in your browser and see the website (server and client) in action.