flipcash2-server

module
v1.39.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 13, 2026 License: MIT

README

Flipcash Server

Release PkgGoDev Tests GitHub License

Flipcash server monolith containing the gRPC/web services and workers that power Flipcash.

What is Flipcash?

Flipcash is a self-custodial mobile wallet app leveraging the Open Code Protocol to provide a seamless multi-currency payments experience.

Quick Start

  1. Install Go. See the official documentation.

  2. Download the source code.

git clone git@github.com:code-payments/flipcash2-server.git
  1. Run the test suite:
make test

Directories

Path Synopsis
Package balance provides utilities for fetching a Flipcash user's balance from the OCP server.
Package balance provides utilities for fetching a Flipcash user's balance from the OCP server.
s3
Package s3 implements blob.ObjectStorage on top of Amazon S3 for storage and a CloudFront CDN for delivery.
Package s3 implements blob.ObjectStorage on top of Amazon S3 for storage and a CloudFront CDN for delivery.
cdp
Package cdp holds what every Coinbase Developer Platform (CDP) client shares: the bearer JWT that authenticates one REST request, and the API key that signs it.
Package cdp holds what every Coinbase Developer Platform (CDP) client shares: the bearer JWT that authenticates one REST request, and the API key that signs it.
customers
Package customers is a client for Coinbase Developer Platform's Customers API (https://docs.cdp.coinbase.com/customers-kyc/overview), through which Coinbase verifies the identity of a Flipcash user (KYC) so they can later cash out to a bank account.
Package customers is a client for Coinbase Developer Platform's Customers API (https://docs.cdp.coinbase.com/customers-kyc/overview), through which Coinbase verifies the identity of a Flipcash user (KYC) so they can later cash out to a bank account.
customers/customerstest
Package customerstest is an in-process fake of Coinbase's Customers API for tests: an httptest server speaking the same REST API as Coinbase, so tests drive the real customers.Client against it rather than a mock.
Package customerstest is an in-process fake of Coinbase's Customers API for tests: an httptest server speaking the same REST API as Coinbase, so tests drive the real customers.Client against it rather than a mock.
Package cluster provides a generic substrate for consistent routing, exclusive ownership, and stream-interest tracking of namespaced keys across a fleet of servers.
Package cluster provides a generic substrate for consistent routing, exclusive ownership, and stream-interest tracking of namespaced keys across a fleet of servers.
internalrpc
Package internalrpc is the server-to-server RPC plumbing for the fleet: a per-peer connection pool, API-key authentication for internal-only endpoints, and helpers for forwarding a request to the member that owns its key.
Package internalrpc is the server-to-server RPC plumbing for the fleet: a per-peer connection pool, API-key authentication for internal-only endpoints, and helpers for forwarding a request to the member that owns its key.
Package community serves what Flipcash shows about the community around a currency launched on Flipcash (see communitypb.CommunityMetadata): one community per launched currency, keyed by its mint.
Package community serves what Flipcash shows about the community around a currency launched on Flipcash (see communitypb.CommunityMetadata): one community per launched currency, keyed by its mint.
Package flipcashteam is what the server needs to act as the Flipcash team: the handle the team account holds, which account that is, and sending messages from it.
Package flipcashteam is what the server needs to act as the Flipcash team: the handle the team account holds, which account that is, and sending messages from it.
iap
kyc
coinbase
Package coinbase verifies a Flipcash user's identity (KYC) with Coinbase's Customers API, for the features Flipcash builds on Coinbase, starting with cashing out to the user's own bank account.
Package coinbase verifies a Flipcash user's identity (KYC) with Coinbase's Customers API, for the features Flipcash builds on Coinbase, starting with cashing out to the user's own bank account.
Package paymentrequest implements payment requests (see paymentrequestpb.PaymentRequestServer): a creator asking others for money.
Package paymentrequest implements payment requests (see paymentrequestpb.PaymentRequestServer): a creator asking others for money.
Package poll implements polls in group chats (see pollpb.PollServer).
Package poll implements polls in group chats (see pollpb.PollServer).
Package redact produces placeholder text for a viewer who may see that a message exists but not what it says: a non-member browsing a group whose listener rules they do not satisfy.
Package redact produces placeholder text for a viewer who may see that a message exists but not what it says: a non-member browsing a group whose listener rules they do not satisfy.
Package reporting implements the Reporting gRPC service, which lets users flag a user, chat, message or blob for review.
Package reporting implements the Reporting gRPC service, which lets users flag a user, chat, message or blob for review.
social
x

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL