Code Monkey home page Code Monkey logo

huawillian / emsi Goto Github PK

View Code? Open in Web Editor NEW
1.0 2.0 1.0 59.9 MB

Evangelical Mission & Seminary International Website - Spreading the gospel to the chinese community - Find an EMSI church near you!

Home Page: https://emsi-e77d5.firebaseapp.com/

License: MIT License

HTML 98.74% CSS 0.91% JavaScript 0.34%
polymer2 polymer polymerfire firebase firebase-realtime-database firebase-hosting firebase-authentication component-driven bower web-app

emsi's Introduction

Important Notice

Development for this project has now moved to a new and official repository.

Please check out https://github.com/EMSI-Tech/emsi-website for any updates.

Thanks for your support!


EMSI Website

Evangelical Mission and Seminary International website created using Google's Polymer Web Component Library and Google's Firebase Database, Authentication, and Hosting services

Active Deployed URL

Experimental Site: https://emsi-e77d5.firebaseapp.com/

Released Site: TBD

Description

Spreading the gospel to the chinese community

Headquartered in Towaco, New Jersey U.S.A (36 Alpine Road, Towaco, NJ 07082). EMSI was founded by Pastor Moses Yang. EMSI has branches in 4 continents: Europe, North America, Asia, and Africa. EMSI is made up of the following organizations - Evangelical Bible Institute, Christian Evangelical Mission, and Christian Evangelical Overseas Outreach.

CEM has 9 churches in the eastern United States, 5 in the western United States, 4 in Belgium, 1 in France, 12 in the Netherlands, 4 in Portugal, 2 in Italy, 1 in Hungary, 3 in South Africa, 3 in Japan, 1 in Taipei Taiwan, and 8 in Spain for a total of 53 churches. The primary mission is to establish churches, shepherd the flock, and to plant new churches.

To reach out to people all over the world we have create this amazing website.

This website will be responsible for:

  1. Displaying EMSI related data on the web and mobile devices
  2. Finding all nearby churches via Google Maps API
  3. Administering church details and users by delegating admin roles to different users using Firebase Authentication Services and Database Validation Rules and an intuitive dashboard
  4. Multi-lingual content, primarily in English and Chinese
  5. Seminary course management for international Seminary Students
  6. Online Bookstore including EMSI publication

The website is completely serveless development, relying on Google's Cloud Platform and services. The Firebase database is protectect via Validation rules. Users are securly authenticated through Firebase authentication's Email / Password module. Front end development product documents are extremely modular and intuitive by leveraging Google's Polymer Web Component library. Component files are separated into custom, page, or util components, styled by external css files in styles folder and imported as dom modules. The end result is a well optimized and mobile web app where people can immediately find a nearby church.

Getting Started

  1. Download or Clone to repository
  2. Install Node.js https://nodejs.org/en/
  3. Install npm https://www.npmjs.com/
  4. Install bower https://www.npmjs.com/package/bower
  5. Install Polymer-CLI https://www.polymer-project.org/1.0/start/toolbox/set-up#install-the-polymer-cli
  6. Install Firebase-CLI https://firebase.google.com/docs/hosting/deploying
  7. Install bower_components via shell command: bower install
  8. Serve locally via shell command: polymer serve

Install the Polymer-CLI

First, make sure you have the Polymer CLI installed. Then run polymer serve to serve your application locally.

Viewing Your Application

$ polymer serve

Building Your Application

$ polymer build

This will create a build/ folder with default/ subfolder containing builds that are run through HTML, CSS, and JS optimizers based off of polymer.json build configuration.

You can serve the built versions by giving polymer serve a folder to serve from:

$ polymer serve build/default

Running Tests

$ polymer test

Your application is already set up to be tested via web-component-tester. Run polymer test to run your application's test suite locally.

Deploying to Firebase

Follow the steps: https://firebase.google.com/docs/hosting/deploying

emsi's People

Contributors

huawillian avatar

Stargazers

 avatar

Watchers

 avatar  avatar

Forkers

davidxu2017

emsi's Issues

Chinese?

Home Page Content
Church Page toggle
User Page widgets toggle
Data needed and used to display...?

Display Staff Members in Church Page

Retrieve users data from firebase using polymerfire firebase document
Pass data in as props to church page.
Pass users data all the way to StaffsAndPastors custom component
Populate the items with users data and the isPastor flag

Announcements

Display modal or notification first time users
Will also need to provide a way to edit the announcement info.

Gallery

each church
possibly per event

Need to add secure credentials

on sign in page
put some user and pass then tab to the sign in button
press enter and the browser will currently say insecure website

Add Lazy Loading for images and pages

There are polymer components that do this.
There might be a router component that will also lazy load.
Maybe also use stamping option for dom-ifs for faster first response times.

Create Add New User Widget

Allow master admins to add a new user to firebase auth list using email / password as well as create template data in database.

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.