Skip to content

LucJosin/lucjos.in

Repository files navigation

lucjos.in - URL Shortener

Personal URL Shortener and API built using Go and MySQL (MariaDB). Includes analytics tracking, token management and folder organization.

Warning

This Project is Under Active Development.

Note

The source for this project was not created to be a template or theme, but for my use. Feel free to take whatever inspiration from it that you want. Want to provide any feedback?

Key Features:

  • Shorten URLs: Easily create short, memorable aliases for your long URLs.
  • Customizable: Organize your shortened links into folders for better management.
  • Track Performance: Gain valuable insights with analytics on click-through rates and usage trends.
  • Tokens for URLs: Utilize tokens for secure access to URLs.
  • Auth: User authentication with session.

Technology Stack:

  • Programming Language: Go
  • Database: MySQL (MariaDB)

Commands

All commands are run from the root of the project, from a terminal:

Command Action
make run Starts local dev server at localhost:4225
make build Build your production server
make clean Clear the application output
make test Run the application tests (unit and integration)
make test-unit Run the application tests (unit only)
make test-int Run the application tests (integration only)
make test-web Run the application tests with coverage (html output)
make docker-status Check the docker container status
make docker-run Build & Run the local docker
make docker-start Start the local docker
make docker-stop Stop the local docker
make docker-reset Stop, Delete, Build and Start the local docker
make swagger Generate swagger docs
make swagger-fmt Format swagger docs
make help Get help

Feedback

If you encounter any issues, have suggestions, or would like to provide feedback, please feel free to open an issue or reach out to us via email: [email protected].

License

This project is open source and available under the BSD 3-Clause License.

About

A personal URL shortener and API designed for a single domain, built with Go and MySQL (MariaDB). Features include analytics tracking, token management, and organized folder structures.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Contributors

Languages