Coder Social home page Coder Social logo

opensats / website Goto Github PK

View Code? Open in Web Editor NEW
26.0 10.0 26.0 23.14 MB

Live at opensats.org

Home Page: https://opensats.org

License: MIT License

TypeScript 29.58% CSS 1.27% JavaScript 2.85% Shell 0.12% MDX 66.04% TeX 0.13%
bitcoin floss non-profit nostr open-source

website's Introduction

OpenSats.org

This is the codebase behind OpenSats.org.

Getting started

The website is a simple Next.js project bootstrapped with create-next-app. To run it locally you'll need Node.js 14.6.0 or newer. After cloning repository try following 3 commands in terminal:

  • npm run dev for running a development instance with hot-reloading, file watching and task re-running
  • npm run build for compiling the project.
  • npm start for starting your app in production mode

If you start the website (either in development or production mode), you can access it on http://localhost:3000

Codebase organization

  • docs/projects hosts Markdown files for all the projects listed on the OpenSats website
  • utils folder contains utility functions; md.ts is used for rending markdown content into pages using /pages/projects/[slug].tsx
  • the rest of the folders are standard for Next.js
    • pages contains files that correspond to individual pages on the website
    • components has common UI components used across the project
  • all calls that work with secrets (talking to BTCPay and Stripe) are isolated in server side APIs
    • take a look at pages/api/btcpay.ts as an example

Contributing to the project

PRs are welcome! Fork the repository on your GitHub account, push changes to new feature branch and then open a new pull request on github.com/OpenSats/website/pulls.

Thanks for supporting OpenSats!

website's People

Contributors

abitcoinperson avatar arvin21m avatar bayernatoor avatar bolttouring avatar dergigi avatar dtonon avatar enegnei avatar flawedworld avatar futurepaul avatar gbks avatar gooddaisy avatar h4rpr avatar jamesob avatar jonatack avatar kukks avatar lucasmogu avatar modl21 avatar moteanup24 avatar notmandatory avatar rockstardev avatar satoshisentinel avatar suhailsaqan avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

website's Issues

Allow sats as a currency option

There was a bounty denominated in sats for some btcpayserver feature, and I directed them to pay on opensats but the currency was only in USD. While btcpay can handle multi-currency without issues, your internal reporting might go nuts?

Fix various broken links

Spotted by @Arvin21M


Twitter Link broken for project Bitcoin Core:

Matt Odell bio page:

Blog Article Broken Links on Build Preview:

DRY up forms

A lot of the website code can be DRY'd up, e.g. most of the form submission stuff is essentially the same code in three places. Refactoring this so that we don't repeat ourselves too often would be great.

Sanity check for applicant email format

It seems like anything goes in the email field as of now.

Would be good to make sure that a simple typo doesn't remove what might be our online line of communication for some applicants.

Bug - No BTCPay Invoice for "Donate To General Fund"

Just tried to send some sats to the general fund but the website did not propagate a BTCPay Invoice. Please investigate.

When selecting individual projects there is no issue propagating a BTCPay Invoice.

Thanks! ✌️

Add Visual Indicator: Project cards for bitcoin/nostr/lightning

This is about the Listed Project cards.

We need a way to easily indicate which project is related to which protocol (Bitcoin, Nostr, or Lightning).

Per @dergigi

...what I'm thinking is a small colored bottom border or something for nostr/bitcoin/lightning (purple, orange, yellow) - or something that makes it obvious what kind of category that project is.

Other options:

  1. Small logo/icon of a Bitcoin B (orange), Lightning bolt (yellow), or Ostrich head for nostr (purple) next to the Project/Company name or "by line".
  2. A glowing border around the entire card for each project, with the related protocol color at ~50% transparency.
  3. The donate button for each project card is a solid color of the associated protocol, or a glowing outline around the donate button only.

Listed Project Cards (Dark Mode)

image

Listed Projects Cards (Light Mode)

image

Side note/thought:

  • Some of the donate buttons are uneven with one another due to one project have a longer description than the other. I propose anchoring the donate button and details link to the bottom of each card so its static.
    image

Let me know how I can help.

Thank you.

Lightning misconfiguration on btcpay

I believe there may be some misconfiguration on the lightning settings on the btcpayserver store as amountless invoices are not showing lightning as an option.

Expected settingsL
image

Additionally, you should configure the minimum threshold for onchain so that users arent prompted to pay <few thousand sats on chain which the fees would eat up

Reduce TBC logo size

TBC logo should be a tad bit smaller to avoid circular cuttoff on /about -> supporters page image

Apply button has no loading state

The button that sends of an application via opensats.org/apply has no "loading" state, i.e. it doesn't get disabled after a single click. That's annoying and can be confusing. Further, it allows for duplicate submissions, which is bad.

Refresh bug with profiles on opensats.org/about

@dergigi

OpenSats website>About page:

There is a bug when the page is refreshed; when a members profile is clicked after refresh, often another members profile opens. Seems to only be happening when refreshing. Recorded screen of the issue to help you duplicate the bug on your end. Click here to watch the recording. Let me know how I can help.

Thank you.

[Donation Form] "deductable" vs "deductible"

"deductible" is the common spelling in American English. "deductable" is correct, but more commonly used in Commonwealth countries, like Australia. Since the tax deduction applies only to US Federal Income Tax, "deductible" is more appropriate.

image

minor HTML issue

On: https://opensats.org/faq

The Answer to Q: "How much of my donation goes towards individuals and projects supported by Open Sats?" ends in "(thanks to our generous donors) <—- link donor page"

Using Chrome Version 104.0.5112.81

chrome_OpenSats_-_Google_Chrome_FXSVy5hB9d

Improve Project View: donate button, sats/$ raised, # of donations.

This is about improving the individual project pages to be more visually appealing.

In this example, we look at Sparrow Wallet https://opensats.org/projects/sparrow_wallet.

The following are screenshots of the Sparrow project pages on the OpenSats site through various dimensions/devices:

Sparrow Project Page (iPad Air)
Sparrow Project Page (iPhone 12 Pro)
Sparrow Project Page (Laptop)

Consider moving the Donate button to the top of the project pages for better visibility. Ideally, position it below the logo and contact options, capitalizing on user focus and immediate interaction potential. This could enhance donation likelihood compared to its current placement at the page's end.

The following GIF (in laptop view) is from the Sparrow Wallet home page. They place the donate button right under their online handles on the left, but notice how they have a separate menu on the left, whereby the content on the left doesn't scroll, although the content on the right is scrollable. We could borrow from this if it makes sense. Side Note: Sadly, when you go to the sparrow wallet website to view that same page on a mobile device, the donate button disappears.

Sparrow Homepage Example (GIF)

Regarding the data on number of donors, how many sats and USD donated:
This can go at the bottom of the description/page. IMHO, when I see the data, I immediately think if this is a lifetime total, or the total year-to-date. In addition, I also find myself thinking if I should donate to Sparrow because they have a higher amount and seem popular, or if I should seek out a less popular project who has not been funded as much and therefore may need more help. If the latter, then I would have to click around and spend much more time on the website, which could lead to me getting frustrated and leaving the site for another time. This is me just thinking out loud.

In the future, if we end up having a page on the site that deals with these and other types of financial data/metrics, then maybe the donation stats per project be removed from the individual project pages, and placed in that respective financial data/metrics page.

If the team feels it should be left in, the following is not an ideal example, perhaps something like the following:

Funds Raised Example

Please let me know how I can help.

Thank you.

Bitcoin transfer

How I received my pay through y'all without paying for the process fee

Prefix generic titles by individual

image

Titles like "Core maintenance" and "Core review & testing" could be mistaken for generic efforts across multiple people rather than for specific individuals. I think titles like these should be prefixed by "[person's name]: " to avoid confusion.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.