url-shortener-2.0
URL Shortener is a tool to help you create simple and easy-to-remember custom links from long URLs and to also track link performance and impact.
Science Score: 67.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 3 DOI reference(s) in README -
✓Academic publication links
Links to: zenodo.org -
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (12.5%) to scientific vocabulary
Repository
URL Shortener is a tool to help you create simple and easy-to-remember custom links from long URLs and to also track link performance and impact.
Basic Info
Statistics
- Stars: 1
- Watchers: 1
- Forks: 6
- Open Issues: 1
- Releases: 2
Metadata Files
README.md
Description
Do you wish you could convert your long urls to a short and easy-to-remember custom one, and also track the number of visits, and be in total control of your links (e.g. password-protect, disable/enable, set expiry dates). Also do you wish to track engagements using UTM parameters, then URL Shortener 2.0. is that tool you need.
Watch URL-Shortener-2.0 in Action
Feature Delta (changes) between Phase One and Phase Two
https://user-images.githubusercontent.com/17693596/205698074-88500484-e25a-44de-bebf-1c17ca358f13.mp4
Tech Stack
Getting started & Installation:
- Backend See README.md
- Frontend See README.md
Demo Links
- Backend Base API Endpoint URL: https://url-shortener-server-api.herokuapp.com/ Check out Docs
- Frontend Web App: https://url-bit.web.app/
Some of our Current Screens
Phase 1 Features
- Anonymous short links creation (without login)
- Edit/Delete shortened links
- Redirect shortened links to original links
Phase 2 Features
- User authentication
- Update and delete user account
- Create Short links (from authenticated account) asides from anonymous
- Edit/Delete shortened links (from authenticated account)
- Track link engagement analytics - check number of visits of each shortened link
- Set up UTM parameters for shortened link to track link engagements, medium, channels, source etc.
- Set expiry date, Disable/Enable, Password protect created of each shortened link
- Download QR code of each shortened links
- Redirect shortened links to original links (both for anonymously created links & logged in user created ones)
- View overview stats of all your links in one place
Future Scope
- Display charts to show engagement analytics using UTM parameters
- Bulk shortened links creation
- Country/Region targeting
- Link expiration by number of visits
- Tags for links to organize them in dashboard
Scalability
Contributions to the Project
Please refer to the Contributing.md if you want to contrbute to the FlashCards source code. Follow all the guidelines mentioned and raise a pull request for the developers to review before the code goes to the main source code.
Help
Email any queries to the contributors - 1. Swarangi Gaurkar 2. Kritika Javali 3. John Damilola 4. Aaron Dias Barreto 5. Leo Hsiang
Authors
License
Funding
Our project at the moment is not funded by any organization/individual.
Citation (CITATION.cff)
cff-version: 1.2.0 message: "If the code for this repository is used, please cite it as below" authors: - family-names: "Javali" given-names: "Kritika" - family-names: "Gaurkar" given-names: "Swarangi" - family-names: "Dias Barreto" given-names: "Aaron" - family-names: "Hsiang" given-names: "Leo" - family-names: "Babalola" given-names: "Damilola" title: "URL Shortner 2.0" version: 1.0 doi: 10.5281/zenodo.7113667 date-released: 2022-11-13 url: "https://github.com/JohnDamilola/URL-Shortner-2.0"
GitHub Events
Total
- Pull request event: 3
- Fork event: 2
Last Year
- Pull request event: 3
- Fork event: 2
Dependencies
- @testing-library/jest-dom ^5.14.1
- @testing-library/react ^13.0.0
- @testing-library/user-event ^13.2.1
- @types/jest ^27.0.1
- @types/node ^16.7.13
- @types/react ^18.0.0
- @types/react-dom ^18.0.0
- react ^18.2.0
- react-dom ^18.2.0
- react-scripts 5.0.1
- typescript ^4.4.2
- web-vitals ^2.1.0
- 1192 dependencies
- Django ==3.2.15
- Flask ==0.12
- Flask-Bootstrap ==3.3.7.1
- Flask-HTTPAuth ==3.2.2
- Flask-Login ==0.4.0
- Flask-Mail ==0.9.1
- Flask-Migrate ==2.0.3
- Flask-Moment ==0.5.1
- Flask-PageDown ==0.2.2
- Flask-SQLAlchemy ==2.1
- Flask-SSLify ==0.1.5
- Flask-Script ==2.0.5
- Flask-WTF ==0.14.2
- Jinja2 ==2.9.5
- Mako ==1.0.6
- Markdown ==2.6.8
- MarkupSafe ==0.23
- Pyrebase ==3.0.27
- SQLAlchemy ==1.1.5
- WTForms ==2.1
- Werkzeug ==0.11.15
- alembic ==0.8.10
- asgiref ==3.3.4
- attrs ==22.1.0
- black ==22.8.0
- bleach ==2.0.0
- blinker ==1.4
- click ==8.0.0
- coverage ==6.5.0
- django-cors-headers ==3.13.0
- dominate ==2.7.0
- flake8 ==5.0.4
- gcloud ==0.17.0
- googleapis-common-protos ==1.56.4
- gunicorn ==20.1.0
- html5lib ==1.0b10
- httplib2 ==0.20.4
- iniconfig ==1.1.1
- itsdangerous ==0.24
- jws ==0.1.3
- mccabe ==0.7.0
- mypy-extensions ==0.4.3
- oauth2client ==3.0.0
- packaging ==21.3
- pathspec ==0.10.1
- platformdirs ==2.5.2
- pluggy ==1.0.0
- protobuf ==4.21.7
- py ==1.11.0
- pyasn1 ==0.4.8
- pyasn1-modules ==0.2.8
- pycodestyle ==2.9.1
- pycryptodome ==3.4.3
- pyflakes ==2.5.0
- pyparsing ==3.0.9
- pytest ==7.1.2
- python-dotenv ==0.21.0
- python-editor ==1.0.3
- python-jwt ==2.0.1
- pytz ==2021.1
- requests ==2.11.1
- requests-toolbelt ==0.7.0
- rsa ==4.9
- six ==1.10.0
- sqlparse ==0.4.2
- tomli ==2.0.1
- urllib3 ==1.26.12
- visitor ==0.1.3
- webencodings ==0.5.1
- actions/checkout v3 composite
- actions/setup-python v3 composite
- postgres * docker
- actions/checkout v3 composite
- actions/setup-python v3 composite
- postgres * docker
- actions/checkout v3 composite
- ad-m/github-push-action master composite
- actions/checkout v3 composite
- actions/setup-python v3 composite
- postgres * docker
- Flask * test
- Flask-Bcrypt * test
- Flask-Cors * test
- Flask-Login * test
- Flask-Migrate * test
- Flask-SQLAlchemy * test
- Flask-Script * test
- Jinja2 * test
- Mako * test
- MarkupSafe * test
- PyJWT * test
- SQLAlchemy * test
- Werkzeug * test
- alembic * test
- bcrypt * test
- cffi * test
- click * test
- cryptography * test
- gunicorn * test
- importlib-metadata * test
- itsdangerous * test
- psycopg2 * test
- pycparser * test
- pyshorteners * test
- python-dotenv * test
- six * test
- zipp * test
- flask *
- pyrebase4 *
- pytest ==7.1.2
- sqlalchemy *