Skip to content

Commit

Permalink
Rebrand to SocialBunny
Browse files Browse the repository at this point in the history
  • Loading branch information
luloxi committed Sep 26, 2024
1 parent b17e384 commit ca7f90d
Show file tree
Hide file tree
Showing 10 changed files with 39 additions and 29 deletions.
25 changes: 14 additions & 11 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
🫂 DARTE is an social dapp that empowers users to monetize their posts.
🫂 SocialBunny is an social dapp that empowers users to monetize their posts.

- Posts tokenization on mainnet is optional.
- Posts tokenization on mainnet is optional.
- Creators get royalties for sales of their tokenized posts
- First minters of a post get a share of those royalties.

Expand All @@ -12,17 +12,20 @@

# About the platform

**Users**:
**Users**:

- Explore, watch, and listen to content.
- Follow other users, like, comment and share posts.
- Optionally mint posts to mainnet.
- Optionally mint posts to mainnet.

**Posts**:

- Can have text, image, audio and video.
- When minted to mainnet, resales pay royalties to the original posters.
- First minters of a post get a share the income from sales and royalties from resales.

**Platform owner**:
**Platform owner**:

- Collects fees from mints.

# Features
Expand All @@ -33,7 +36,7 @@
- **Royalties**: Users (and first minters) automatically receive a share of royalties on every resale, providing a continuous stream of income.
- **Incentivized Gasless Minting**: Users can mint their NFTs without paying upfront gas fees. Instead, the first minter covers the minting cost and earns a share of sales and royalties on future resales.

## Social
## Social

- Create NFT galleries, follow and message other users, like NFTs, comment on them, receive notifications on activity.
- Customize profile colors and appearance
Expand Down Expand Up @@ -68,8 +71,8 @@ To get started follow the steps below:
1. Open a terminal and run this commands to clone this repo and install dependencies:

```
git clone https://github.com/luloxi/DARTE.git
cd DARTE
git clone https://github.com/luloxi/SocialBunny.git
cd SocialBunny
yarn install
```

Expand All @@ -83,15 +86,15 @@ This command starts a local Ethereum network using Foundry. The network runs on

3. Duplicate and rename `packages/foundry/.env.example` to `packages/foundry/.env` (you don't need to fill it out until deploying to a live network)

4. Open a second terminal, navigate to `DARTE` and run this command to deploy the test contract:
4. Open a second terminal, navigate to `SocialBunny` and run this command to deploy the test contract:

```
yarn deploy
```

This command deploys a test smart contract to the local network. The contract is located in `packages/foundry/contracts` and can be modified to suit your needs. The `yarn deploy` command uses the deploy script located in `packages/foundry/script/Deploy.s.sol` to deploy the contract to the network. You can also customize the deploy script.

5. Open a third terminal, navigate to `DARTE` and run this command to start your NextJS app:
5. Open a third terminal, navigate to `SocialBunny` and run this command to start your NextJS app:

```
yarn start
Expand All @@ -101,7 +104,7 @@ Visit your app on: `http://localhost:3000`. You can interact with your smart con

# Roadmap

- To see current development tasks and other info about the project, [see here](https://lulox.notion.site/DARTE-3458ad216e8c40a9b4489fe026146552?pvs=74)
- To see current development tasks and other info about the project, [see here](https://lulox.notion.site/SocialBunny-3458ad216e8c40a9b4489fe026146552?pvs=74)

## Phase 1 ✅

Expand Down
2 changes: 1 addition & 1 deletion packages/local_db/.firebaserc
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"projects": {
"default": "DARTE-v1"
"default": "SocialBunny-v1"
}
}
2 changes: 1 addition & 1 deletion packages/nextjs/.env.example
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
FIRESTORE_EMULATOR_HOST=localhost:8080

# Setup you project id for firebase
FIREBASE_PROJECT_ID="DARTE-v1"
FIREBASE_PROJECT_ID="SocialBunny-v1"

# Setup api-key for admin
ADMIN_API_KEY="admin-api-key"
2 changes: 1 addition & 1 deletion packages/nextjs/app/layout.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ import "~~/styles/globals.css";
import { getMetadata } from "~~/utils/scaffold-eth/getMetadata";

export const metadata = getMetadata({
title: "DARTE",
title: "SocialBunny",
description: "Built with 🏗 Scaffold-ETH 2",
});

Expand Down
4 changes: 2 additions & 2 deletions packages/nextjs/app/myProfile/MyProfile.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ export const MyProfile: NextPage = () => {
watch: true,
});

const defaultProfilePicture = "https://ipfs.io/ipfs/QmVCvzEQHFKzAYSsou8jEJtWdFj31n2XgPpbLjbZqui4YY";
const defaultProfilePicture = "/guest-profile.png";

// Update state when profileInfo changes and isEditing is false
useEffect(() => {
Expand Down Expand Up @@ -156,7 +156,7 @@ export const MyProfile: NextPage = () => {
<InputBase placeholder="Your Name" value={name} onChange={setName} />
) : (
<>
<h2 className="text-2xl font-bold">{name || "no name"}</h2>
<h2 className="text-2xl font-bold">{name || "Guest user"}</h2>
<div className="text-base-content">
<Address address={connectedAddress} />
</div>
Expand Down
2 changes: 1 addition & 1 deletion packages/nextjs/app/page.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import type { NextPage } from "next";
import { getMetadata } from "~~/utils/scaffold-eth/getMetadata";

export const metadata = getMetadata({
title: "DARTE",
title: "SocialBunny",
description: "Built with 🏗 Scaffold-ETH 2",
});

Expand Down
2 changes: 1 addition & 1 deletion packages/nextjs/components/Footer.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ export const Footer = () => {
<ul className="menu menu-horizontal w-full">
<div className="flex justify-center items-center gap-2 text-sm w-full">
<div className="text-center">
<a href="https://github.com/luloxi/DARTE" target="_blank" rel="noreferrer" className="link">
<a href="https://github.com/luloxi/SocialBunny" target="_blank" rel="noreferrer" className="link">
Fork me
</a>
</div>
Expand Down
27 changes: 17 additions & 10 deletions packages/nextjs/components/Header.tsx
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
"use client";

import React, { useCallback, useRef, useState } from "react";
import React, { useRef, useState } from "react";
// import Image from "next/image";
import Link from "next/link";
import { usePathname } from "next/navigation";
Expand Down Expand Up @@ -102,7 +102,7 @@ export const Header = () => {
// }
// };

const defaultProfilePicture = "https://ipfs.io/ipfs/QmVCvzEQHFKzAYSsou8jEJtWdFj31n2XgPpbLjbZqui4YY";
const defaultProfilePicture = "/guest-profile.png";

const profilePicture = profileInfo && profileInfo[2] ? profileInfo[2] : defaultProfilePicture;

Expand All @@ -116,10 +116,15 @@ export const Header = () => {

const pathname = usePathname();

useOutsideClick(
menuRef,
useCallback(() => setIsMenuOpen(false), []),
);
const handleMenuToggle = () => {
setIsMenuOpen(!isMenuOpen);
};

const handleMenuClose = () => {
setIsMenuOpen(false);
};

useOutsideClick(menuRef, handleMenuClose);

const { targetNetwork } = useTargetNetwork();
const isLocalNetwork = targetNetwork.id === hardhat.id;
Expand Down Expand Up @@ -160,7 +165,7 @@ export const Header = () => {

<div className="navbar-center flex-1 flex justify-center items-center">
<Link href="/" passHref>
<span className={`text-2xl font-bold hover:text-blue-600 ${pathname === "/" ? "" : ""}`}💙></span>
<span className={`text-2xl font-bold hover:text-blue-600 ${pathname === "/" ? "" : ""}`}>🐰</span>
</Link>
</div>

Expand All @@ -172,8 +177,8 @@ export const Header = () => {
{isConnected ? (
<>
<div
className="w-10 h-10 bg-white text-black rounded-full flex items-center justify-center cursor-pointer"
onClick={() => setIsMenuOpen(!isMenuOpen)}
className="w-8 h-8 bg-white text-black rounded-full flex items-center justify-center cursor-pointer"
onClick={handleMenuToggle}
style={{
backgroundImage: `url(${profilePicture})`,
backgroundSize: "cover",
Expand All @@ -195,7 +200,9 @@ export const Header = () => {

<div className="pt-2 mb-2 flex flex-row items-center justify-center gap-2">
<Link href="/myProfile" passHref>
<span className="btn btn-primary">My Profile</span>
<span className="btn btn-primary" onClick={handleMenuClose}>
My Profile
</span>
</Link>
<FaucetButton />
</div>
Expand Down
Binary file added packages/nextjs/public/guest-profile.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 1 addition & 1 deletion packages/nextjs/utils/scaffold-eth/getMetadata.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import type { Metadata } from "next";
const baseUrl = process.env.VERCEL_PROJECT_PRODUCTION_URL
? `https://${process.env.VERCEL_PROJECT_PRODUCTION_URL}`
: `http://localhost:${process.env.PORT || 3000}`;
const titleTemplate = "%s | DARTE";
const titleTemplate = "%s | SocialBunny";

export const getMetadata = ({
title,
Expand Down

0 comments on commit ca7f90d

Please sign in to comment.