All Projects → joincivil → Civil

joincivil / Civil

The Main Monorepo and entry-point of all things Civil

Programming Languages

typescript
32286 projects
solidity
1140 projects

Projects that are alternatives of or similar to Civil

Study Blockchain Referrence
区块链学习路上的一些资料作为参考
Stars: ✭ 172 (-4.97%)
Mutual labels:  ethereum
Ethers.js
Complete Ethereum library and wallet implementation in JavaScript.
Stars: ✭ 3,605 (+1891.71%)
Mutual labels:  ethereum
Go Ethereum Hdwallet
Ethereum HD Wallet derivations in Go (golang)
Stars: ✭ 178 (-1.66%)
Mutual labels:  ethereum
Eth Vue
Featured in Awesome Vue [https://github.com/vuejs/awesome-vue], a curated list maintained by vuejs of awesome things related to the Vue.js framework, and Awesome List [https://awesomelists.net/150-Vue.js/3863-Open+Source/18749-DOkwufulueze-eth-vue], this Truffle Box provides everything you need to quickly build Ethereum dApps that have authentication features with vue, including configuration for easy deployment to the Ropsten Network. It's also Gravatar-enabled. Connecting to a running Ganache blockchain network from Truffle is also possible -- for fast development and testing purposes. Built on Truffle 5 and Vue 3, eth-vue uses vuex for state management, vuex-persist for local storage of app state, and vue-router for routing. Authentication functionalities are handled by Smart Contracts running on the Ethereum blockchain.
Stars: ✭ 171 (-5.52%)
Mutual labels:  ethereum
Eevm
Enclave ready EVM (eEVM) is an open-source, standalone, embeddable, C++ implementation of the Ethereum Virtual Machine.
Stars: ✭ 175 (-3.31%)
Mutual labels:  ethereum
Pando
A distributed remote protocol for git based on IPFS, ethereum and aragonOS
Stars: ✭ 177 (-2.21%)
Mutual labels:  ethereum
Ethereum Php
A PHP interface to the Ethereum API
Stars: ✭ 171 (-5.52%)
Mutual labels:  ethereum
Unstoppable Wallet Ios
A secure and decentralized Bitcoin and other cryptocurrency wallet for iPhone. Supports Bitcoin, Ethereum, EOS, Binance Chain, Bitcoin Cash, DASH, ...
Stars: ✭ 180 (-0.55%)
Mutual labels:  ethereum
Semaphore
A privacy gadget for Ethereum
Stars: ✭ 176 (-2.76%)
Mutual labels:  ethereum
Universaltoken
Implementation of Universal Token for Assets and Payments
Stars: ✭ 176 (-2.76%)
Mutual labels:  ethereum
React Auth Box
Truffle, Webpack, React, Redux boilerplate with routing and authentication via a smart contract.
Stars: ✭ 172 (-4.97%)
Mutual labels:  ethereum
Angular Truffle Starter Dapp
Angular CLI + Truffle Starter Dapp; write, compile & deploy smart contracts on Ethereum blockchains
Stars: ✭ 174 (-3.87%)
Mutual labels:  ethereum
Ethereum Graph Debugger
Ethereum solidity graph plain debugger. To have the whole picture when debugging.
Stars: ✭ 177 (-2.21%)
Mutual labels:  ethereum
Trust Ray
☁️ API for the Trust Wallet. Project no longer supported and current version used as source of transactions and address tokens in Blockatlas https://github.com/trustwallet/blockatlas/blob/master/config.yml#L64
Stars: ✭ 172 (-4.97%)
Mutual labels:  ethereum
Awesome Decentralized Papers
Influential papers in decentralized systems (cryptocurrencies, contracts, consensus, etc.)
Stars: ✭ 179 (-1.1%)
Mutual labels:  ethereum
Umbrella android
Open source Android, iOS and Web app for learning about and managing digital and physical security. From how to send a secure message to dealing with a kidnap. Umbrella has best practice guides in over 40 topics in multiple languages. Used daily by people working in high risk countries - journalists, activists, diplomats, business travelers etc.
Stars: ✭ 171 (-5.52%)
Mutual labels:  journalism
Securify
[DEPRECATED] Security Scanner for Ethereum Smart Contracts
Stars: ✭ 177 (-2.21%)
Mutual labels:  ethereum
Dagger.js
Simple library to connect with dagger server and manage subscriptions for Ethereum Blockchain.
Stars: ✭ 179 (-1.1%)
Mutual labels:  ethereum
Eth Utils
Utility functions for working with ethereum related codebases.
Stars: ✭ 179 (-1.1%)
Mutual labels:  ethereum
Cointop
A fast and lightweight interactive terminal based UI application for tracking cryptocurrencies 🚀
Stars: ✭ 2,912 (+1508.84%)
Mutual labels:  ethereum

Civil Logo


Civil is a decentralized and censorship resistant ecosystem for online Journalism. Read more in our whitepaper.

WIP Civil DApp - Read Documentation and Interact with Contracts and tools at our DApp, hosted for your convenience. This DApp and associated contracts are a Work In Progress and contracts are deployed on the Rinkeby testnet. If you would like some test CVL to try out the DApp, please ask in our Gitter room and we can send you some.

This repository contains all of the open-source Civil tools and packages written in Typescript. We hope that those tools will be useful for creation of interesting applications on top of the ecosystem as well as be useful in any project in the Ethereum space.

Coverage Status CircleCI Gitter chat Telegram chat

Most of the packages require additional typings for external dependencies. You can include those by prepending @joincivil/typescript-typings package to your typeRoots config.

"typeRoots": ["node_modules/@joincivil/typescript-typings/types", "node_modules/@types"],

Published packages

Package NPM Description
@joincivil/core npm link JS library for interacting with Civil ecosystem
@joincivil/tslint-rules npm link Linting rules for Civil's Typescript packages
@joincivil/utils npm link Utilities shared between Civil projects used during runtime
@joincivil/typescript-types npm link Types used in multiple Civil packages
@joincivil/typescript-typings npm link Typescript type roots for external projects and internal modifications
@joincivil/ethapi npm link An abstraction of Ethereum communication

Private packages

Package Description
@joincivil/contracts Smart-contracts needed for the Civil's protocol
@joincivil/dapp DApp for interacting with the Civil contracts
@joincivil/dev-utils Utilities needed for the proper working of the mono-repo packages, builds and tests
@joincivil/debug-ui WIP: Minimal website to monitor, observe and debug the protocol and all the utilities and packages of the ecosystem

Contributing

Civil's ecosystem is free and open-source, we're all part of it and you're encouraged to be a part of it with us. Best place to start hacking would be to use the @joincivil/core and build some application on top of the protocol.

If you're itching to delve deeper inside, help wanted and good first issue labels are good places to get started and learn the architecture.

Dev Setup

Install dependencies

This project is using yarn workspaces. They require yarn >= 1.0 to work properly.

Set up all dependencies:

from the root directory:

yarn install

Build

Build all packages in the monorepo:

yarn build

Turn on file-watch mode and rebuild most of the files on change:

yarn watch

Lint

Check all packages for linting errors:

yarn lint

Testing

Tests in Civil's ecosystem require the use of Ganache, Ethereum's development test network, spin it in a seperate terminal:

yarn ganache

Finally run all the tests in the main repository:

yarn test

Easy Setup with front-end

We've added a helper command to assist you if you want to develop using the front-end and a local ganache. Just 3 simple commands.

First, however, you may want to add your own address (e.g. MetaMask account) to our config file so that you are distributed tokens/ETH properly and change the Appellate and GovernmentController addresses. This is especially useful if your MetaMask account is not the same as one of you ganache accounts (all ganache accounts are given tokens by default). Config file can be found at packages/contracts/conf/config.json.

From the root directory:

yarn ganache

Once that is running, in another terminal, from the root directory:

yarn preparelocally

After that completes:

cd packages/dapp
yarn start

Now you have the dapp front-end running at localhost:3000. Make sure to select localhost 8545 in metamask to interact with the dapp.

Run commands in all packages

Civil's monorepo is using lerna to easily manage the monorepo structure. Two helper yarn scripts are provided for your convenience.

To run the supported lerna version:

yarn lerna

To run scripts in all packages in the monorepo:

yarn lerna:run

Cleaning the state

To refresh the repository state as much as possible run:

yarn clean && yarn lerna clean --yes && rm -r node_modules && yarn install

🐙 was here.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].