diff --git a/.github/workflows/starknet-contracts.yml b/.github/workflows/starknet-contracts.yml new file mode 100644 index 00000000..209ed89d --- /dev/null +++ b/.github/workflows/starknet-contracts.yml @@ -0,0 +1,26 @@ +name: Starknet Contracts + +on: [push, pull_request] + +permissions: read-all + +jobs: + check: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - uses: software-mansion/setup-scarb@v1 + - name: Check cairo format + run: scarb fmt --check + working-directory: onchain + - name: Build cairo programs + run: scarb build + working-directory: onchain + tests: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - uses: software-mansion/setup-scarb@v1 + - name: Run cairo tests + run: scarb test + working-directory: onchain diff --git a/.gitignore b/.gitignore index 6985cf1b..f8951466 100644 --- a/.gitignore +++ b/.gitignore @@ -12,3 +12,5 @@ Cargo.lock # MSVC Windows builds of rustc generate these, which store debugging information *.pdb + +**/.DS_Store \ No newline at end of file diff --git a/README.md b/README.md index 6e17503e..fbd986c8 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,36 @@ -# joyboy -Decentralized social +
+ joyboy_logo + + ***Starknet x Nostr*** + + [![Starknet Test Workflow Status](https://github.com/keep-starknet-strange/joyboy/actions/workflows/starknet-contracts.yml/badge.svg)](https://github.com/keep-starknet-strange/joyboy/actions/workflows/starknet-contracts.yml) + + [![Exploration_Team](https://img.shields.io/badge/Exploration_Team-29296E.svg?&style=for-the-badge&logo=data:image/svg%2bxml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJhIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxODEgMTgxIj48ZGVmcz48c3R5bGU+LmJ7ZmlsbDojZmZmO308L3N0eWxlPjwvZGVmcz48cGF0aCBjbGFzcz0iYiIgZD0iTTE3Ni43Niw4OC4xOGwtMzYtMzcuNDNjLTEuMzMtMS40OC0zLjQxLTIuMDQtNS4zMS0xLjQybC0xMC42MiwyLjk4LTEyLjk1LDMuNjNoLjc4YzUuMTQtNC41Nyw5LjktOS41NSwxNC4yNS0xNC44OSwxLjY4LTEuNjgsMS44MS0yLjcyLDAtNC4yN0w5Mi40NSwuNzZxLTEuOTQtMS4wNC00LjAxLC4xM2MtMTIuMDQsMTIuNDMtMjMuODMsMjQuNzQtMzYsMzcuNjktMS4yLDEuNDUtMS41LDMuNDQtLjc4LDUuMThsNC4yNywxNi41OGMwLDIuNzIsMS40Miw1LjU3LDIuMDcsOC4yOS00LjczLTUuNjEtOS43NC0xMC45Ny0xNS4wMi0xNi4wNi0xLjY4LTEuODEtMi41OS0xLjgxLTQuNCwwTDQuMzksODguMDVjLTEuNjgsMi4zMy0xLjgxLDIuMzMsMCw0LjUzbDM1Ljg3LDM3LjNjMS4zNiwxLjUzLDMuNSwyLjEsNS40NCwxLjQybDExLjQtMy4xMSwxMi45NS0zLjYzdi45MWMtNS4yOSw0LjE3LTEwLjIyLDguNzYtMTQuNzYsMTMuNzNxLTMuNjMsMi45OC0uNzgsNS4zMWwzMy40MSwzNC44NGMyLjIsMi4yLDIuOTgsMi4yLDUuMTgsMGwzNS40OC0zNy4xN2MxLjU5LTEuMzgsMi4xNi0zLjYsMS40Mi01LjU3LTEuNjgtNi4wOS0zLjI0LTEyLjMtNC43OS0xOC4zOS0uNzQtMi4yNy0xLjIyLTQuNjItMS40Mi02Ljk5LDQuMyw1LjkzLDkuMDcsMTEuNTIsMTQuMjUsMTYuNzEsMS42OCwxLjY4LDIuNzIsMS42OCw0LjQsMGwzNC4zMi0zNS43NHExLjU1LTEuODEsMC00LjAxWm0tNzIuMjYsMTUuMTVjLTMuMTEtLjc4LTYuMDktMS41NS05LjE5LTIuNTktMS43OC0uMzQtMy42MSwuMy00Ljc5LDEuNjhsLTEyLjk1LDEzLjg2Yy0uNzYsLjg1LTEuNDUsMS43Ni0yLjA3LDIuNzJoLS42NWMxLjMtNS4zMSwyLjcyLTEwLjYyLDQuMDEtMTUuOGwxLjY4LTYuNzNjLjg0LTIuMTgsLjE1LTQuNjUtMS42OC02LjA5bC0xMi45NS0xNC4xMmMtLjY0LS40NS0xLjE0LTEuMDgtMS40Mi0xLjgxbDE5LjA0LDUuMTgsMi41OSwuNzhjMi4wNCwuNzYsNC4zMywuMTQsNS43LTEuNTVsMTIuOTUtMTQuMzhzLjc4LTEuMDQsMS42OC0xLjE3Yy0xLjgxLDYuNi0yLjk4LDE0LjEyLTUuNDQsMjAuNDYtMS4wOCwyLjk2LS4wOCw2LjI4LDIuNDYsOC4xNiw0LjI3LDQuMTQsOC4yOSw4LjU1LDEyLjk1LDEyLjk1LDAsMCwxLjMsLjkxLDEuNDIsMi4wN2wtMTMuMzQtMy42M1oiLz48L3N2Zz4=)](https://github.com/keep-starknet-strange) + +
+ +## Overview + +Decentralized social built with Nostr and powered by Starknet account abstraction. + +## Build + +To build the project, run: + +```bash +scarb build +``` + +## Test + +To test the project, run: + +```bash +snforge test +``` + +## Resources + +- [Starknet](https://starknet.io/) +- [Nostr](https://www.nostr.com/) +- [Nostr Implementation Possibilities](https://github.com/nostr-protocol/nips) diff --git a/onchain/.gitignore b/onchain/.gitignore new file mode 100644 index 00000000..eb5a316c --- /dev/null +++ b/onchain/.gitignore @@ -0,0 +1 @@ +target diff --git a/onchain/Scarb.lock b/onchain/Scarb.lock new file mode 100644 index 00000000..9edcf8be --- /dev/null +++ b/onchain/Scarb.lock @@ -0,0 +1,6 @@ +# Code generated by scarb DO NOT EDIT. +version = 1 + +[[package]] +name = "joyboy" +version = "0.1.0" diff --git a/onchain/Scarb.toml b/onchain/Scarb.toml new file mode 100644 index 00000000..2a838a36 --- /dev/null +++ b/onchain/Scarb.toml @@ -0,0 +1,8 @@ +[package] +name = "joyboy" +version = "0.1.0" +edition = "2023_11" + +# See more keys and their definitions at https://docs.swmansion.com/scarb/docs/reference/manifest.html + +[dependencies] diff --git a/onchain/src/lib.cairo b/onchain/src/lib.cairo new file mode 100644 index 00000000..d183ea18 --- /dev/null +++ b/onchain/src/lib.cairo @@ -0,0 +1,17 @@ +fn main() -> u32 { + 0 +} + +fn say_hi() -> u32 { + 0 +} + +#[cfg(test)] +mod tests { + use super::say_hi; + + #[test] + fn it_works() { + assert(say_hi() == 0, 'it works!'); + } +} diff --git a/resources/logo/joyboy.png b/resources/logo/joyboy.png new file mode 100644 index 00000000..557690ee Binary files /dev/null and b/resources/logo/joyboy.png differ