{"id":29561107,"url":"https://github.com/ukane-philemon/bob","last_synced_at":"2025-07-18T15:40:04.382Z","repository":{"id":173822658,"uuid":"648705903","full_name":"ukane-philemon/bob","owner":"ukane-philemon","description":"Meet BOB, the boss of brevity, the sultan of shortness, making your links famous for being short and sweet.","archived":false,"fork":false,"pushed_at":"2023-07-22T13:05:04.000Z","size":9572,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-06-21T16:56:33.321Z","etag":null,"topics":["bob","brevity","link-management","links","linkshortener","shortener","shortlinks"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ukane-philemon.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-06-02T15:47:32.000Z","updated_at":"2023-06-28T18:00:25.000Z","dependencies_parsed_at":null,"dependency_job_id":"540c5211-2e33-4429-b0c5-169f0e90e757","html_url":"https://github.com/ukane-philemon/bob","commit_stats":null,"previous_names":["ukane-philemon/bob"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/ukane-philemon/bob","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ukane-philemon%2Fbob","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ukane-philemon%2Fbob/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ukane-philemon%2Fbob/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ukane-philemon%2Fbob/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ukane-philemon","download_url":"https://codeload.github.com/ukane-philemon/bob/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ukane-philemon%2Fbob/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":265787758,"owners_count":23828494,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bob","brevity","link-management","links","linkshortener","shortener","shortlinks"],"created_at":"2025-07-18T15:40:03.668Z","updated_at":"2025-07-18T15:40:04.325Z","avatar_url":"https://github.com/ukane-philemon.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# B.O.B - The Boss Of Brevity\n\nMeet B.O.B, the boss of brevity, the sultan of shortness, making your links famous for being short and sweet. \n\nURL: https://bøb.co/\n\n## What is B.O.B?\nB.O.B is a URL shortener, which means it takes a long URL and makes it shorter. It's a simple concept, but it's a useful one. B.O.B is a free and open source URL shortener, which means you can use it for free and you can see how it works. B.O.B is also a self-hosted URL shortener, which means you can host it yourself and you don't have to rely on a third party to keep your links alive.\n\n## Features\nSome of the features B.O.B has include:\n\n- Shorten URLs\n- Advanced analytics\n- API\n- Editing short links\n- Custom URLs\n- Self-hosted\n- Free and open source\n\n## Future plans\nSome of the things we plan to add to B.O.B in the future include:\n\n- A web interface\n- Expiration dates for short links\n- A mobile app\n- Several social media bots that will support multiple platforms\n- Premium features\n  - Password protected links\n\n## Getting started\nTo get started with B.O.B, you'll need to install it.\n\n- You can do this by downloading the latest release from the releases page (TODO).\n- You can also build it yourself by cloning this repository and running `go\n  build` in the root directory. Ensure you have Go installed if you want to do\n  this. If Go is not installed, you can download it from\n  [here](https://golang.org/dl/). Prefer version 1.20 or higher but it should\n  work with older versions too.\n- Or you can use our `Dockerfile`.\n\nEnsure supported environmental variables have been set or provide them to the\n`bob` executable via cli.\n\nIf not using `docker`, you can run it with `./bob` (or `bob.exe` on Windows).\nThis will start B.O.B on port 8080. You can change the port by setting the `PORT`\nenvironment variable. For example, `PORT=3000 ./bob` will start B.O.B on port\n3000.\n\n## Configuration\nB.O.B can be configured using environment variables. The following environment variables are available:\n\n- `HOST`: The host to run B.O.B on. Defaults to `127.0.0.1`\n- `PORT`: The port to run B.O.B on. Defaults to `8080`.\n- `MONGODB_CONNECTION_URL`: The connection URL of the mongodb database to use. Required.\n- `DEV_MODE`: Set to true if you want to run without a mongodb connection URL.\n  B.O.B will use an in-memory db.\n\nYou can also use cli flags to provide configuration values. For example, `./bob\n--dev` will start B.O.B in development mode.\n\nIf starting B.O.B using docker, set the `environments` values with your own\nconfiguration or run it as it is.\n\n**NOTE**: `MemDB` is not as restrictive and robust as the `MongoDB`\nimplementation. If you encounter any issues using it in dev mode, please create\na new issue.\n\n## API\nB.O.B has an API which can be used to interact with it. The API is documented in our [OpenAPI spec](./api.yaml).\n\n## Contributing\nContributions are welcome! Please read our [contributing guidelines](./CONTRIBUTION.md) for more information.\n\n## API Testing\nTo test the API, you can upload the [OpenAPI Specs](./api.yaml) we have provided to any API Testing Platform like Postman.\n\nOr without leaving VSCode, you can use the [Thunder\nClient](https://marketplace.visualstudio.com/items?itemName=rangav.vscode-thunder-client)\nextension to test the API. Click on the `Collections` tab on the left sidebar\nand click on the `Import` button. Then select the `api.yaml` file. That's it!\nYou can now test the API.\n\n## Donations\nIf you like B.O.B and want to support its development, you can donate to us using the following methods:\n\n- [Buy me a coffee](https://bmc.link/philemon)\n\n## License\nB.O.B is licensed under the [MIT License](./LICENSE).\n\n## Credits\nB.O.B is developed and maintained by [Philemon Ukane](github.com/ukane-philemon). It is inspired by [bit.ly](https://bit.ly) and [tinyurl.com](https://tinyurl.com). It is built using [Go](https://golang.org) and [MongoDB](https://mongodb.com). It is hosted on [Render](https://render.com) (for free!).\n\n## Contact\nYou can contact me via email at [ukanephilemon@gmail.com](mailto:ukanephilemon@gmail.com) or on [Twitter](https://twitter.com/behindtextdev).\n\nPS: I not always available on Twitter, so email is the best way to reach me.\nPSS: I was unable to put in much time into this project, so it's not as good as I would have liked it to be. I hope to improve it in the future.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fukane-philemon%2Fbob","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fukane-philemon%2Fbob","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fukane-philemon%2Fbob/lists"}