(sekai, 世界, meaning: world)

Per request by Devpost team, I am listing Rapyd APIs that I used in this project:

  • /user endpoint
    • This endpoint is called manually to setup five initial users and their wallets to save development time. It should be integrated as part of onboarding workflow once a new user is verified (not implemented yet).
  • /user/wallet_id endpoint
    • This is used to get a logged-in user's state (itsuka's in the demo) alongside their wallet when the app is initialized, or when switching to another user (via admin settings app).
  • /user/wallet_id/transactions endpoint
    • This is used in the same flow as above, specifically in enriching user's wallet information with recent transactions. In addition to that, the transactions are refreshed when a user sent a gift to another user (for example, please check the demo video)
  • /account/transfer endpoint
    • This is endpoint is triggered when someone click a send gift button to another user in any part of the app, e.g. Typography app's gallery view.

APIs that I do not use, but planned to in the next iteration of the project:

  • /account/transfer/response endpoint to set a pending status to closed for transactions that are initiated by users
  • /account/deposit to add funds to the wallet
  • payouts to transfer funds to users' bank account

Inspiration

As someone who is new to web design/development, I struggled to find a holistic learning resource that is carefully curated (i.e. not full of beginner-level content). Moreover, I found learning resources and tools to be spread all over the web. To name a few: forums, blogs, courses, newsletters, SNS, chat apps, (non-indexable/low-ranked) websites, and so on. As a result, I ended up with 100+ bookmarks and multiple accounts and apps, and I have no way to access this information easily.

From what I gathered, the most common solution that developers came up with is some kind of "awesome list". Similarly, some designers and developers also like to share resources via note-taking tools such as Notion. There are a few problem with this:

  1. it easily becomes an unmaintainable long-list of random links (not to mention repetitive/outdated resources and link rot)
  2. nobody is an expert at everything, and thus, problem 1) tend to occur

The closest solution I found is one from React.js community. However, it is not progressing beyond its initial traction, although the idea of relying on the community (experts) is right on track, in my opinion. What's missing is the incentive to contribute, which is why I thought of incorporating a marketplace as part of the solution.

What it does

sekai-os aims to be the repertoire of creative tools and resources for makers such as products, designers, and developers on the web platform. It borrows a metaphor from an operating system where it can manage resources and provide common services to its users. It consists of several apps (i.e. a super-app) that are grouped based on users' workflow:

  • Asset: Typeface, Icon, Image, Prompt, Audio, Video, 3D, Motion
    • Use case: designer mode
  • Reminder, Timer, Note, Docs, Playground, Q&A, Coworking Space
    • Use case: developer/focus mode
  • Inspiration: Github, Instagram, Dribbble, Behance, Pinterest, Figma
    • Use case: exploration mode
  • Feed: Forum, Twitter, Reddit, Blog, Podcast, YouTube, Vimeo, TikTok
    • Use case: reader/learner mode
  • Personal: Message, Contact, Wallet, App Store, Settings

(and many more...)

Summary of features:

  • all content is freely accessible
    • anyone can post a new content, add a public comment, or "like" a content to signal its quality
    • any new content is curated by experts/moderators to keep its quality
  • a unified bookmark management (down to a specific content) across multiple medium
  • a marketplace:
    • send a monetary gift to contributors or buy them a gift from their wishlist (as a way to thank them for a good submission or a comprehensive answer on Q&A app)
    • post time-sensitive bounties to get helps quickly
    • kickstart/crowdfund a learning resource (with multiple group payments)

How we built it

The web frontend is a statically-generated website built on top of Next.js and it is deployed to Cloudflare Pages. The backend API, which is mostly used as a proxy to Rapyd API is built on Edge Runtime and deployed to Cloudflare Workers.

Challenges we ran into

The scope of the project can easily span to weeks or even months because I started out with ~35 apps from the beginning, not one. So the challenging part was to scope features in a way that can convey its value/potential.

Accomplishments that we're proud of

none

What we learned

What's next for sekai-os

Implement "Summary of features" above. In addition to that,

  1. implement social features such as comments and messages
  2. personalize content based on interaction and users' preferences (e.g. followed topics)
  3. encourage creation on the platform through content forking
  4. wallet improvement: support visualization to bring out an insight to valued contributions

Built With

  • cf-pages
  • cf-workers
  • next.js
Share this project:

Updates