How often do you get asked about the gadgets or software that you use? If the answer is quite often, you should be trying show off out. Curate the list of gadgets and software and share it with your fans and followers.

Overview

Logo

Show Off - Showcase your setup!

How often do you get asked about the gadgets or software that you use? If the answer is quite often, you should be trying show off out. Curate the list of gadgets and software and share it with your fans and followers.

View Demo · Report Bug · Request Feature


Features

  1. Multiple Collections
  2. Built for developers, designers, and content creators
  3. Share & Embed
  4. Private collections
  5. Like and Comments
  6. Recommendation Meter
  7. Affiliate Links

Detailed blog post: https://sreyaj.dev/show-off-showcase-your-setup-planetscale-hashnode-hackathon

Running Locally 💻

#1. Clone the repo

git clone https://github.com/adisreyaj/show-off.git

#2. Initialize the submodule (zigzag)

git submodule update --init

#3. Install the dependencies

npm install

#4. Install Peer deps for zigzag

npm i @floating-ui/dom

#5. Setup the environment variables

Set up all the required environment variables required for the back-end:

DATABASE_URL=mysql://localhost:3309/show-off

NODE_ENV=development
FRONT_END_CALLBACK_URL=http://localhost:4200/auth/callback

# JWT sign secret
JWT_SECRET=very_very_strong_secret_key
JWT_EXPIRY="3d"
COOKIE_SECRET=very_very_strong_secret_session_key

# Google OAuth Details
GOOGLE_CLIENT_ID=xxxxx.googleusercontent.com
GOOGLE_CLIENT_SECRET=xxxxxxx
GOOGLE_CALLBACK_URI=http://localhost:3333/api/auth/google/callback

# Github OAuth Details
GITHUB_CLIENT_ID=Iv1.xxxxxxxxxx
GITHUB_CLIENT_SECRET=xxxxxx
GITHUB_CALLBACK_URI=http://localhost:3333/api/auth/github/callback

#6. Set up the Database

Run the command to populate the DB with tables:

npm run prisma:push

#7. Start up the UI and Back-end

For UI:

npm start show-off

For Back-end

npm start api

UI: http://localhost:4200 & GQL: http://localhost:3333

Links and References 🔗

Title Link Description
Angular https://angular.io/ Front-end framework
NestJs https://docs.nestjs.com/ Back-end framework based on NodeJs
PlanetScale https://www.planetscale.com/ MySQL Compatible DB
Prisma https://www.prisma.io/ Node.js and TypeScript ORM
Tailwind CSS https://tailwindcss.com/ Utility first CSS framework
Nx https://nx.dev/#getting-started Build system with monorepo support
PM2 https://app.pm2.io/ Advanced, production process manager for Node.JS

Roadmap

See the open issues for a list of proposed features (and known issues).

License

Distributed under the Apache 2.0 License. See LICENSE for more information.

Show your support

Please ⭐️ this repository if this project helped you!

Made as part of PlanetScale x Hashnode hackathon.

You might also like...

See a banned user's profile, their friends, their favorite games, their followers etc.

Roblox-Banned-User-Viewer AKA BanView See a banned user's profile, their friends, their favorite games, their followers etc. Ever wondered how to view

Nov 18, 2022

TikTokLive-Widget: A socket client/server program that exposes a widget with alerts (such as gifts, followers ...) for a specific user streaming on Tik Tok Live platform

TikTokLive-Widget: A socket client/server program that exposes a widget with alerts (such as gifts, followers ...) for a specific user streaming on Tik Tok Live platform

TikTokLive-Widget: A socket client/server program that exposes a widget with alerts (such as gifts, followers ...) for a specific user streaming on Tik Tok Live platform

Dec 3, 2022

🌈 GitHub following, followers, only-following, only-follower tracker 🌈

🌈 GitHub following, followers, only-following, only-follower tracker 🌈

github-following-tracker GitHub following, followers, only-following, only-follower tracker 👀 Just enter your GitHub name and track your followings!

Jun 15, 2022

Easy and simple way to share data via mobile’s built-in share module.

React-Mobile-Share Provides an easy and simple way to share data (such as text, url and media) via mobile’s built-in share module. It is based on Web

Dec 28, 2022

I'm trying to create simple program for adding the digital signature to a pdf file with self-signed certificate. I use node-signpdf and pdf-lib library.

pdf-digital-signature-with-node-signpdf-ejs I'm trying to create simple program for adding the digital signature to a pdf file with self-signed certif

Dec 25, 2022

A website where all the members can participate and ask questions. anybody can comment and give the answer.

A website where all the members can participate and ask questions. anybody can comment and give the answer. if the creator of the question feels that answer is correct then he/she can mark the answer as correct. The project is under construction. Open source contributions are most welcome.🙌

Dec 19, 2022

A dad joke is a short joke, typically a pun, presented as a one-liner or a question and answer, but not a narrative

A dad joke is a short joke, typically a pun, presented as a one-liner or a question and answer, but not a narrative. Many dad jokes may be considered anti-jokes, deriving humor from an intentionally not funny punchline. daddy-jokes is an npm package that returns a dad joke when implemented.

Oct 23, 2022

Unlocks all brainly answers and bypasses one answer per day limit. Gives infinite free answers & unlocks all textbooks 🔐 ∞

Brainly-LockPick 🔑 Unlocks all brainly answers and bypasses one answer per day limit. Gives infinite free answers & unlocks textbooks 🔐 ∞ Note: refr

Dec 9, 2022

Import ES Modules from the top StackOverflow answer to a question

Import ES Modules from the top StackOverflow answer to a question

StackOverflow Copilot Like GitHub Copilot, but worse! Imports the first codeblock of the first answer to a StackOverflow question as an ES Module Usag

Jan 18, 2022
Comments
  • Show loading for embed code snippet preview

    Show loading for embed code snippet preview

    Embed code preview uses shiki which take a bit of time for the initial rendering as it has to load the required resources.

    Need to add a loading state and also prevent the CLS when the preview finally appears on screen.

    opened by adisreyaj 0
Owner
Adithya Sreyaj
A developer who loves creating web applications using Angular and NodeJs.
Adithya Sreyaj
Trying to learn Svelte. Based off the official tutorial. Readme has notes!

Learning Svelte! A JavaScript library An open-source front end compiler Instead of using a virtual DOM, Svelte will directly update the DOM in an effi

Areena Arora 2 Jul 5, 2022
A collection of (mostly) technical things every software developer should know about

Join our community for professional Software Developers and get more control over your life and career! Every Programmer Should Know ?? A collection o

MTDV 66.6k Jan 4, 2023
Get the answer in both wordle and wordleunlimited.org

Wordle Hack The best Wordle Hack. Discord Support Server: https://discord.gg/wqz4jW6a Made by rxzyx (rzx). This is purley for education purposes. ?? H

rzx. 6 Dec 15, 2022
🐻 Trying out the bear necessities for complex state management.

?? Zustand Demos My practice repository for the Zustand library--the bear necessities for complex state management. You can find some examples of how

Carlo Taleon 2 Jul 2, 2022
Have you contributed to Open-source? Now it's time to show off to the world!

Hacktobered.com I decided to build this fun project during Hacktoberfest 2022. Here are some details about its initial idea / problem statement, tech

Hacktobered 3 Oct 30, 2022
A social-media mock app for the ones who love to read - and maybe show it off

?? ?? Cachalote ?? ?? Share what you are reading and find people who also likes it - or not! What does it do? This app focuses on three main questions

Thaís França 3 May 22, 2022
HanAssist - Utilities to ease Chinese variant handling in user scripts and gadgets.

HanAssist 代码文档 HanAssist 是帮助中文维基百科及其他 MediaWiki 网站上的用户脚本和小工具更优雅地处理中文变体消息的实用程序。 本程序的目标是取代wgULS()和wgUVS()小工具。 HanAssist.localize( { hans: '一天一苹果,医生远离我。'

Diskdance 3 Oct 29, 2022
A simple browser extension, intended to get you "Back To Work" when you start slacking off to one of those really addictive sites.

Back to Work A simple browser extension, intended to get you Back To Work when you start slacking off to one of those really addictive sites. What doe

Dheeraj Lalwani 29 Nov 19, 2022
This repository contains an Advanced Zoom Apps Sample. It should serve as a starting point for you to build and test your own Zoom App in development.

Advanced Zoom Apps Sample Advanced Sample covers most complex scenarios that you might be needed in apps. App has reference implementation for: Authen

Zoom 11 Dec 17, 2022