GithubHelp home page GithubHelp logo

bp-mike / project-zoe-server Goto Github PK

View Code? Open in Web Editor NEW

This project forked from kanzucodefoundation/project-zoe-server

0.0 0.0 0.0 2.07 MB

The Project Zoe church relationship management system (RMS) server

Shell 0.25% JavaScript 0.21% TypeScript 99.42% HTML 0.11% Procfile 0.01%

project-zoe-server's Introduction

About Project Zoe

Project Zoe is a church management centered on what's at the heart of all ministry - people. The platform simplifies the process of managing people and their relationships between each other and the church, keeping track of data across the organization and creates a foundation for adding new features that are specific to your church.

The Tech

This repo holds the Project Zoe church relationship management system (RMS) server.

Project Setup / Installation ๐Ÿš€

  1. Clone the repository:

    git clone https://github.com/kanzucodefoundation/project-zoe-server.git

  2. Checkout to the Develop branch

    git checkout develop

  3. Temporarily change binaryTargets = ["debian-openssl-1.1.x"] to binaryTargets = ["native"] in prisma/schema.prisma

  4. Install dependencies with npm version 6.14.5:

    npx [email protected] install

  5. Create a .env file based on the .env.sample.

    Set these environment variables in the env file as follows

    APP_ENVIRONMENT=local - If you are running the app locally.

    DB_USERNAME=<your-local-postgres-db-username>

    DB_PASSWORD=<your-local-postgres-db-password>

    DB_DATABASE=projectzoe-db

  6. Go ahead and manually create an new postgreSQL database called: projectzoe-db

  7. Finally, spin up the project with:

    npm run start:dev

  8. Revert the changes in prisma/schema.prisma. Change binaryTargets = ["native"] to binaryTargets = ["debian-openssl-1.1.x"]

  9. Create and seed data for a new tenant by running:

    npm run command create-tenant demo

This will create a tenant named demo. You can login to that tenant using the credentials found in src/seed/data/users.ts

Please Note:

Installation errors

  1. sh: eslint: command not found

Solution: Run npm install -g eslint then eslint --init If that fails, other alternatives here eslint/eslint#10192

Commitizen friendly

Commitizen friendly

Github Action

This repo is automatically deployed to the prod server using github actions. We create an .env file during the deployment process. Rather than add each environment variable to the file one by one, we copied a complete .env file and encrypted it using base64. We use the command:

openssl base64 -A -in .env -out .env.prod.encrypted

We then get the contents of .env.prod.encrypted and add them as a Github Action variable called PROD_ENV_FILE

project-zoe-server's People

Contributors

kakoma avatar ekastimo avatar dhotim avatar humphreyokoth avatar kisakyekenneth avatar mariamnaiga avatar dependabot[bot] avatar androidcode33 avatar a23w10 avatar lytes20 avatar joanita09 avatar roland-sankara avatar bp-mike 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.