Skip to content

martinyonatann/onepixel_backend

 
 

Repository files navigation

onepixel (1px.li)

"onepixel" is an API-first URL shortner.

Why this name?

A URL shortner should have a short domain name, possibly 2 or 3 letter in length.
"1 pixel" is the smallest unit of a screen.
So 1px.li stands for one pixel links - i.e. smallest possible links :)

Status Badges

codecov Build and test

Test Instance

The latest version of the code is automatically deployed via Railway to
https://onepixel.link

You can deploy your own instance too Deploy on Railway

Development

Deploy everything (with Docker)

Simplest way to get it running is

  1. make a ./data directory where your database will be stored
  2. run docker-compose up

Run with hot-reload for local development

We will use docker to run an instance of database, but we will run the project using air locally

  1. make a ./data directory where your database will be stored
  2. run docker-compose up -d postgres
  3. add 127.0.0.1 postgres to your /etc/hosts file 1
  4. run air in the root directory of the project 2

Note[1] This is because the server is configured to connect to host=postgres for the database.

Note[2]: you can also run go run src/main.go but it will not reload on changes

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Go 96.3%
  • Makefile 2.3%
  • Dockerfile 1.4%