Coder Social home page Coder Social logo

quran.com-frontend's Introduction

Quran.com

This is the project soon to be the Quran.com facing site. This is built in Reactjs + Redux + Expressjs + Webpack. It is isomorphic (javascript shared between both the server and the client) for SEO reasons.

Stories Ready Stories In Progress Stories In Review

Dependency Status devDependency Status Code Climate

Getting started

Simply clone this repo, then run npm install to install all the required node_modules. From there, you are ready to go!

Developing

Unless you have the backend API running locally, you will need to update the API_URL, in development.env file, from localhost to api.quran.com. Leave the port number same.

To start the app, run npm run dev which will run both the server and the client (webpack) to compile upon edits. Go to http://localhost:8001 in your browser, not 8000 (that is just the express server).

Tests

Run npm run test to run the tests locally and watching. Otherwise use npm run test:ci:unit for CI level tests.

We also have nightwatch function tests. You can install nightwatch globally and can run tests like this:

nightwatch --test tests/functional/specs/Index_spec.js

Backend

Current at: https://github.com/quran/quran-api-rails DB is private, message me for acceess.

How to contribute

Fork this repo, then create a PR for specific fixes, improvements, etc. We trust that you will not steal this, this is at the end of the day for the sake of Allah and we all have good intentions while working with this project. But I must stress, stealing this is unacceptable.

Design

We currently use InvisionApp. Again, contact me if you'd like access to it.

Making sure main.js is small

Follow: https://www.npmjs.com/package/webpack-bundle-size-analyzer

env NODE_ENV=development webpack --json > bundle-stats.json
subl bundle-stats.json #so that you can the output
analyze-bundle-size bundle-stats.json

quran.com-frontend's People

Contributors

mmahalwy avatar ahmedre avatar tysteiman avatar reshadn avatar sharabash avatar azizur avatar aam1r avatar abiodun0 avatar redha-wego avatar thabti avatar

Watchers

Kareem Mahmoud 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.