Coder Social home page Coder Social logo

ysn4irix / shrinker Goto Github PK

View Code? Open in Web Editor NEW
3.0 3.0 0.0 63 KB

A full stack url shortener web application with user authentication built with SvelteKit and PocketBase as a BaaS.

Home Page: https://shrinker.ysnirix.xyz

License: MIT License

Dockerfile 0.32% JavaScript 24.34% HTML 0.52% CSS 0.27% Svelte 74.56%
javascript pocketbase preline svelte sveltejs sveltekit tailwindcss url-shortener

shrinker's Introduction

screens


A full stack URL shortener web application with user authentication built with

svelte     tailwind     pr     pb


screens


I start learning the most beloved framework Sveltekit and that's what i'm using in the frontend

❯ Features

  • Login/register with Google
  • Login/register with Github
  • Authentication using email/password with email verification
  • Resetting the Password
  • Create a short link and set an expire period to it (Optional)
  • Get all links associated with the authenticated user
  • Delete the short link
  • Edit user profile (Profile Photo & Fullname)
  • Edit user account (Changing email & username)
  • Edit user security (Changing password & deleting user account)
  • All User entries are server side validated using Zod

📟

❯ Getting Started

Live demonstration of the application available Here

  • Download the latest version of Pocketbase and run the executable with ./pocketbase serve or deploy it to a cloud provider

  • Import collections from pocketbase-collections.json to your pocketbase instance found in this link: http://localhost:8090/_/?#/settings/import-collections.

  • Register an app with your OAuth provider to acquire a Client ID and Client Secret : (for Google, you can create a Google App here). (for Github, you can create a Github App here).

    From there, you should be able to set the Redirect URL (if applicable) of your OAuth App to http://localhost:5173/auth/login

  • Register your app as an OAuth provider inside pocketbase (which can be accessed here if you're working locally with the default PB host settings) or read the docs here

Env

Rename the .env.example file in the root directory of the repo to .env and populate it with the following:

PUBLIC_POCKETBASE_URL="http://localhost:8090" # default

Developing

Once you've cloned the project and installed dependencies with npm install (or pnpm install or yarn), start a development server:

npm run dev
# or start and open the app in a new browser tab
npm run dev -- --open

Building

npm run build
node build

You can preview the built client app with npm run preview,This should not be used to serve your app in production.


🙌

❯ About

Contributing

Pull requests and stars are always welcome. For bugs and features requests, please create an issue.

📃

❯ License

Copyright © 2023-present, Ysn4Irix. Released under the MIT License.

shrinker's People

Contributors

ysn4irix avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  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.