GithubHelp home page GithubHelp logo

tarekbadrshalaan / o-shortener Goto Github PK

View Code? Open in Web Editor NEW

This project forked from the-sabra/o-shortener

0.0 0.0 0.0 134 KB

if you need to short URL clone it and make short URLs

Home Page: https://o-shortner.up.railway.app

License: MIT License

JavaScript 2.81% TypeScript 97.19%

o-shortener's Introduction

Overview

O-shortener is used to make short urls

Built With

Nest Mysql Prisma TypeScript Jest

API Endpoints

  • POST /auth/signup : Create a new User
  • GET /:short_code : Redirect to the original URL based on the provided short code.

For detailed documentation and examples, refer to the API Documentation file.

Installation

1- clone the Repo

git clone https://github.com/omarsabra1/O-shortener
cd o-shortener
npm install

Running the app

# development
$ npm run start

# watch mode
$ npm run start:dev

# production mode
$ npm run start:prod

How code is work


src
│   ├── main.ts
│   ├── app.controller.spec.ts
│   ├── app.controller.ts
│   ├── auth
│   │   ├── Dtos
│   │   ├── auth.module.ts
│   │   ├── controllers
│   │   ├── guard
│   │   │   └── auth
│   │   │       └── auth.guard.ts
│   │   ├── service
│   │   └── utils
│   ├── prismaService
│   └── urls
│       ├── controller
│       │   ├── Dtos
│       │   └── urls.controller.ts
│       ├── service
│       ├── urls.module.ts
│       └── utils

NOTE : The controller mange the routes only but the services for business logic and connecting With ORM

  • main.ts : The entry point of the application.
  • urls/controller/urls.controller.ts : Handles the creation of shortened URLs.
  • prismaService : is used to connect Prisma Client.
  • app.controller.ts : Handles the redirection to the original URLs.
  • auth/controller/auth.controller.ts : Handles Authentication and creating user
  • auth/guard/auth/auth.guard.ts : verifying JWT Token

License

O-shortener under the MIT licensed.

Contact

LinkedIn Gmail

o-shortener's People

Contributors

the-sabra avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.