Mapeo Support Materials
English
English
  • Introduction
  • Overview
    • About Mapeo
      • Mapeo tools
      • Peer-to-peer & Mapeo sync
      • How Mapeo is being used
    • Is Mapeo right for me?
    • FAQs
  • Quick start guide
    • Getting started
    • Mapeo Mobile
    • Mapeo Desktop
  • Complete Reference guide
    • Welcome – Introduction
    • 🗒️Essentials for a successful Mapeo project
      • Planning a Mapeo project
        • What is the project goal?
        • What outputs do you want?
        • What information to collect?
          • Data types within Mapeo
        • Who should be involved and how?
        • What are the parameters?
      • Security & risk assessment
      • Creating user protocols
    • ✔️Will Mapeo work out-of-the-box for me?
      • Default configuration
      • Default background map
    • ⚙️Customization options
      • Translating Mapeo & default configurations
      • Custom configurations
        • Creating custom configurations
          • Planning configuration & data structure
            • Categories
            • Icons
            • Details fields
          • Coding configuration
            • Adding icon files
              • Creating and exporting SVG files using Adobe Illustrator
              • Creating and exporting SVG files using Inkscape
            • Creating details fields
            • Creating categories
            • Defining geometry defaults
            • Adding a project key
            • Adding project name and version
            • Building configuration file
              • Via the command line
              • Using GitHub Actions
          • Testing and iterating
      • Custom background maps
        • Creating custom background maps
          • Generating map files in .mbtiles format for the experimental Background Maps feature
    • 📱Mapeo Mobile installation & setup
      • Installing Mapeo Mobile
      • Choosing Mapeo Mobile settings
      • Experiments: Turning on experimental features
        • Directional Arrow
        • P2P (peer-to-peer) App Updates
        • Background Maps
        • Security
          • App Passcode
          • Obscure Passcode
      • Importing configurations into Mapeo Mobile
      • Adding custom background maps to Mapeo Mobile
      • Updating Mapeo Mobile
    • 📱Mapeo Mobile use
      • Activating GPS and viewing current location
      • Creating observations
      • Viewing observations
      • Editing and deleting observations
      • Sharing data externally
      • Syncing data via Wi-Fi
    • 💻Mapeo Desktop installation & setup
      • Installing Mapeo Desktop
      • Choosing Mapeo Desktop language
      • Importing configurations to Mapeo Desktop
      • Adding custom background maps to Mapeo Desktop
      • Updating Mapeo Desktop
    • 💻Mapeo Desktop use
      • Mapeo Desktop for managing Mapeo Mobile data (Observations mode)
        • Synchronizing data
          • Synchronizing via Wi-Fi
          • Synchronizing with a file
        • Viewing observations
        • Editing and deleting observations
        • Exporting data & sharing externally
      • Mapeo Desktop for creating territory data (Territory mode)
        • Navigating around the map
        • Creating and editing territory data
        • Changing background maps in Territory mode
        • Importing and using external geospatial data
        • Exporting and syncing data
      • Synchronizing data with Mapeo Desktop
    • 💡Mapeo trainings
      • Defining goals and format
      • Structuring a training
        • Best practices for planning a training
        • Structuring the agenda, content and activities
          • Suggestions for the different sections of a training event
          • Tips and suggested activities for training key features of Mapeo
          • Materials and resources available for the training event
      • Preparing equipment and supplies for a training
        • Recommended equipment and supplies
        • Tech preparation before doing in-person training
    • 🔧Troubleshooting
      • I can't start Mapeo
      • Mapeo closes automatically
      • I have problems with the GPS in Mapeo
        • GPS is not activated in Mapeo
        • My GPS signal is very weak
      • I have problems with the camera in Mapeo
        • I get a black screen when using the camera
      • I want to update Mapeo Mobile permissions
      • I have sync issues
        • I want to connect to Wi-Fi
        • I want to create local Wi-Fi networks
          • With a portable router
          • With a smartphone
        • The device I want to sync with does not show up on my Synchronize screen
        • I get an error when I try to sync with another device
        • I can't sync with the sync file
        • The person I want to sync with has deleted valuable data
      • Sharing files between devices
      • Saving and printing Mapeo reference materials
      • How do I back up Mapeo Desktop data?
    • Glossary & quick reference sheets
      • Glossary of Mapeo related terms
      • Overview of Mapeo Desktop Territory mode screen
  • For developers
    • Mapeo architecture overview
    • Mapeo repositories
    • Localization
  • Support
  • Additional references
  • Digital Democracy website
Powered by GitBook
On this page
  • Prepare computer for building the configuration
  • Install nvm
  • Install homebrew (macOS)
  • Install puppeteer dependencies (Windows Subsystem for Linux)
  • Install npm
  • Install and use node 12
  • Install Mapeo Settings Builder
  • Is your computer ready?
  • Package Config Assets for MAPEO
  • Prep folder and build
  • What is a .mapeosettings file?
  • Troubleshooting Checklist
  • Versioning
Export as PDF
  1. Complete Reference guide
  2. Customization options
  3. Custom configurations
  4. Creating custom configurations
  5. Coding configuration
  6. Building configuration file

Via the command line

PreviousBuilding configuration fileNextUsing GitHub Actions

Last updated 2 years ago

Prepare computer for building the configuration

Mapeo is built with JavaScript programming language. To get started, you'll need to installdevelopment environment. If you already have Node.js installed you can skip this section.

You need to be at least on Node.js version 8 (or higher) for the mapeo-settings-builder to work properly. Head over to page and select installer for your operating system.

Alternatively you can also use NVM (Node Version Manager) to install and manage multiple versions of Node.js on your computer.

Install nvm

touch ~/.bash_profile
curl -o- <https://raw.githubusercontent.com/creationix/nvm/v0.32.1/install.sh> | bash

Then close terminal and open again

Install homebrew (macOS)

Install puppeteer dependencies (Windows Subsystem for Linux)

If you are using Windows Subsystem for Linux (WSL) to build a configuration, you need to install some dependencies for puppeteer.

sudo apt install libgtk-3-dev libnotify-dev libgconf-2-4 libnss3 libxss1 libasound2

Install npm

Install and use node 12

nvm install 12
nvm alias default 12

Install Mapeo Settings Builder

You'll see output on the terminal, but this is OK

npm install -g mapeo-settings-builder

Is your computer ready?

If your computer is ready to create configurations, type

mapeo-settings-builder

You should see output that looks something like

→ Using version x.x.x of mapeo-settings-builder
Usage: mapeo-settings-builder [options] [command]

Options:
  -h, --help                   display help for command

Commands:
  build [options] [sourceDir]  Build config from presets in current working dir
  lint [sourceDir]             Lint preset files for errors
  extract-messages [options]   Extract messages for translation
  generate-key                 Generate a random project key
  help [command]               display help for command

Now you're ready to move to build your configuration!

Package Config Assets for MAPEO

Prep folder and build

Type, 'cd`, then a space, then drag and drop the folder where the prepared assets are and press enter. It will look something like this

cd /Users/jen/Documents/Dd_LOCAL_project-files/Dd-Tools/Mapeo/Presets/CREATION\\ LAB/Strathcona-KX-v1.0.0

You will then be ready to run scripts directly in the folder.

npm install
npm run -s build

This -s tells npm to be silent, so that you only see errors that are meaningful to you.

You will see something like the following output. Errors will be highlighted in RED with hopefully some helpful description so that you can remedy the issue.

→ Using version x.x.x. of mapeo-settings-builder
! Warning: no category json files found in /home/okdistribute/node_modules/mapeo-default-settings/mapeo-default-settings-2.1.0/categories
✓ Built presets and categories (37ms)
✓ Generated svg sprite for iD (544ms)
✓ Generated png sprite for Mapbox (81ms)
✓ Generated png icons for Mapeo Mobile (607ms)
✓ Successfully created file 'build/mapeo-default-settings-v2.1.0.mapeosettings' (total 1299ms)

You'll also see a .mapeosettings file inside of the build directory.

What is a .mapeosettings file?

A .mapeosettings file is a tar file, similar to a zip file. You can see the contents of the file by changing the file extension to .tar and using any application that can extract tar files (such as 7zip, mentioned above).

Troubleshooting Checklist

Type the following into the terminal

node -v

You need to be at least on Node version 8 for the mapeo-settings-builder to work properly. If you need help, review the 'Preparing Computer' section and ensure you're on the latest version of mapeo-settings-builder.

npm install -g mapeo-settings-builder@latest

You also may want to delete node_modules and install updated versions of the dependencies.

In Mac or Linux, in the terminal:

npm install

Versioning

If you're having more issues, please or e-mail our support hotline.

It's important to increment the version when releasing new changes to your configuration. When you are ready to release a new version, you can use in the command line to automatically increment your config version and update the CHANGELOG.md file in your repository.

For more on versions with standard-version, see

⚙️
Node.js
Node.js download
http://brew.sh/
https://docs.npmjs.com/cli/install
open an issue on the GitHub repository
standard-version
Use conventional commit messages to increment your configuration version