SegmentationFaultEnjoyer / uevent

App for creating events using blockchain technologies

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

UEVENT


App for creating events using blockchain technologies

About app


App for managing events, where you can create your own company and make events that people will be able to buy tickets for. App is using blockchain technologies to deliver you the ticket service. Each ticket is ERC721 contract that provides full ownership of ticket and abillity to send it to someone else.

Technology stack:

  • Backend: NodeJS, Express, KNEX
  • Database: Postgresql
  • Smart contracts: Solidity
  • Frontend: React, TypeScript, SASS, MUI
  • Bundler: Vite

Architecture:

  • Server-API: REST and JSON-API specifications, MVC pattern
  • Database-API: builder pattern
  • Styles: BEM specification
  • Authentication: Web3 Auth

Features:

  • Creating companies
  • Creating events from the name of company
  • Leaving comments under events
  • Push and email notifications
  • Buy ticket for cryptocurrency and obtain NFT's
  • AI generation for event banner
  • Incredible loaders, slow down your network just to face this beauty

Third-party services:

  • Google API - for maps
  • Metamask + ethers.js for handling cryptocurrency transactions
  • OpenAI API - for generating banner of the event
  • INFURA API - for uploading banner and NFT metadata to IPFS
  • Mailgun - for email notifications

Before start preparations

1. Database


start postgresql server and create empty data base 

# you can use docker compose file from the repo
- docker compose up -d

2. Setup the environment


  • Deploy TokenFactory.sol from the contracts folder. (You can use Remix or whatever IDE you like)
  • Create .env file for backend and for frontend. Check .env.example in each folder.

3. Installing dependencies and preparing database


yarn packages      
cd server && yarn migrate

4. Starting app


# start in different terminals or in daemon mode

yarn dev:client 	#for developing mode
yarn dev:server 	#for developing mode

About

App for creating events using blockchain technologies


Languages

Language:TypeScript 72.4%Language:JavaScript 14.4%Language:SCSS 10.1%Language:Solidity 1.8%Language:HTML 0.9%Language:CSS 0.4%