reduced.to/README.md

242 lines
7.6 KiB
Markdown
Raw Normal View History

2022-10-09 08:27:30 +03:00
<a name="readme-top"></a>
2022-10-05 20:46:30 +03:00
2022-10-09 08:27:30 +03:00
<!-- PROJECT SHIELDS -->
[![Contributors][contributors-shield]][contributors-url]
[![Forks][forks-shield]][forks-url]
[![Stargazers][stars-shield]][stars-url]
[![Issues][issues-shield]][issues-url]
2022-10-05 18:20:38 +03:00
2022-10-08 09:21:39 -04:00
2022-10-09 08:27:30 +03:00
<!-- PROJECT LOGO -->
<br />
<div align="center">
<h1 align="center">URL Shortener</h1>
<p align="center">
URL shortener is a web application that reduces the length of link URL. So it's easier to remember, share and track.
<br />
<br />
<a href="https://url-shortener-live.herokuapp.com">View Demo</a>
·
<a href="https://github.com/origranot/url-shortener/issues">Report Bug</a>
·
<a href="https://github.com/origranot/url-shortener/issues">Request Feature</a>
</p>
</div>
<br />
<!-- TABLE OF CONTENTS -->
<details>
<summary>📚 Table of Contents</summary>
<ol>
<li>
<a href="#about-the-project">🌐 About The Project</a>
<ul>
<li><a href="#built-with">🔥 Built With</a></li>
</ul>
</li>
<li>
<a href="#getting-started">🚀 Getting Started</a>
<ul>
<li><a href="#prerequisites">📃 Prerequisites</a></li>
<li><a href="#installation">💻 Installation</a></li>
<li><a href="#development">👩‍💻 Development</a></li>
<li><a href="#docker">🐳 Docker</a></li>
<li><a href="#docker-compose">🐙 Docker Compose</a></li>
</ul>
</li>
<li><a href="#usage">🐱‍💻 Usage</a></li>
<li><a href="#roadmap">🧱 Roadmap</a></li>
<li><a href="#contributing">🥇 Contributing</a></li>
<li><a href="#contribors">🏆 Contributors</a></li>
<li><a href="#license">📝 License</a></li>
<li><a href="#contact">💌 Contact</a></li>
</ol>
</details>
<br/>
<!-- ABOUT THE PROJECT -->
## 🌐 About The Project
[![Product Name Screen Shot][product-screenshot]](https://github.com/origranot/url-shortener)
2022-10-05 20:46:30 +03:00
2022-10-08 21:06:09 +05:30
I created this repo a long time ago (more than 3 years), made this public for Hacktoberfest! This is a very good opportunity for beginners to start their journey with open source. All PRs are welcome!
2022-10-05 20:46:30 +03:00
2022-10-09 08:27:30 +03:00
<p align="right">(<a href="#readme-top">back to top</a>)</p>
### 🔥 Built With
List of frameworks/libraries used to bootstrap the project.
* [![Nest][NestJS]][Nest-url]
* [![Qwik][Qwik.js]][Qwik-url]
* [![Bootstrap][Bootstrap.com]][Bootstrap-url]
<p align="right">(<a href="#readme-top">back to top</a>)</p>
<!-- GETTING STARTED -->
## 🚀 Getting Started
### 📃 Prerequisites
List of things you need to run the project locally and how to install them.
* npm
```sh
npm install npm@latest -g
```
### 💻 Installation
1. [Fork](https://github.com/origranot/url-shortener/fork) the repo
2. Clone the repo
```sh
git clone https://github.com/your_username_/url-shortener.git
```
3. Open the cloned repository using the `url-shortener.code-workspace` file (VSCode)
4. Install NPM packages
```sh
npm install && npm run install:all
```
5. Build the project
```sh
npm run build:all
```
6. Run the project
```sh
npm run start:prod
```
7. Go on your browser and open
```sh
http://localhost:3000/
```
### 👩‍💻 Development
You will find 3 folders
* 🎯 `root`
*`url-shortener/frontend`
* 🚀 `url-shortener/backend`
### _Running the frontend in dev mode_
1. Move to the frontend folder
```sh
cd ./frontend
```
2. Run the project (it will open a new window)
```sh
npm run start
```
3. Vite will be now listening for changes in the code and reloading the solution
### _Running the backend in dev mode_
1. Move to the backend folder
```sh
cd ./backend
```
2. Run the project (be sure that you built the frontend before)
```sh
npm run start:dev
```
3. Nest will be now listening for changes in the code and reloading the solution
### 🐳 Docker
2022-10-06 22:17:39 +02:00
- You can easily build your application in a docker container and run it.
2022-10-09 08:27:30 +03:00
```sh
docker build . -t url-shortener
docker run -p 3000:3000 url-shortener
```
2022-10-06 22:17:39 +02:00
- Simply go to your favorite browser and visit `http://localhost:3000/` to see your application.
2022-10-09 08:27:30 +03:00
### 🐙 Docker compose
2022-10-06 22:13:47 +02:00
- In case you have docker installed, you can *single-click* deploy and test your changes by running the following and going to `http://localhost:3000/` on your browser.
2022-10-09 08:27:30 +03:00
```sh
docker-compose up
```
2020-05-08 21:53:54 +03:00
2022-10-07 09:15:10 +05:30
Happy Hacking !
2022-10-09 08:27:30 +03:00
<p align="right">(<a href="#readme-top">back to top</a>)</p>
<!-- USAGE EXAMPLES -->
## 🐱‍💻 Usage
Simply copy and paste a URL into the provided area. Then click shorten URL! Your URL has now been shortened!
[![Product Name Screen Shot][product-screenshot]](https://github.com/origranot/url-shortener)
<p align="right">(<a href="#readme-top">back to top</a>)</p>
<!-- ROADMAP -->
## 🧱 Roadmap
- [x] Migrate backend to NestJS
- [x] Migrate frontend to Qwik
- [x] Better README
- [ ] Yarn instead of NPM
- [ ] Better UI
- [ ] Animations
- [ ] Dark/Light mode
- [ ] Fonts?
- [ ] Add some testing
- [ ] Add logs
- [ ] Add a statistics page
- [ ] Add more ideas
Just create a [Pull request](https://github.com/origranot/url-shortener/pulls) already 😃
_See the [open issues](https://github.com/othneildrew/Best-README-Template/issues) for a full list of proposed features (and known issues)._
<p align="right">(<a href="#readme-top">back to top</a>)</p>
<!-- CONTRIBUTING -->
## 🥇 Contributing
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are **greatly appreciated**.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement".
Don't forget to give the project a star ⭐! Thanks again!
1. Fork the Project
2. Create your Feature Branch (`git checkout -b feature/AmazingFeature`)
3. Commit your Changes (`git commit -m 'Add some AmazingFeature'`)
4. Push to the Branch (`git push origin feature/AmazingFeature`)
5. Open a Pull Request
## 🏆 Contributors
2022-10-07 20:06:20 +05:30
<a href = "https://github.com/origranot/url-shortener/graphs/contributors">
<img src = "https://contrib.rocks/image?repo=origranot/url-shortener"/>
</a>
2022-10-09 08:27:30 +03:00
<p align="right">(<a href="#readme-top">back to top</a>)</p>
<!-- LICENSE -->
## 📝 License
Distributed under the MIT License. See `LICENSE.txt` for more information.
<p align="right">(<a href="#readme-top">back to top</a>)</p>
<!-- CONTACT -->
## 💌 Contact
Project Link: [https://github.com/origranot/url-shortener](https://github.com/origranot/url-shortener)
<p align="right">(<a href="#readme-top">back to top</a>)</p>
2022-10-07 09:15:10 +05:30
2022-10-09 08:27:30 +03:00
<!-- MARKDOWN LINKS & IMAGES -->
[contributors-shield]: https://img.shields.io/github/contributors/origranot/url-shortener.svg?style=for-the-badge
[contributors-url]: https://github.com/origranot/url-shortener/graphs/contributors
[forks-shield]: https://img.shields.io/github/forks/origranot/url-shortener.svg?style=for-the-badge
[forks-url]: https://github.com/origranot/url-shortener/network/members
[stars-shield]: https://img.shields.io/github/stars/origranot/url-shortener.svg?style=for-the-badge
[stars-url]: https://github.com/origranot/url-shortener/stargazers
[issues-shield]: https://img.shields.io/github/issues/origranot/url-shortener.svg?style=for-the-badge
[issues-url]: https://github.com/origranot/url-shortener/issues
2022-10-05 20:46:30 +03:00
2022-10-09 08:27:30 +03:00
[product-screenshot]: docs/gif.gif
[NestJS]: https://img.shields.io/badge/nestJS-000000?style=for-the-badge&logo=nestjs&logoColor=E0234E
[Nest-url]: https://nestjs.com/
2022-10-09 15:36:38 +03:00
[Qwik.js]: https://tinyurl.com/y67dv8ub
2022-10-09 08:27:30 +03:00
[Qwik-url]: https://qwik.builder.io/
[Bootstrap.com]: https://img.shields.io/badge/Bootstrap-563D7C?style=for-the-badge&logo=bootstrap&logoColor=white
[Bootstrap-url]: https://getbootstrap.com