Git Product home page Git Product logo

klimadao's Introduction

Summary

This repo contains 6 packages.

@klimadao/app -> app.klimadao.finance, a standalone single-page-app for protocol interactions.

@klimadao/carbon-projects -> A Sanity CMS that contains curated data for Verra projects, deployed to carbon-projects.sanity.studio, and referenced by the Carbonmark frontend and backend. NOTE: Unlike the other packages, this one is not included as an NPM workspace from the root package.json. To work with the CMS you need to run sanity install from inside the carbon-projects folder.

@klimadao/carbonmark -> The NextJS project that powers the carbonmark web application at carbonmark.com. The backend Node.js web-service and smart contracts are located in separate repositories.

@klimadao/cms -> A Sanity CMS that powers our blog, deployed to klimadao.sanity.studio. NOTE: Unlike the other packages, this one is not included as an NPM workspace from the root package.json. To work with the CMS you need to run sanity install from inside the cms folder.

@klimadao/lib -> Components and utilities that are shared between packages.

@klimadao/site -> klimadao.finance homepage, content and cms-powered pages.

Requirements

Take note, this repo utilizes newer features from Node, NPM and TypeScript 4.5.

Install dependencies

From the klimadao/ root folder, not from individual packages: npm install

Development

A set of NPM Workspace commands are provided, and can be run from the root folder.

Other scripts you should know about:

  • npm run build-all: build all workspaces.
  • npm run format-all: Format all files with prettier.
  • npm run extract-strings:dev: Extract translation files for the source language "en".

Translations

For Developers

This repo uses lingui in combination with translation.io.

We follow these rules:

  • Don't use ids, except for very long strings.
  • Extract the source translation with npm run extract-strings:dev
  • Commit source language files "en" only

For translators

Setup

  • Create an account on translation.io
  • Request access to the project atmosfearful/klimadao in the #content-translation KlimaDAO discord server

Translating

  • Log in translation.io
  • Select the approprite project klimadao-site or klimadao-app
  • Make sure you select the appropriate language in the top menu
  • Start translating!
  • Select an item to translate in the left column
  • On the bottom right you will notice the source text (in English) and the place to translate the text beneath.
  • You can prefill this by selecting an entry in the Suggestion area above.

Pledge Dashboard

Klima Infinity pledge dashboard is backed by a firebase database. Follow the following to set up your dev environment if you'd like to contribute to the project.

Setup

  • Set up a firebase account and download the service account JSON file. See here for more information.
  • Remove the line breaks on the JSON file. You can use this tool. Do not remove the /n characters from the private_key fields or the key will no longer be valid.
  • Under /site, create a .env.local file with the environment variable FIREBASE_ADMIN_CERT set to the service account JSON file with no line breaks. It should look like this.
FIREBASE_ADMIN_CERT={ "type": "service_account", "project_id": "your_database_name", "private_key_id": .... }

Diagrams

See this page in the wiki of this repo for architecture and other diagrams.

Contributing

The DAO is looking for react/typescript devs as well as experienced Solidity devs! Enjoy a flexible work schedule and work on something truly ambitious and meaningful. Monthly compensation available based on your level of experience and degree of contribution.

If you'd like to just take a ticket or fix a bug, go for it (always better to ask first, though).

If you'd like to become a regular contributor to the DAO, join the KlimaDAO discord and follow the application instructions.

📚Check out the contribution & style guide.

klimadao's People

Contributors

adklda0 avatar atmosfearful avatar ladytrekker avatar 0xaeterno avatar goatsondrugs avatar biwano avatar 0xaurelius avatar archimedescrypto avatar dependabot[bot] avatar rstycedar avatar 0xemc avatar 0xmakka avatar psparacino avatar vienio99 avatar kaxline avatar angusfretwell avatar blaltarriba avatar fishwishes avatar johncbogil avatar naiknareshh avatar borbesaur avatar brunoilponseisae avatar cujowolf avatar gord0b avatar klimaheroine avatar mok0230 avatar

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.