RAVYN is a full-stack e-commerce online store built with Next.js and Supabase. This project includes features such as a product catalog, shopping cart, secure user authentication, and backend APIs for managing products, users, and orders.
- Product Catalog: Browse and view products.
- Shopping Cart: Add products to the cart and proceed to checkout.
- User Authentication: Secure login and registration for users.
- Order Management: View past orders and order history.
To set up the database schema in Supabase, use the following SQL code:
-- Users Table
CREATE TABLE users (
id SERIAL PRIMARY KEY,
email VARCHAR(255) UNIQUE NOT NULL,
password VARCHAR(255) NOT NULL,
created_at TIMESTAMP DEFAULT NOW()
);
-- Products Table
CREATE TABLE products (
id SERIAL PRIMARY KEY,
name VARCHAR(255) NOT NULL,
description TEXT,
price DECIMAL(10, 2) NOT NULL,
created_at TIMESTAMP DEFAULT NOW()
);
-- Orders Table
CREATE TABLE orders (
id SERIAL PRIMARY KEY,
user_id INTEGER REFERENCES users(id),
total DECIMAL(10, 2) NOT NULL,
created_at TIMESTAMP DEFAULT NOW()
);
-- Order Items Table
CREATE TABLE order_items (
id SERIAL PRIMARY KEY,
order_id INTEGER REFERENCES orders(id),
product_id INTEGER REFERENCES products(id),
quantity INTEGER NOT NULL
);- Clone the repository.
- Install dependencies using
npm install. - Set up your Supabase project and configure the database schema.
- Run the application using
npm run dev.
This project is licensed under the MIT License.