{"id":15152570,"url":"https://github.com/ariessa/snipit","last_synced_at":"2026-01-21T16:32:10.944Z","repository":{"id":248564282,"uuid":"821511859","full_name":"ariessa/snipit","owner":"ariessa","description":"✂️ Snips long URLs into short URLs.","archived":false,"fork":false,"pushed_at":"2024-07-15T19:37:23.000Z","size":1828,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-07T10:44:29.224Z","etag":null,"topics":["postgresql","ruby","ruby-on-rails"],"latest_commit_sha":null,"homepage":"","language":"Ruby","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ariessa.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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":"2024-06-28T17:55:17.000Z","updated_at":"2024-08-03T15:36:36.000Z","dependencies_parsed_at":"2024-07-15T20:56:04.132Z","dependency_job_id":null,"html_url":"https://github.com/ariessa/snipit","commit_stats":null,"previous_names":["ariessa/snipit"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/ariessa/snipit","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ariessa%2Fsnipit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ariessa%2Fsnipit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ariessa%2Fsnipit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ariessa%2Fsnipit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ariessa","download_url":"https://codeload.github.com/ariessa/snipit/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ariessa%2Fsnipit/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28635928,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-21T15:01:31.228Z","status":"ssl_error","status_checked_at":"2026-01-21T14:42:58.942Z","response_time":86,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["postgresql","ruby","ruby-on-rails"],"created_at":"2024-09-26T16:03:48.194Z","updated_at":"2026-01-21T16:32:10.926Z","avatar_url":"https://github.com/ariessa.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ✂️ Snipit\n\nSnipit (stylised as snipIt) is the ultimate tool for transforming those long, clunky URLs into short, snazzy links that are super easy to share. no more struggling with endless web addresses – just snip, snap, and share the url!\n\n\u003cbr /\u003e\n\n## Table of Contents\n\n- [User Interfaces](#user-interfaces)\n- [Tools and Technologies Used](#tools-and-technologies-used)\n- [Features](#features)\n- [Installation](#installation)\n  - [Prerequisites for production](#prerequisites-for-production)\n  - [Setup](#setup)\n    - [Development](#development)\n    - [Production](#production)\n- [Usage](#usage)\n  - [Run the application](#run-the-application)\n    - [Development](#development-1)\n    - [Production](#production-1)\n  - [Run the tests](#run-the-tests)\n    - [Development](#development-2)\n    - [Production](#production-2)\n  - [Stop the application](#stop-the-application)\n    - [Development](#development-3)\n    - [Production](#production-3)\n- [Diagrams](#diagrams)\n  - [Architecture Diagram](#architecture-diagram)\n  - [Entity Relationship Diagram](#entity-relationship-diagram)\n\n\u003cbr /\u003e\n\n## User Interfaces\n\n\u003cimg src=\"/screenshots/home_page.png\"/\u003e\n\n\u003cimg src=\"/screenshots/home_page_with_short_urls.png\"/\u003e\n\n\u003cimg src=\"/screenshots/link_page_details.png\"/\u003e\n\n\u003cimg src=\"/screenshots/link_page_all_views.png\"/\u003e\n\n\u003cimg src=\"/screenshots/about_page.png\"/\u003e\n\n\u003cimg src=\"/screenshots/stats_page.png\"/\u003e\n\n\u003cbr /\u003e\n\n## Tools and Technologies Used\n\n- Ruby\n- Rails\n- Bundler\n- Nginx\n- Certbot\n- Docker\n- Docker Compose\n- Hostinger\n- Excalidraw\n- Draw.io\n- Heroicons\n- TailwindCSS\n- Make\n\n## Features\n\n- Convert a target URL into a short URL that can be publicly shared and accessed\n- Provide a usage report for the application such as the number of clicks, originating geolocation and timestamp of each visit to a short URL\n\n\u003cbr /\u003e\n\n## Installation\n\n### Prerequisites for production\n\nBefore starting, make sure you have the following installed:\n\n- Docker\n- Docker Compose v2\n- Make\n\n\u003cbr /\u003e\n\n### Setup\n\nClone the repository\n\n```bash\ngit clone https://github.com/ariessa/snipit.git\n\ncd snipit\n```\n\n\u003cbr /\u003e\n\n#### Development\n\nCreate file `.env` based on file `.env.example` and populate values accordingly\n\n```bash\ncp .env.example .env\n```\n\n\u003cbr /\u003e\n\n#### Production\n\nCreate file `.env.prod` based on file `.env.example` and populate values accordingly\n\n```bash\ncp .env.example .env.prod\n```\n\n\u003cbr /\u003e\n\n## Usage\n\n### Run the application\n\n#### Development\n\nCreate and migrate server\n\n```bash\nrails db:prepare\n```\n\n\u003cbr /\u003e\n\nStart the server\n\n```bash\nbin/dev\n```\n\n\u003cbr /\u003e\n\n#### Production\n\nBuild and run the containers\n\n```bash\nmake up\n```\n\n\u003cbr /\u003e\n\nOpen your web browser and navigate to `https://localhost:3000`.\n\n\u003cbr /\u003e\n\n### Run the tests\n\n#### Development\n\n```bash\nrails test\n```\n\n\u003cbr /\u003e\n\n#### Production\n\n```bash\nmake tests\n```\n\n\u003cbr /\u003e\n\n### Stop the application\n\n#### Development\n\nHit `Ctrl + C`\n\n\u003cbr /\u003e\n\n#### Production\n\n```bash\nmake down\n```\n\n\u003cbr /\u003e\n\n## Diagrams\n\n### Architecture Diagram\n\n\u003cimg src=\"/diagrams/architecture_diagram.png\"/\u003e\n\n\u003cbr /\u003e\n\n### Entity Relationship Diagram\n\n\u003cimg src=\"/diagrams/entity_relationship_diagram.png\"/\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fariessa%2Fsnipit","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fariessa%2Fsnipit","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fariessa%2Fsnipit/lists"}