Open Collective 前端

Open Collective 前端。一个由 Next.js 支持的 React 应用。「Open Collective Frontend. A React app powered by Next.js.」

Github stars Tracking Chart

Open Collective Frontend

GitHub
Crowdin
React Version
Next.JS Version

Foreword

If you see a step below that could be improved (or is outdated), please update the instructions. We rarely go through this process ourselves, so your fresh pair of eyes and your recent experience with it, makes you the best candidate to improve them for other users. Thank you!

Development

Prerequisite

  1. Make sure you have Node.js version 20.x and NPM version >=9.0.0.
  • We recommend using nvm: nvm install && nvm use.

Install

We recommend cloning the repository in a folder dedicated to opencollective projects.

git clone git@github.com:opencollective/opencollective-frontend.git opencollective/frontend
cd opencollective/frontend
npm install

Environment variables

This project requires an access to the Open Collective API.

By default, it will try to connect to the Open Collective staging API, you don't have to change anything.

In case you want to connect to the Open Collective API running locally:

  • clone, install and start opencollective-api
  • in this project, copy the following content to a .env file:
API_URL=http://localhost:3060
API_KEY=dvl-1510egmf4a23d80342403fb599qd

Start

npm run dev

Tests

To run the tests:

To update:

  • Jest snapshots: run npm run test:update
  • Translation files: run npm run langs:update
  • GraphQL schema for ESLint: run npm run graphql:update

Styleguide

We use Storybook to develop and document our React components in isolation with styled-components and styled-system.

More info: docs/styleguide.md

Localization

Translating the interface doesn't require any technical skill, you can go on
https://crowdin.com/project/opencollective and start translating right away!

We're currently looking for contributions for the following languages:

  • French
  • Spanish
  • Japanese

Want to add a new language for Open Collective? Contact us,
we'll be happy to help you to set it up!

Contributing

Code style? Commit convention? Please check our Contributing guidelines.

TL;DR: we use Prettier and ESLint, we do like great commit messages and clean Git history.

Bounties

This repo is part of the Open Collective bounty program. Get paid to contribute to Open Source! The Open Collective engineering team is small and we're always looking for new contributors to our Open Source codebases. Our Bounty program is an opportunity to solve issues that could be neglected otherwise. Contributors who fix these issues will be rewarded financially. Please see our docs for more information: https://docs.opencollective.com/help/contributing/development/bounties

Deployment

This project is currently deployed to staging and production with Heroku. To deploy, you need to be a core member of the Open Collective team.

More info: docs/deployment.md

Publishing components

To publish a frontend components update to NPM, you need to be a core member of the Open Collective team. Steps:

  1. Check the currently published version with npm view @opencollective/frontend-components version
  2. Trigger the publishing script by running npm run publish-components {NEW_VERSION}, where {NEW_VERSION} is the new version number (please follow semver).
  3. Review the changes, and confirm if everything makes sense.

To add new files or dependencies to this exported package, have a look at scripts/publish-components/config.ts.

Discussion

If you have any questions, ping us on Slack
(https://slack.opencollective.com) or on Twitter
(@opencollect).

Thanks

Thanks to Lost Pixel for providing the visual testing platform that helps us review UI changes and catch visual regressions.

Main metrics

Overview
Name With Owneropencollective/opencollective-frontend
Primary LanguageTypeScript
Program languageJavaScript (Language Count: 6)
PlatformLinux, Mac, Windows
License:MIT License
所有者活动
Created At2016-12-12 04:36:39
Pushed At2025-07-12 08:44:18
Last Commit At
Release Count229
Last Release Namev2.0.566 (Posted on 2020-03-03 13:37:33)
First Release Namev0.0.166 (Posted on 2016-10-14 16:01:07)
用户参与
Stargazers Count856
Watchers Count43
Fork Count423
Commits Count18.9k
Has Issues Enabled
Issues Count106
Issue Open Count2
Pull Requests Count9911
Pull Requests Open Count77
Pull Requests Close Count1228
项目设置
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private