(See the guide here to deploy to Heroku in minutes.)
Reliable and battle-tested, this go links solution is used by companies all around the world daily as the core of Trotto.
Try out the latest build at latest-master.trotto.dev and also check out the matching open-source browser extension.
If you'd rather use the fully-managed instance of Trotto, visit www.trot.to.
Don't hesitate to reach out to us through help@trot.to, a GitHub issue, or live chat at https://www.trot.to.
Trotto provides all the baseline functionality you'd expect from a go links solution, including the ability to create, use, and modify go links that are shared with your organization—and with nobody else.
Trotto also includes powerful features above and beyond a basic go links implementation, including a searchable go
links directory, a browser extension that makes go links work instantly,
and programmatic links, which are go links containing placeholders that map onto the destination
URL (ex: go/gh/%s
pointing to https://github.com/my_org/%s
).
For a full list of Trotto's features, check out https://www.trot.to/how-it-works.
At the moment, the open-source app solely supports authentication using a Google account, but we plan to add support for additional identity providers upon request. So if you need support for another provider, submit a GitHub issue, and we'll help you out!
See our deployment docs:
You can bring up a local instance of Trotto within a few minutes.
git clone git@github.com:trotto/go-links.git
cd go-links
Inside the go-links/server
directory, create and enter a
Python 3.8 virtualenv and install dependencies:
cd go-links/server
virtualenv --python=python3 .virtualenv/
source .virtualenv/bin/activate
pip install -r src/requirements.txt
You can use pyenv
as well.
Add a file at server/src/config/app.yml
with this format:
sessions_secret: any_secret
postgres:
url: "postgresql://username:password@host/database"
postgres.url
should be the connection string for a Postgres 12 database. The server
startup script will add the tables Trotto needs.
From the server/
directory, run:
./run_local.sh
In a separate terminal, from the frontend/
directory, run:
yarn install
./start_dev_server.sh
Now, you can access the local instance at http://localhost:5007.
Most server-side and frontend changes should be picked up automatically, thanks to the Flask dev server and React Hot Loader.