Skip to content

iamsahebgiri/betabuzz

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

84 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

betabuzz

BetaBuzz

Creating a buzz around the latest beta products

⚑️ Introduction

BetaBuzz is website to share and discover new products. Users submit products, which are listed in a linear format. The site includes a comments system and a voting system similar to Hacker News or Reddit.

Products Community Profile Settings Product Comments Grafana dashboard

🎯 Features

  • JWT Based Authentication
  • Storing user generated content in S3
  • Stripe integration for subscription (Premium features such as markdown editor, blue tick, etc.)
  • Recursive comments (like Reddit, HN) with markdown support

πŸ“ Folder

Here's the folder structure of the api and app:

.
β”œβ”€β”€ api
β”‚Β Β  β”œβ”€β”€ src
β”‚Β Β  β”‚Β Β  β”œβ”€β”€ config
β”‚Β Β  β”‚Β Β  β”œβ”€β”€ controllers
β”‚Β Β  β”‚Β Β  β”œβ”€β”€ docs
β”‚Β Β  β”‚Β Β  β”œβ”€β”€ middlewares
β”‚Β Β  β”‚Β Β  β”œβ”€β”€ models
β”‚Β Β  β”‚Β Β  β”œβ”€β”€ routes
β”‚Β Β  β”‚Β Β  β”œβ”€β”€ services
β”‚Β Β  β”‚Β Β  β”œβ”€β”€ utils
β”‚Β Β  β”‚Β Β  └── validations
β”‚Β Β  └── tests
β”‚Β Β      β”œβ”€β”€ fixtures
β”‚Β Β      β”œβ”€β”€ integration
β”‚Β Β      β”œβ”€β”€ unit
β”‚Β Β      └── utils
└── app
    β”œβ”€β”€ assets
    β”œβ”€β”€ components
    β”œβ”€β”€ config
    β”œβ”€β”€ hooks
    β”œβ”€β”€ layouts
    β”œβ”€β”€ lib
    β”œβ”€β”€ pages
    β”œβ”€β”€ public
    β”œβ”€β”€ services
    β”œβ”€β”€ styles
    └── types

βš™οΈ Installation

Make sure you have Node.js installed. Run this followed commands:

To install the api

# Change directory to api
cd api

# Copy environment variables and Make sure to change them
cp .env.example .env

# Install dependencies (only the first time)
npm install

# Run the local server at localhost:8000
npm run dev

To run the web app

# Change directory to app
cd app
# Install dependencies (only the first time)
npm install

# Run the local server at localhost:3000
npm run dev

# Build for production in the dist/ directory
npm run build

🌱 Third Party Libraries

πŸ“šοΈ Roadmap

  • Login with Google and Github
  • AI Integration for creating product description

❀️ Acknowledgements

β€πŸ’» Author

⭐️ Contribute

If you want to say thank you and/or support the active development of betabuzz:

  1. Add a GitHub Star to the project.
  2. Tweet about the project on your Twitter.
  3. Write a review or tutorial on Medium, Dev.to or personal blog.
  4. Support the project by donating a cup of coffee.

🧾 License

MIT License Copyright (c) 2023 Saheb Giri.