An all-in-one next-generation platform for eCommerce, travel, and utility services. BoominSquare seamlessly integrates a comprehensive store marketplace, flight and hotel reservations, and everyday utility payments into a single, intuitive web experience.
- π« Travel & Tourism
- Flights: Search and book flights globally with live pricing, dynamic loading animations, and robust local fallback mechanisms for airport autocompletion.
- Hotels: Browse and reserve accommodations easily.
- Tours & Transfers: Explore local activities and book reliable airport or city transfers.
- ποΈ eCommerce Marketplace
- Store: Full-featured online store for buyers across various categories.
- Track Order: Real-time order tracking functionalities.
- Sellers Hub: Dedicated "Sell on BoominSquare" landing page for seamless vendor onboarding.
- β‘ Utilities & Services
- Bills & Airtime: Pay bills and purchase airtime securely (Powered by the Reloadly API).
- π Security & Auth
- Secure account registration with an OTP-based flow and comprehensive error handling.
- Framework: Next.js (App Router)
- Library: React 19
- Database ORM: Prisma
- Styling: Tailwind CSS
- Animations: Framer Motion
- UI Components: Radix UI, Lucide React
- Data Fetching: Axios
boominsquare/
βββ src/
β βββ app/ # Next.js App Router pages (flights, hotels, store, sellers, etc.)
β βββ components/ # Reusable React components (FlightLoader, UI elements)
β βββ config/ # Application configurations
β βββ data/ # Static data and constants
β βββ lib/ # Utility functions and library setups
β βββ services/ # External API wrappers (e.g., Reloadly, FlightAPI)
β βββ types/ # TypeScript type definitions
βββ prisma/ # Database schema and migrations
βββ public/ # Static assets (images, icons)
- Node.js (v18 or higher)
- npm, yarn, or pnpm
- A relational database accessible for Prisma
-
Clone the repository:
git clone https://github.com/yourusername/boominsquare.git cd boominsquare -
Install dependencies:
npm install
-
Set up environment variables: Create a
.envor.env.localfile in the root directory and add your keys based on the existing configurations. Example:DATABASE_URL="your_database_connection_string" # Add other required API keys (Reloadly, etc.)
-
Initialize the Database: Generate the Prisma client:
npx prisma generate
Apply migrations:
npx prisma migrate dev
-
Run the development server:
npm run dev
Open http://localhost:3000 in your browser to see the app.
npm run dev- Starts the Next.js development server.npm run build- Generates Prisma client and builds the application for production.npm run start- Starts the Next.js production server.npm run lint- Runs ESLint to analyze the code.npm run dev:test-network- Utility script to test the connection to the Reloadly network.npm run migrate:deploy- Deploys Prisma migrations.
This project is proprietary and intended for authorized use only.