Installing Giveth.io for Local development
This guide will document the steps to set up and run Giveth.io locally for the purposes of development.The setup process was documented using Ubuntu 20.04 LTS.
You'll need a couple prerequisites to get started.
- Redis
- Postgres
- Bash CLI
- Gatsby CLI
- Configure NodeJS
- Your Favourite Code Editor (VScode for linting presets)
Install impact-graph from GitHub
In order to develop locally you need to clone the backend server as well. We are using https://github.com/Giveth/impact-graph for this.
- via SSH on the CLI:
git clone git@github.com:Giveth/impact-graph.git
cd impact-graph
npm i
cp .env.example .env
Create a Database and User in Postgres using psql
Follow this tutorial on PSQL to setup your username and create the database. https://medium.com/coding-blocks/creating-user-database-and-adding-access-on-postgresql-8bfcd2f4a91e)
TL;DR
sudo -u postgres psql
postgres=# create database <databaseName>;
postgres=# create user <userName> with encrypted password '<passwordHere>';
postgres=# grant all privileges on database <databaseName> to <userName>;
Clone and Install the Frontend
Head on over to https://github.com/Giveth/giveth-2 and clone the repo.
- via the CLI:
git clone git@github.com:Giveth/giveth-2.git
cd giveth-2
npm i
Get the Environment Variables
In order to run the local build for Giveth.io you'll need to ask for the environment variables. Head on over to our Contributors Discord say Hi and get in touch with one of the developers.
Launch the Development Server and Environment
Start up the impact-graph
backend server and redis.
- Run redis by using the command
redis-server
- From the impact-graph repo start with
npm start
To take advantage of linting presets, please use VSCODE:
- Select File -> Open Workspace
- Navigate into the giveth-2 directory
- Open the workspace file
giveth2-full-stack.code-workspace
- Install recommended extensions (Prettier and StandardJS plugins)
Then fire up the local development server.
gatsby develop
Start Editing!
Open up the giveth2 repo on your code editor.
Giveth.io is now running locally at http://localhost:8000
!
You can also expiremnt with querying your data via GraphQL - you'll find it at this link here - http://localhost:8000/___graphql
Learn more about using this tool in the Gatsby tutorial.
Save your changes and the browser will update in real time!
Current Build Statuses