Skip to content
The simple user story mapping tool
TypeScript Go TSQL HTML CSS Shell Dockerfile
Branch: master
Clone or download
Latest commit bb16c48 Oct 8, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github/workflows
build Remove version number from repo Oct 3, 2019
config Update conf.sample.json Sep 10, 2019
lexorank Fix test Oct 8, 2019
migrations Goals can be closed Oct 2, 2019
tmpl Goals can be closed Oct 2, 2019
webapp Goals can be closed Oct 2, 2019
.gitignore remove bindata and .idea files Aug 21, 2019
Dockerfile * Updates README with instructions on how to use docker-compose Aug 21, 2019
LICENSE Add license Aug 22, 2019
README.md Badge Oct 8, 2019
account-api.go Email should be case insensitive Sep 26, 2019
docker-compose.yml Update docker-compose.yml Sep 9, 2019
email.go Add proper headers Sep 19, 2019
go.mod refactor Aug 8, 2019
go.sum refactor Aug 8, 2019
link-api.go fix error with external sharing Aug 20, 2019
main.go Allow custom smtp port Sep 3, 2019
model.go Goals can be closed Oct 2, 2019
mware.go * use secure + httpOnly cookies Aug 21, 2019
repo.go Goals can be closed Oct 2, 2019
response.go refactor Aug 8, 2019
screenshot.png readme Aug 7, 2019
service.go Goals can be closed Oct 2, 2019
shared.go refactor Aug 8, 2019
users-api.go * use secure + httpOnly cookies Aug 21, 2019
workspace-api.go Goals can be closed Oct 2, 2019

README.md

Featmap, the simple user story mapping tool

Featmap is a simple user story mapping tool for product managers to build, plan and communicate product backlogs. It is built using React, Typescript and Go. Try it out at www.featmap.com.

Featmap screenshot

How to run locally

Database requirements

Featmap runs on top of PostgreSQL, so make sure you have it running on your system. At this step, make sure to setup the credentials and database that Featmap will use.

Downloading

Download the Featmap binary for your respective platform and save it somewhere on your system.

Configuration

In the directory where you placed the binary, create a file called conf.json.

Here's a sample conf.json

{  
  "appSiteURL": "http://localhost/",
  "dbConnectionString": "postgresql://featmap:featmap@localhost:5432/featmap?sslmode=disable",
  "jwtSecret": "ChangeMeForProduction",
  "port": "80",
  "emailFrom" : "contact@example.com",
  "smtpServer" : "smtp.example.com",
  "smtpPort": "587",
  "smtpUser" : "postmaster@mail.example.com",
  "smtpPass": "some_smtp_password",
  "environment": "development"  
}
Setting Description
appSiteURL The url to where you will be hosting the app.
dbConnectionString The connection string to the PostgreSQL database that Featmap should connect to.
jwtSecret This setting is used to secure the cookies produced by Featmap. Generate a random string and keep it safe!
port The port that Featmap should run on.
emailFrom The email adress that should be used as sender when sending invitation and password reset mails.
smtpServer SMTP server for sending emails.
smtpPort Optional Will default to port 587 if not specified.
smtpUser SMTP server username.
smtpPass SMTP server password.
environment Optional If set to development, the backend will not serve secure cookies.

Running

Execute the binary.

./featmap-1.0.0-linux-amd64
Serving on port 80

Open a browser to http://localhost and you are ready to go! If Featmap is not running on port 80, use http://localhost:port.

Building

Requirements

The following must be installed on your system in order to build

Instructions

Start by cloning the repository.

git clone https://github.com/amborle/featmap.git

Navigate to the repository.

cd featmap

Now let's build it (requires Bash).

./build/complete_build.sh

Binaries for Linux, Win and Mac are now available in the bin folder.

cd bin
ls
featmap-1.0.3-darwin-amd64  featmap-1.0.3-linux-amd64  featmap-1.0.3-windows-amd64.exe

Running with docker-compose

Clone the repository

git clone https://github.com/amborle/featmap.git

Navigate to the repository.

cd featmap

Now let's build it (requires Bash).

docker-compose build

Create a .env file, and edit any defaults

cp config/env.sample .env

Create a configuration file by copying config/conf.sample.json, and make any appropriate changes from the env file for the database connection string

cp config/conf.sample.json config/conf.json

Startup the services, the app should now be available on the port you defined in your .env file. (Default: 8080)

docker-compose up -d
You can’t perform that action at this time.