IkigaiLabsETH / ikigailabs.xyz

Fed by thought, convo & social media, adapting as we share. More than ideas—they’re alive through us. Don’t be surprised if she starts sweeping ai art & cultcoins.
https://ikigailabs-xyz.vercel.app
2 stars 1 forks source link

Ikigai Labs XYZ

The platform is a comprehensive, non-custodial, open-source Web3 application, designed to empower creators and collectors while leveraging the advanced functionalities of Reservoir Tools and Thirdweb. Artists can securely mint, distribute, and sell their digital art across multiple chains, with smart contracts tailored through Transient Labs. By integrating Ikigai Labs' T.R.A.C.E. system, authenticity and provenance are guaranteed, ensuring transparency in each transaction.

Curators play a pivotal role, crafting narratives and experiences through a seamless multi-chain aggregator that showcases over 150 marketplaces. Collectors are further engaged through innovative equity tokenization, offering them shared ownership and deeper community involvement. The platform not only supports digital art transactions but fosters a dynamic, evolving ecosystem where creators, curators, and collectors thrive. The concept of 'ikigai' guides this vision, blending technology, innovation, and passion to nurture both digital and physical art spaces through residencies and real-world experiences.

Table of Contents

Features

Technologies

Dependencies

Our project relies on several key dependencies to function. Here's an overview of the main packages used:

For a complete list of dependencies and their versions, please refer to the package.json file in the project root.

Getting Started

These instructions will help you set up and run the project on your local machine.

Prerequisites

Installation

  1. Clone the repository:

    git clone https://github.com/IkigaiLabsETH/ikigailabs.xyz.git
  2. Navigate to the project directory:

    cd project
  3. Install dependencies:

    npm install
    # or
    yarn install
  4. Set up environment variables: Copy the .env.example file to .env and fill in the required values, including your Reservoir API key and Thirdweb project settings.

Usage

To start the development server:

  1. Ensure you're in the project directory.

  2. Run one of the following commands:

    npm run dev
    # or
    yarn dev
    # or
    pnpm dev
  3. Open http://localhost:3000 in your browser to view the application.

The server will automatically reload if you make changes to the source files. You'll see any lint errors in the console.

For production, build the application first: yarn build

App Architecture

Key architectural decisions:

Our application follows a modular and organized structure to enhance maintainability and scalability. Here's an overview of the main directories and their purposes:

This structure allows for easy navigation, separation of concerns, and scalability as the project grows.

API Reference

Our application leverages both Reservoir and Thirdweb APIs, as well as custom endpoints. Here's an overview of key API endpoints:

Reservoir Endpoints

  1. Get Collections

    GET /api/reservoir/collections

    Fetches a list of NFT collections using Reservoir's API.

  2. Get Collection Details

    GET /api/reservoir/collections/{collectionId}

    Retrieves detailed information about a specific collection.

  3. Get Tokens

    GET /api/reservoir/tokens

    Fetches NFT tokens based on specified filters.

Thirdweb Endpoints

  1. Get Contract Metadata

    GET /api/thirdweb/contract/{contractAddress}

    Retrieves metadata for a specific smart contract.

  2. Create Listing

    POST /api/thirdweb/marketplace/create-listing

    Creates a new NFT listing on the marketplace.

Custom Endpoints

  1. User Authentication

    POST /api/auth/login
    POST /api/auth/logout
    GET /api/auth/user

    Handles user authentication and retrieval of user data.

  2. Marketplace Activity

    GET /api/activity

    Fetches recent marketplace activity, combining data from Reservoir and on-chain events.

For detailed parameters and response formats, please refer to our API documentation.

Contributing

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

License

This project is licensed under the MIT License.

Next.js

To learn more about Next.js, take a look at the following resources:

You can check out the Next.js GitHub repository - your feedback and contributions are welcome!

Vercel

The easiest way to deploy your Next.js app is to use the Vercel Platform from the creators of Next.js.

Check out our Next.js deployment documentation for more details.